Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

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