Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
шлюз_выгрузка:сформировать_поднадзорного [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> | ||
- | ++++ |