Практическое задание № 1.3.2. Перенос документа «Оприходование излишков товаров» (формат версии 1.2): Создано общее ПКПД для обоих конвертаций «Перечисление_ТипыЗапасов» на объект конфигурации «ПеречислениеСсылка.ТипыЗапасов» с областью применения «Д


Практическое задание № 1.3.2Перенос документа «Оприходование излишков товаров» (формат версии 1.2):
Создано общее ПКПД для обоих конвертаций «Перечисление_ТипыЗапасов» на объект конфигурации «ПеречислениеСсылка.ТипыЗапасов» с областью применения «Для отправки и получения»;
В конвертации исходной ИБ:
Создано ПКО «Документ_ОприходованиеИзлишковТоваров_Отпавка»
Объект конфигурации: «ДокументСсылка.ОприходованиеИзлишковТоваров»;
Объект формата: «Документ.ОприходованиеТоваров»;
Область применения «Для отправки»
ПКС
Дата – Дата;
Номер – Номер;
Организация – Организация;
Товары.Товар - Товары.Номенклатура (правило: «Справочник_Номенклатура_Отправка»)
Товары.Цена -Товары.Цена;
Товары.Количество - Товары.Количество;
Товары.Сумма - Товары.Сумма;
Товары.Единица - Товары.ЕдиницаИзмерения (правило: «Справочник_ЕдиницыИзмерения_Отправка»);
Товары.ВидЗапасов - Товары.ТипЗапасов (правило: «Перечисление_ТипыЗапасов»)
В обработчик ПКО «При отправке» вставлен код:
ТабТовары = ДанныеИБ.Товары.Выгрузить();
ТабТовары.Колонки.Товар.Имя = "Номенклатура";
ТабТовары.Колонки.Единица.Имя = "ЕдиницаИзмерения";
ТабТовары.Колонки.ВидЗапасов.Имя = «ТипЗапасов»;
ДанныеXDTO.Вставить("Товары", ТабТовары);
Если Не ЗначениеЗаполнено(ДанныеИБ.ТипНоменклатуры) Тогда
ДанныеXDTO.Вставить("ТипНоменклатуры", "Товар");
КонецЕсли;
Создано ПКД «Документ_ОприходованиеИзлишковТоваров_Отпавка» с областью «Для отправки» на объект выборки «ДокументСсылка.ОприходованиеИзлишковТоваров». В состав правила включены ПКО созданные в п.2.1
В конвертации конечной ИБ:
Создано ПКО «Документ_ОприходованиеИзлишковТоваров_Получение»
Объект конфигурации: «ДокументСсылка.ОприходованиеИзлишковТоваров»;
Объект формата: «Документ.ОприходованиеТоваров»;
Область применения «Для получения»;
ПКС
Наименование – Наименование;
Родитель – Группа (правило конвертации свойства: данное ПКО)
Создано ПКО «Справончик_Номенклатура_Получение»
Объект конфигурации: «СправочникСсылка.Номенклатура»;
Объект формата: «Справочник.Номенклатура»;
Область применения «Для получения»
ПКС
Дата – Дата;
Номер – Номер;
Организация – Организация;
Товары.Номенклатура - Товары.Номенклатура (правило: «Справончик_Номенклатура_Получение»)
Товары.Цена -Товары.Цена;
Товары.Количество - Товары.Количество;
Товары.Сумма - Товары.Сумма;
Товары.ЕдиницаИзмерения- Товары.ЕдиницаИзмерения (правило: «Справочник_ЕдиницыИзмерения_Получение»);
Товары.ВидЗапасов - Товары.ТипЗапасов (правило: «Перечисление_ТипыЗапасов»)
Для реквизитов табличной части установлен признак «Используется алгоритм конвертации»
В обработчик ПКО «При конвертации данных XDTO» вставлен код:
МассивСтрокТовары = Новый Массив;
Если ДанныеXDTO.Свойство("Товары") И ЗначениеЗаполнено(ДанныеXDTO.Товары) Тогда
Для Каждого Строка Из ДанныеXDTO.Товары Цикл
СтруктураДанныхСтроки = Новый Структура;
СтруктураДанныхСтроки.Вставить("Номенклатура", Строка.Номенклатура);
СтруктураДанныхСтроки.Вставить("Цена", Строка.Цена);
СтруктураДанныхСтроки.Вставить("Сумма", Строка.Сумма);
СтруктураДанныхСтроки.Вставить("Количество", Строка.Количество);
СтруктураДанныхСтроки.Вставить("ЕдиницаИзмерения", Строка.ЕдиницаИзмерения);
СтруктураДанныхСтроки.Вставить("ВидЗапасов", Строка.ТипЗапасов);
МассивСтрокТовары.Добавить(СтруктураДанныхСтроки);
КонецЦикла;
КонецЕсли;
Если МассивСтрокТовары.Количество() > 0 Тогда
ПолученныеДанные.ДополнительныеСвойства.Вставить("Товары",МассивСтрокТовары);
КонецЕсли;
Созданj ПКД для объектf формата «Документ.ОприходованиеТоваров» c областью «Для получения»
Для исключения ошибок при обмене, в исходной базе в документах «Оприходование излишков товаров» доопределены значения реквизита «ВидЗапасов»;
Произведена регистрация документов «Оприходование излишков товаров» в исходной базе и данные перенесены в конечную базу.

Приложенные файлы

  • docx 26234155
    Размер файла: 16 kB Загрузок: 0

Добавить комментарий