Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
шлюз_выгрузка:сформировать_хоз_субъект [2018/08/02 14:29] misha |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Пример формирования документа для выгрузки в АСП:Шлюз ====== | ||
- | <1c> | ||
- | Функция СформироватьХозСубъект(Контрагент,фабрика) | ||
- | |||
- | ХозСубъект = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"ХозяйствующийСубъект")); | ||
- | |||
- | ХозСубъект.Наименование = Контрагент.Наименование; | ||
- | ХозСубъект.НаименованиеПолное = Контрагент.НаименованиеПолное; | ||
- | Если Контрагент.Ссылка.Метаданные().Реквизиты.Найти("ЮридическоеФизическоеЛицо")=Неопределено Тогда //#1 | ||
- | ЮрФизЛицо = "Физ"; | ||
- | Иначе | ||
- | Если Контрагент.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ЮридическоеЛицо Тогда //#1 | ||
- | ЮрФизЛицо = "Юр"; | ||
- | ИначеЕсли Контрагент.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо Тогда //#1 | ||
- | ЮрФизЛицо = "ИП"; | ||
- | КонецЕсли; | ||
- | КонецЕсли; | ||
- | |||
- | ХозСубъект.ЮрФизЛицо = ЮрФизЛицо; | ||
- | ХозСубъект.ИНН = Контрагент.ИНН; // Метаданные.Справочники.Контрагенты.Реквизиты.Найти("ИНН")<>Неопределено | ||
- | //ХозСубъект.ОГРН = ""; | ||
- | ХозСубъект.Комментарий = "перенесено через XDTO"; | ||
- | |||
- | // Управляемые формы //#2 | ||
- | //Если Контрагент.КонтактнаяИнформация.Количество() > 0 Тогда | ||
- | // Для каждого Инф из Контрагент.КонтактнаяИнформация Цикл | ||
- | // Если Инф.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда | ||
- | // ХозСубъект.Адрес = Инф.Представление; | ||
- | // Прервать; | ||
- | // КонецЕсли; | ||
- | // КонецЦикла; | ||
- | //Иначе | ||
- | // Возврат Строка(Контрагент.Наименование)+": необходимо заполнить контактную информацию."; | ||
- | //КонецЕсли; | ||
- | |||
- | // Обычные формы //#2 | ||
- | ХозСубъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Контрагент, "Юридический"); | ||
- | Если НЕ ЗначениеЗаполнено(ХозСубъект.Адрес) Тогда | ||
- | Сообщить("Необходимо заполнить юридический адрес контрагента: " + Контрагент); | ||
- | Возврат Неопределено; | ||
- | КонецЕсли; | ||
- | |||
- | //ХозСубъект.Организация = Истина; // Указывается, если выхружаемый Хоз. субъект является организацией | ||
- | Возврат ХозСубъект; | ||
- | КонецФункции | ||
- | </1c> | ||
- | | | ||
- | ++++#1 Заполнение поля ЮрФизЛицо | ||
- | | | ||
- | В зависимости от учетной системы, правовая форма контрагента может хранится в различных реквизитах. | ||
- | | | ||
- | <1c> | ||
- | // Из поля ЮридическоеФизическоеЛицо | ||
- | ПолучитьТипХС(Ссылка) | ||
- | Если Ссылка.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ЮридическоеЛицо Тогда | ||
- | Возврат Юр"; | ||
- | ИначеЕсли Ссылка.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо Тогда | ||
- | Возврат "ИП"; | ||
- | КонецЕсли; | ||
- | |||
- | Возврат Неопределено; | ||
- | КонецФункции | ||
- | </1c> | ||
- | <1c> | ||
- | // Из поля ЮрФизЛицо | ||
- | ПолучитьТипХС(Ссылка) | ||
- | Если Ссылка.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо Тогда | ||
- | Возврат "Юр"; | ||
- | ИначеЕсли Ссылка.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ФизЛицо Тогда | ||
- | Возврат "ИП"; | ||
- | КонецЕсли; | ||
- | |||
- | Возврат Неопределено; | ||
- | КонецФункции | ||
- | </1c> | ||
- | ++++ |