Сформировать документ: различия между версиями
Shihov (обсуждение | вклад) Нет описания правки |
Shihov (обсуждение | вклад) Нет описания правки |
||
| (не показана 1 промежуточная версия этого же участника) | |||
| Строка 1: | Строка 1: | ||
====== Пример формирования документа для выгрузки в АСП.Шлюз ====== | ====== Пример формирования документа для выгрузки в АСП.Шлюз ====== | ||
В примере используются следующие функции: [[ | В примере используются следующие функции: | ||
* [[сформировать_хоз_субъект|СформироватьХозСубъект]] | |||
* [[сформировать_поднадзорного|СформироватьПоднадзорного]] | |||
* [[сформировать_строку_номенклатуры|СформироватьСтрокуНоменклатуры]] | |||
* [[сформировать_связанные_документы|СформироватьСвязанныеДокументы]] | |||
* [[сформировать_ттн|СформироватьТТН]] | |||
<syntaxhighlight lang='1c'> | |||
Функция СформироватьДокумент(Документ, ТипДокумента, Фабрика) Экспорт | Функция СформироватьДокумент(Документ, ТипДокумента, Фабрика) Экспорт | ||
ДокументХ = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"Документ")); | ДокументХ = Фабрика.Создать(Фабрика.Тип(ПространствоИмен(), "Документ")); | ||
ДокументХ.Номер = Документ.Номер; | ДокументХ.Номер = Документ.Номер; | ||
ДокументХ.Дата | ДокументХ.Дата = Документ.Дата; | ||
ДокументХ.ИННОрганизации = Документ.Организация.ИНН; //Указывается, если ведется учет по нескольким организациям | ДокументХ.ИННОрганизации = Документ.Организация.ИНН; // Указывается, если ведется учет по нескольким организациям | ||
//Подразделение = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"ПоднадзорныйОбъект")); | |||
//Подразделение = Фабрика.Создать(Фабрика.Тип(ПространствоИмен(), "ПоднадзорныйОбъект")); | |||
//Подразделение.Код = "Код подразделения / склада / поднадзорного объекта организации"; | //Подразделение.Код = "Код подразделения / склада / поднадзорного объекта организации"; | ||
//ДокументХ.Подразделение = Подразделение; // Указывается, если ведется учет по нескольким подразделениям или организациям | |||
ДокументХ.Подразделение | |||
ДокументХ.ТипДокумента = ТипДокумента; | ДокументХ.ТипДокумента = ТипДокумента; | ||
// | |||
Если ДокументХ.ТипДокумента = "Перемещение" Тогда // | // Заполняем контрагента | ||
ДокументХ.Подразделение = | Если ДокументХ.ТипДокумента = "Перемещение" Тогда | ||
ХозСубъект = СформироватьХозСубъект(Документ.Организация, | // Перемещение в шлюзе = реализация+поступление. | ||
Поднадзорный = СформироватьПоднадзорного(Документ.СкладПолучатель,Документ.Организация, | // В качестве источника данных принимается документ реализации. | ||
ДокументХ.Подразделение = СформироватьПоднадзорного(Документ.СкладОтправитель, Документ.Организация, Фабрика); | |||
ХозСубъект = СформироватьХозСубъект(Документ.Организация, Фабрика); | |||
Поднадзорный = СформироватьПоднадзорного(Документ.СкладПолучатель, Документ.Организация, Фабрика); | |||
Иначе | Иначе | ||
ХозСубъект = СформироватьХозСубъект(Документ.Контрагент, | ХозСубъект = СформироватьХозСубъект(Документ.Контрагент, Фабрика); | ||
Поднадзорный = СформироватьПоднадзорного(Документ.Контрагент, Документ.Контрагент, | Поднадзорный = СформироватьПоднадзорного(Документ.Контрагент, Документ.Контрагент, Фабрика); // #1 | ||
КонецЕсли; | КонецЕсли; | ||
| Строка 39: | Строка 46: | ||
КонецЕсли; | КонецЕсли; | ||
ДокументХ.Поднадзорный = Поднадзорный; | ДокументХ.Поднадзорный = Поднадзорный; | ||
//ДокументХ.ТТН = СформироватьТТН(???,???); | |||
//ДокументХ.ТТН = СформироватьТТН(???, ???); | |||
// Табличные части | // Табличные части | ||
Для каждого Стр из Документ.Товары Цикл | Для каждого Стр из Документ.Товары Цикл | ||
ДокументХ.Товары.Добавить(СформироватьСтрокуНоменклатуры(Стр, Документ,Фабрика)); | ДокументХ.Товары.Добавить(СформироватьСтрокуНоменклатуры(Стр, Документ, Фабрика)); | ||
КонецЦикла; | КонецЦикла; | ||
//Список | // Список материалов | ||
Для Каждого Стр Из Документ.Материалы Цикл | Для Каждого Стр Из Документ.Материалы Цикл | ||
ДокументХ.Материалы.Добавить(СформироватьСтрокуНоменклатуры(Стр, Документ,Фабрика)); | ДокументХ.Материалы.Добавить(СформироватьСтрокуНоменклатуры(Стр, Документ, Фабрика)); | ||
КонецЦикла; | КонецЦикла; | ||
| Строка 59: | Строка 67: | ||
Возврат ДокументХ; | Возврат ДокументХ; | ||
КонецФункции | КонецФункции | ||
</ | </syntaxhighlight> | ||
#1 В зависимости от учетной системы, | |||
'''Примечание #1:''' В зависимости от учетной системы, конечным получателем продукции (поднадзорным объектом) может быть Контрагент, Партнер, Склад получатель и т.д. При выгрузке документа в качестве первого параметра функции "СформироватьПоднадзорного" необходимо указать поле документа, отвечающее за фактическое место доставки (отправки) продукции, а в качестве второго параметра - юридическое лицо получатель (отправитель) продукции. | |||
[[Category:Асп.шлюз выгрузка]] | [[Category:Асп.шлюз выгрузка]] | ||
<vote type=1 /> | <vote type=1 /> | ||