|
КД 2 остатки по товарам из УТ10.3 в БП 3.0 | ☑ | ||
|---|---|---|---|---|
|
0
applesound
23.01.19
✎
23:23
|
Доброго времени суток.
Необходимо решить задачу: Из УТ 10.3 перенести в БП 3.0 остатки по товарам в разрезе партий поступлений. Для написания правил использую конфигурацию КД 2. Создал ПКО ВводНачальныхОстатков_Структура, убрал галку Искать объект приемника по внутреннему идентификатору объекта источника, установил галку Автоматически генерировать номер или код, если он не задан. Источник: РегистрНакопленияЗапись.ПартииТоваровНаСкладах Приёмник: ДокументСсылка.ВводНачальныхОстатков Создал ПКС с пустым источником: Шапка Организация,Дата Табличная часть (НоменклатураНаСкладе) Склад, Номенклатура, Количество, Сумма, Партия, РасчетныйДокумент Создал ПВД ВводНачальныхОстатков_Структура_Товары Объект выборки: РегистрНакопленияЗапись.ПартииТоваровНаСкладах Способ выборки: Произвольный алгоритм Правило конвертации: ВводНачальныхОстатков_Структура Перед обработкой: Запрос = Новый Запрос; ЗапросТекст = "ВЫБРАТЬ | ПартииТоваровНаСкладахОстатки.Номенклатура, | ПартииТоваровНаСкладахОстатки.Склад, | ПартииТоваровНаСкладахОстатки.ДокументОприходования, | ПартииТоваровНаСкладахОстатки.КоличествоОстаток, | ПартииТоваровНаСкладахОстатки.СтоимостьОстаток |ИЗ | РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&Дата, ) КАК ПартииТоваровНаСкладахОстатки"; Запрос.Текст = ЗапросТекст; Запрос.УстановитьПараметр( "Дата",Параметры.ДатаПолученияОстатков); Результат = Запрос.Выполнить(); ВыборкаДанных = Результат.Выбрать(); // структура табличной части НоменклатураНаСкладе = Новый ТаблицаЗначений; НоменклатураНаСкладе.Колонки.Добавить("Склад"); НоменклатураНаСкладе.Колонки.Добавить("Номенклатура") ; НоменклатураНаСкладе.Колонки.Добавить("Количество"); НоменклатураНаСкладе.Колонки.Добавить("Сумма"); НоменклатураНаСкладе.Колонки.Добавить("Партия"); НоменклатураНаСкладе.Колонки.Добавить("РасчетныйДокумент"); // шапка документа ИсходящиеДанные = Новый Структура; ИсходящиеДанные.Вставить("Организация",); ИсходящиеДанные.Вставить("Дата", ); Пока ВыборкаДанных.следующий() цикл //заполнение табличной части НоваяСтрока= НоменклатураНаСкладе.Добавить(); НоваяСтрока.Склад = Выборка; НоваяСтрока.Номенклатура = Выборка; НоваяСтрока.Количество = Выборка; НоваяСтрока.Сумма = Выборка; НоваяСтрока.Партия = Выборка; НоваяСтрока.РасчетныйДокумент = Выборка; КонецЦикла; ИсходящиеДанные.Вставить("НоменклатураНаСкладе",НоменклатураНаСкладе); В параметрах добавил параметр ДатаПолученияОстатков, установил галку Диалог и ТипЗначени = Дата В итоге получил 0 выгруженных документов. |
| Форум | Правила | Описание | Секции | Поиск |