![]() |
![]() |
![]() |
|
Автоматическое создание документа Установка цен номенклатуры контрагентов | ☑ | ||
---|---|---|---|---|
0
MAnastasia
01.02.13
✎
12:00
|
Ребята, помогите пожалуйста. При нажатии кнопки автоматически создаю документ Установка цен номенклатуры контрагентов. Туда попадают все виды цен контрагентов. А мне надо определенного. Не могу справиться с отбором по контрагенту.
ДокументОбъект = Документы.УстановкаЦенНоменклатурыКонтрагентов.СоздатьДокумент(); ДокументОбъект.Дата = Дата; ДокументОбъект.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("ЗЗЗ"); Контрагент = ДокументОбъект.Контрагент; ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ДокументОбъект); ДокументОбъект.Комментарий = "Документ создан автоматически"; ИндексСтрокиТаблицыЦен = 0; Для Каждого ТипЦенНоменклатуры Из мЦеныНоменклатуры Цикл СтрокаТипЦен = ДокументОбъект.ТипыЦен.Найти(ТипЦенНоменклатуры.ТипЦен, "ТипЦен"); Если СтрокаТипЦен = Неопределено Тогда СтрокаТипЦен = ДокументОбъект.ТипыЦен.Добавить(); СтрокаТипЦен.ТипЦен = ТипЦенНоменклатуры.ТипЦен; КонецЕсли; СтруктураПоиска = Новый Структура; СтруктураПоиска.Вставить("Номенклатура", НоменклатураОбъект.Ссылка); СтруктураПоиска.Вставить("ХарактеристикаНоменклатуры", Справочники.ХарактеристикиНоменклатуры.ПустаяСсылка()); СтруктураПоиска.Вставить("ТипЦен", ТипЦенНоменклатуры.ТипЦен); СтрокаТовары = ОбработкаТабличныхЧастей.НайтиСтрокуТабЧасти(ДокументОбъект.Товары, СтруктураПоиска); Если СтрокаТовары = Неопределено Тогда СтрокаТовары = ДокументОбъект.Товары.Добавить(); СтрокаТовары.Номенклатура = НоменклатураОбъект.Ссылка; СтрокаТовары.ТипЦен = ТипЦенНоменклатуры.ТипЦен; СтрокаТовары.ИндексСтрокиТаблицыЦен = ИндексСтрокиТаблицыЦен; КонецЕсли; СтрокаТовары.Цена = ТипЦенНоменклатуры.Цена; СтрокаТовары.Валюта = ТипЦенНоменклатуры.Валюта; СтрокаТовары.ЕдиницаИзмерения = ТипЦенНоменклатуры.ЕдиницаИзмерения;; КонецЦикла; |
|||
1
cw014
01.02.13
✎
12:01
|
Контрагент = ДокументОбъект.Контрагент;
А это накуя? |
|||
2
cw014
01.02.13
✎
12:01
|
И чего ты вообще хочешь сделать?
|
|||
3
cw014
01.02.13
✎
12:02
|
Где у тебя заполнение ТЧ "ТипыЦен"???
|
|||
4
cw014
01.02.13
✎
12:02
|
И где вообще у тебя фотка?
|
|||
5
cw014
01.02.13
✎
12:03
|
ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ДокументОбъект);
Нафиг выкидывай. 5 реквизитов можно и руками заполнить - быстрее чем целую функцию прогонять |
|||
6
cw014
01.02.13
✎
12:04
|
Для Каждого ТипЦенНоменклатуры Из мЦеныНоменклатуры Цикл
Что у тебя в переменной "мЦеныНоменклатуры"??? |
|||
7
cw014
01.02.13
✎
12:04
|
И вообще, какого ... я тут сам с собой разговариваю?
|
|||
8
Галахад
гуру
01.02.13
✎
12:06
|
(7) :-)
|
|||
9
cw014
01.02.13
✎
12:06
|
(8) ОООО!!!! Собеседник, УРА!!!!
|
|||
10
MAnastasia
01.02.13
✎
12:09
|
мЦеныНоменклатуры = Новый Соответствие;
Запрос = Новый Запрос("ВЫБРАТЬ РАЗРЕШЕННЫЕ | ТипыЦенНоменклатурыКонтрагентов.Наименование, | ТипыЦенНоменклатурыКонтрагентов.ВалютаЦены КАК Валюта, | ТипыЦенНоменклатурыКонтрагентов.Владелец КАК Контрагент, | ТипыЦенНоменклатурыКонтрагентов.ТипЦеныНоменклатуры, | ТипыЦенНоменклатурыКонтрагентов.Ссылка КАК ТипЦен |ИЗ | Справочник.ТипыЦенНоменклатурыКонтрагентов КАК ТипыЦенНоменклатурыКонтрагентов"); мЦеныНоменклатуры = Запрос.Выполнить().Выгрузить(); мЦеныНоменклатуры.Колонки.Добавить("Цена"); мЦеныНоменклатуры.Колонки.Добавить("ЕдиницаИзмерения"); //мЦеныНоменклатуры.ВыбратьСтроку( Для Каждого мСтрока из мЦеныНоменклатуры Цикл //мСтрока.Контрагент = Шашка.ОсновнойПоставщик; мСтрока.Цена = ЦенаЛицензииИтог; мСтрока.ЕдиницаИзмерения = НоменклатураОбъект.ЕдиницаХраненияОстатков; КонецЦикла; СоздатьДокументУстановкаЦенНоменклатуры(мЦеныНоменклатуры); Сообщить("Создан документ Установка цен номенклатуры контрагентов"); |
|||
11
MAnastasia
01.02.13
✎
12:12
|
cw014, сорри, не ожидала быстрого ответа)
|
|||
12
cw014
01.02.13
✎
12:12
|
ДокументОбъект = Документы.УстановкаЦенНоменклатурыКонтрагентов.СоздатьДокумент();
ДокументОбъект.Дата = Дата; ДокументОбъект.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("ЗЗЗ"); ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ДокументОбъект); ДокументОбъект.Комментарий = "Документ создан автоматически"; ИндексСтрокиТаблицыЦен = 0; СтрокиПоТекущемуКонтрагенту = мЦеныНоменклатуры.НайтиСтроки(Новый Структура("Контрагент", ДокументОбъект.Контрагент); Для Каждого ТипЦенНоменклатуры Из СтрокиПоТекущемуКонтрагенту Цикл СтрокаТипЦен = ДокументОбъект.ТипыЦен.Найти(ТипЦенНоменклатуры.ТипЦен, "ТипЦен"); Если СтрокаТипЦен = Неопределено Тогда СтрокаТипЦен = ДокументОбъект.ТипыЦен.Добавить(); СтрокаТипЦен.ТипЦен = ТипЦенНоменклатуры.ТипЦен; КонецЕсли; СтруктураПоиска = Новый Структура; СтруктураПоиска.Вставить("Номенклатура", НоменклатураОбъект.Ссылка); СтруктураПоиска.Вставить("ХарактеристикаНоменклатуры", Справочники.ХарактеристикиНоменклатуры.ПустаяСсылка()); СтруктураПоиска.Вставить("ТипЦен", ТипЦенНоменклатуры.ТипЦен); СтрокаТовары = ОбработкаТабличныхЧастей.НайтиСтрокуТабЧасти(ДокументОбъект.Товары, СтруктураПоиска); Если СтрокаТовары = Неопределено Тогда СтрокаТовары = ДокументОбъект.Товары.Добавить(); СтрокаТовары.Номенклатура = НоменклатураОбъект.Ссылка; СтрокаТовары.ТипЦен = ТипЦенНоменклатуры.ТипЦен; СтрокаТовары.ИндексСтрокиТаблицыЦен = ИндексСтрокиТаблицыЦен; КонецЕсли; СтрокаТовары.Цена = ТипЦенНоменклатуры.Цена; СтрокаТовары.Валюта = ТипЦенНоменклатуры.Валюта; СтрокаТовары.ЕдиницаИзмерения = ТипЦенНоменклатуры.ЕдиницаИзмерения;; КонецЦикла; |
|||
13
cw014
01.02.13
✎
12:13
|
Весь хлам не переписывал - лень
|
|||
14
cw014
01.02.13
✎
12:13
|
И не взлетит, у тебя переменная "ИндексСтрокиТаблицыЦен" везде = 0
|
|||
15
MAnastasia
01.02.13
✎
12:15
|
пробую
|
|||
16
MAnastasia
01.02.13
✎
12:16
|
а что изменить еще надо?индекс пересчитывать?
|
|||
17
cw014
01.02.13
✎
12:17
|
ДокументОбъект = Документы.УстановкаЦенНоменклатурыКонтрагентов.СоздатьДокумент();
ДокументОбъект.Дата = Дата; ДокументОбъект.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("ЗЗЗ"); ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ДокументОбъект); ДокументОбъект.Комментарий = "Документ создан автоматически"; ИндексСтрокиТаблицыЦен = 0; СтрокиПоТекущемуКонтрагенту = мЦеныНоменклатуры.Скопировать(Новый Структура("Контрагент", ДокументОбъект.Контрагент); ДокументОбъект.ТипыЦен.Загрузить(СтрокиПоТекущемуКонтрагенту); Для Каждого ТипЦен ИЗ СтрокиПоТекущемуКонтрагенту Цикл ИндексСтрокиТаблицыЦен = ИндексСтрокиТаблицыЦен + 1; СтрокаТовары = ДокументОбъект.Товары.Добавить(); СтрокаТовары.Номенклатура = НоменклатураОбъект.Ссылка; СтрокаТовары.ТипЦен = ТипЦенНоменклатуры.ТипЦен; СтрокаТовары.ИндексСтрокиТаблицыЦен = ИндексСтрокиТаблицыЦен; СтрокаТовары.Цена = ТипЦенНоменклатуры.Цена; СтрокаТовары.Валюта = ТипЦенНоменклатуры.Валюта; СтрокаТовары.ЕдиницаИзмерения = ТипЦенНоменклатуры.ЕдиницаИзмерения;; КонецЦикла; |
|||
18
cw014
01.02.13
✎
12:17
|
СтрокиПоТекущемуКонтрагенту = мЦеныНоменклатуры.Скопировать(Новый Структура("Контрагент", ДокументОбъект.Контрагент));
|
|||
19
cw014
01.02.13
✎
12:17
|
Скобку забыл
|
|||
20
cw014
01.02.13
✎
12:18
|
СтрокаТовары.ТипЦен = ТипЦен.ТипЦен;
СтрокаТовары.ИндексСтрокиТаблицыЦен = ИндексСтрокиТаблицыЦен; СтрокаТовары.Цена = ТипЦен.Цена; СтрокаТовары.Валюта = ТипЦен.Валюта; СтрокаТовары.ЕдиницаИзмерения = ТипЦен.ЕдиницаИзмерения;; |
|||
21
cw014
01.02.13
✎
12:18
|
ТипЦенНоменклатуры - неопределенное значение
|
|||
22
MAnastasia
01.02.13
✎
12:23
|
СПАСИБО БОЛЬШОЕ ТЕБЕ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|||
23
MAnastasia
01.02.13
✎
12:24
|
Все заработало наконец то!!!!!!!!!!!!!!!!!!!!!!!!СПАСИБО!!!!
|
|||
24
cw014
01.02.13
✎
12:25
|
Не игнорируем (4)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |