Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
шлюз_выгрузка:сформировать_документ [2019/03/07 15:21] asp |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Пример формирования документа для выгрузки в АСП:Шлюз ====== | ||
- | В примере используются следующие функции: [[шлюз_выгрузка:сформировать_хоз_субъект|СформироватьХозСубъект]]; [[шлюз_выгрузка:сформировать_поднадзорного|СформироватьПоднадзорного]]; [[шлюз_выгрузка:сформировать_строку_номенклатуры|СформироватьСтрокуНоменклатуры]]; [[шлюз_выгрузка:сформировать_связанные_документы|СформироватьСвязанныеДокументы]]; [[шлюз_выгрузка:сформировать_ттн|СформироватьТТН]] | ||
- | <1c> | ||
- | Функция СформироватьДокумент(Документ, ТипДокумента, Фабрика) Экспорт | ||
- | |||
- | ДокументХ = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"Документ")); | ||
- | ДокументХ.Номер = Документ.Номер; | ||
- | ДокументХ.Дата = Документ.Дата; | ||
- | ДокументХ.ИННОрганизации = Документ.Организация.ИНН; //Указывается, если ведется учет по нескольким организациям | ||
- | //Подразделение = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"ПоднадзорныйОбъект")); | ||
- | //Подразделение.Код = "Код подразделения / склада / поднадзорного объекта организации"; | ||
- | //ДокументХ.Подразделение = Подразделение; //Указывается, если ведется учет по нескольким подразделениям или организациям | ||
- | ДокументХ.ТипДокумента = ТипДокумента; | ||
- | // заполняем контрагента | ||
- | Если ДокументХ.ТипДокумента = "Перемещение" Тогда //перемещение в шлюзе = реализация+поступрелие. в качестве источника данных принимается документ реализации. | ||
- | ДокументХ.Подразделение = СформироватьПоднадзорного(Документ.СкладОтправитель,Документ.Организация,фабрика); | ||
- | ХозСубъект = СформироватьХозСубъект(Документ.Организация,фабрика); | ||
- | Поднадзорный = СформироватьПоднадзорного(Документ.СкладПолучатель,Документ.Организация,фабрика); | ||
- | Иначе | ||
- | ХозСубъект = СформироватьХозСубъект(Документ.Контрагент,фабрика); | ||
- | Поднадзорный = СформироватьПоднадзорного(Документ.Контрагент, Документ.Контрагент,фабрика); //#1 | ||
- | КонецЕсли; | ||
- | |||
- | Если ТипЗнч(ХозСубъект) = Тип("Строка") Тогда | ||
- | Сообщить(ХозСубъект); | ||
- | Возврат Неопределено; | ||
- | КонецЕсли; | ||
- | ДокументХ.ХозСубъект = ХозСубъект; | ||
- | |||
- | Если ТипЗнч(Поднадзорный) = Тип("Строка") Тогда | ||
- | Сообщить(Поднадзорный); | ||
- | Возврат Неопределено; | ||
- | КонецЕсли; | ||
- | ДокументХ.Поднадзорный = Поднадзорный; | ||
- | //ДокументХ.ТТН = СформироватьТТН(???,???); | ||
- | |||
- | // Табличные части | ||
- | Для каждого Стр из Документ.Товары Цикл | ||
- | ДокументХ.Товары.Добавить(СформироватьСтрокуНоменклатуры(Стр, Документ,Фабрика)); | ||
- | КонецЦикла; | ||
- | |||
- | //Список Материалов | ||
- | Для Каждого Стр Из Документ.Материалы Цикл | ||
- | ДокументХ.Материалы.Добавить(СформироватьСтрокуНоменклатуры(Стр, Документ,Фабрика)); | ||
- | КонецЦикла; | ||
- | |||
- | // Список пунктов перегрузки | ||
- | //ДокументХ.ПунктыПерегрузки.Добавить(СформироватьПунктПерегрузки(???)); | ||
- | |||
- | // Список связанных документов | ||
- | //ДокументХ.СвязанныеДокументы.Добавить(СформироватьСвязанныеДокументы(???)); | ||
- | |||
- | Возврат ДокументХ; | ||
- | КонецФункции | ||
- | </1c> | ||
- | |||
- | #1 В зависимости от учетной системы, конечными получателем продукции (поднадзорным объектом) может быть Контрагент, Партнер, Склад получатель и т.д. При выгрузке документа в качестве первого параметра функции "СформироватьПоднадзорного" необходимо указать поле документа, отвечающее за фактическое место доставки(отправки) продукции, а в качестве второго параметра - юридическое лицо получатель(отправитель) продукции. |