Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 04:18

Программное заполнение Документа Установка Цен Номенклатуры

Автор zakeng, 23 июн 2013, 17:51

0 Пользователей и 1 гость просматривают эту тему.

zakeng

Конфигурация УТ 11.1
Платформа 1С:Предприятие 8.2.17.169

Здравствуйте.
Подскажите пожалуйста может быть кто нибудь уже имел дело с Программным  заполнением Документа УстановкаЦенНоменклатуры в УТ.
Дело в том что документ имеет 2 элемента формы ТаблицаЗначений и ДеревоЗначений в 1ом Устанавливаются Виды цен Во 2ом Номенклатурные позиции и цены.
И Две скрытые Табличные части ВидыЦен() и Товары(Заполняется всеми номенклатурными позициями По строке на каждый вид цен)

Я пытаюсь Программно заполнить Табличные части Затем записываю документ и открываю его:
&НаКлиенте
Процедура УстановкаЦенНоменклатурыСоздать(Команда)
//Форма = ПолучитьФорму("Документ.УстановкаЦенНоменклатуры.ФормаОбъекта");
//ДанныеФормы = Форма.Объект;
ОткрытьЗначение(СерверУстановкаЦенНоменклатурыСоздать());

//КопироватьДанныеФормы(ДанныеФормы,Форма.Объект);
//Форма.Открыть();

КонецПроцедуры

&НаСервере
Функция СерверУстановкаЦенНоменклатурыСоздать()

//Док = ДанныеФормыВЗначение(ДанныеФормы, Тип("ДокументОбъект.УстановкаЦенНоменклатуры")); // КЕ??
Док = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();

Док.Дата = ТекущаяДата();

ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Специальная");
ТЧВидЦены = Док.ВидыЦен.Добавить();
ТЧВидЦены.ВидЦены = ВидЦены;
ТЧВидЦены.НастройкиКомпоновкиДанных.Получить();

ГСЧ = Новый ГенераторСлучайныхЧисел;                     

Для каждого СтрокаТЗ Из Таблица Цикл

ТЧТовары = Док.ТОвары.Добавить();
ТЧТовары.Номенклатура = СтрокаТЗ.Ссылка;
ТЧТовары.ВидЦены = ВидЦены;
ТЧТовары.Цена = ГСЧ.СлучайноеЧисло(1,111);
ТЧТовары.ЦенаИзмененаВручную = Истина;

КонецЦикла;

Док.Записать(РежимЗаписиДокумента.Запись);
    Возврат Док.Ссылка
//ЗначениеВДанныеФормы(Док,ДанныеФормы);



Как следствие Документ не создает движений
Не удаляться шантанными средствами
Реквизит номер в пределах дня принимает значение прим: 653456
Или вообще не отображается

Может быть кто то уже делал заполнение этого документа и подскажет в какую сторону копать?
Заранее спасибо:)

zakeng


pozdvv

Цитата: zakeng от 24 июн 2013, 16:00
Разобрался...:D
Разобрался сам, подскажи другим :)
Тоже сижу с заполнением установки цен и что-то никак.
Может кто подскажет !? или кода образец
Добавлено: 10 дек 2013, 14:37


  ДокУЦ = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
ДокУЦ.Дата = ТекущаяДата();
ДокУЦ.Согласован = Истина;
ДокУЦ.Ответственный = Пользователи.ТекущийПользователь();

ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Розничные");
ТЧВидЦены = ДокУЦ.ВидыЦен.Добавить();
ТЧВидЦены.ВидЦены = ВидЦены;

Для каждого СтрД Из ТабличноеПоле Цикл
НоваяСтрока = ДокУЦ.Товары.Добавить();
СпрНом = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул",Формат(СтрД.Артикул, "ЧГ="));
НоваяСтрока.Номенклатура = СпрНом;
НоваяСтрока.ВидЦены      = ВидЦены;
НоваяСтрока.Цена         = СтрД.РознЦена;
ДокУЦ.Товары.Свернуть("Номенклатура, ВидЦены, Цена");
    КонецЦикла;

ДокУЦ.Записать();

Добавлено: 10 дек 2013, 14:41


Вот так работает :zebzdr:
может поможет таким же ищущим, каким и я был буквально час назад :)

Fry98

ДокУЦ.Статус = Перечисления.СтатусыУстановокЦенНоменклатуры.Согласован; необходимо добавить, в УТ 8.3 без этой строки движения не делаються
или
ДокУЦ.Статус = СтатусДокумента()

&НаСервере
Функция СтатусДокумента()
   Возврат Перечисления.СтатусыУстановокЦенНоменклатуры.Согласован;
КонецФункции

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск