Сформировать поднадзорного: различия между версиями
Shihov (обсуждение | вклад) Нет описания правки |
Shihov (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
====== Пример формирования поднадзорного объекта для выгрузки в АСП.Шлюз ====== | ====== Пример формирования поднадзорного объекта для выгрузки в АСП.Шлюз ====== | ||
В примере используются следующие функции: [[шлюз_выгрузка:сформировать_хоз_субъект|СформироватьХозСубъект]] | В примере используются следующие функции: [[шлюз_выгрузка:сформировать_хоз_субъект|СформироватьХозСубъект]] | ||
<1c> | <syntaxhighlight lang='1c'> | ||
Функция СформироватьПоднадзорного(Партнер, Контрагент, Фабрика) | Функция СформироватьПоднадзорного(Партнер, Контрагент, Фабрика) | ||
ПоднадзорныйОбъект = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"ПоднадзорныйОбъект")); | ПоднадзорныйОбъект = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"ПоднадзорныйОбъект")); | ||
Строка 32: | Строка 32: | ||
Возврат ПоднадзорныйОбъект; | Возврат ПоднадзорныйОбъект; | ||
КонецФункции | КонецФункции | ||
</ | </syntaxhighlight> | ||
| | | | ||
#1 Заполнение полного наименования | #1 Заполнение полного наименования | ||
Строка 38: | Строка 38: | ||
В данное поле заполняется наименование для печати. Возможное варианты: | В данное поле заполняется наименование для печати. Возможное варианты: | ||
| | | | ||
<1c> | <syntaxhighlight lang='1c'> | ||
ПоднадзорныйОбъект.НаименованиеПолное = Партнер.Наименование; | ПоднадзорныйОбъект.НаименованиеПолное = Партнер.Наименование; | ||
</ | </syntaxhighlight> | ||
<1c> | <syntaxhighlight lang='1c'> | ||
ПоднадзорныйОбъект.НаименованиеПолное = Партнер.НаименованиеПолное; | ПоднадзорныйОбъект.НаименованиеПолное = Партнер.НаименованиеПолное; | ||
</ | </syntaxhighlight> | ||
или любое другое поле, отвечающее за наименование поднадзорного объекта. | или любое другое поле, отвечающее за наименование поднадзорного объекта. | ||
Строка 59: | Строка 59: | ||
| | | | ||
На управляемых формах адрес можно получить следующим способом | На управляемых формах адрес можно получить следующим способом | ||
<1c> | <syntaxhighlight lang='1c'> | ||
Если Партнер.КонтактнаяИнформация.Количество() > 0 Тогда | Если Партнер.КонтактнаяИнформация.Количество() > 0 Тогда | ||
Для Каждого Инф Из Партнер.КонтактнаяИнформация Цикл | Для Каждого Инф Из Партнер.КонтактнаяИнформация Цикл | ||
Строка 70: | Строка 70: | ||
Возврат Строка(Контрагент.Наименование)+": необходимо заполнить контактную информацию."; | Возврат Строка(Контрагент.Наименование)+": необходимо заполнить контактную информацию."; | ||
КонецЕсли; | КонецЕсли; | ||
</ | </syntaxhighlight> | ||
Для обычных форм это может быть: | Для обычных форм это может быть: | ||
<1c> | <syntaxhighlight lang='1c'> | ||
ПоднадзорныйОбъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Партнер, "Юридический"); | ПоднадзорныйОбъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Партнер, "Юридический"); | ||
Если НЕ ЗначениеЗаполнено(ПоднадзорныйОбъект.Адрес) Тогда | Если НЕ ЗначениеЗаполнено(ПоднадзорныйОбъект.Адрес) Тогда | ||
Строка 78: | Строка 78: | ||
Возврат Неопределено; | Возврат Неопределено; | ||
КонецЕсли; | КонецЕсли; | ||
</ | </syntaxhighlight> | ||
или | или | ||
<1c> | <syntaxhighlight lang='1c'> | ||
ПоднадзорныйОбъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Партнер, "Фактический"); | ПоднадзорныйОбъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Партнер, "Фактический"); | ||
Если НЕ ЗначениеЗаполнено(ПоднадзорныйОбъект.Адрес) Тогда | Если НЕ ЗначениеЗаполнено(ПоднадзорныйОбъект.Адрес) Тогда | ||
Строка 86: | Строка 86: | ||
Возврат Неопределено; | Возврат Неопределено; | ||
КонецЕсли; | КонецЕсли; | ||
</ | </syntaxhighlight> | ||
[[Category:Асп.шлюз выгрузка]] | [[Category:Асп.шлюз выгрузка]] | ||
<vote type=1 /> | <vote type=1 /> |
Версия от 13:05, 2 апреля 2025
Пример формирования поднадзорного объекта для выгрузки в АСП.Шлюз
В примере используются следующие функции: СформироватьХозСубъект
Функция СформироватьПоднадзорного(Партнер, Контрагент, Фабрика)
ПоднадзорныйОбъект = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"ПоднадзорныйОбъект"));
ПоднадзорныйОбъект.Наименование = Партнер.Наименование;
ПоднадзорныйОбъект.НаименованиеПолное = Партнер.Наименование; //#1
ПоднадзорныйОбъект.Тип = 1; //#2
<syntaxhighlight lang='bash'>
ПоднадзорныйОбъект.Комментарий = "";
Партнер.ДополнительнаяИнформация;
ПоднадзорныйОбъект.Код = Партнер.Код;
Результат = СформироватьХозСубъект(Контрагент,фабрика); Если ТипЗнч(Результат)= Тип("Строка") Тогда Возврат Результат; Иначе ПоднадзорныйОбъект.ХозСубъект = Результат; КонецЕсли;
Обычные формы
#3
ПоднадзорныйОбъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Контрагент, "Фактический"); Если НЕ ЗначениеЗаполнено(ПоднадзорныйОбъект.Адрес) Тогда Сообщить("Необходимо заполнить фактический адрес контрагента: " + Партнер); Возврат Неопределено; КонецЕсли;
Возврат ПоднадзорныйОбъект; КонецФункции </syntaxhighlight> |
- 1 Заполнение полного наименования
| В данное поле заполняется наименование для печати. Возможное варианты: |
ПоднадзорныйОбъект.НаименованиеПолное = Партнер.Наименование;
ПоднадзорныйОбъект.НаименованиеПолное = Партнер.НаименованиеПолное;
или любое другое поле, отвечающее за наименование поднадзорного объекта.
- 2 Заполнение типа поднадзорного
| Существуют следующие типы поднадзорных:
- 1 - предприятие
- 2 - рынок
- 3 - СББЖ
- 4 - судно
- 3 Заполнение адреса
| На управляемых формах адрес можно получить следующим способом
Если Партнер.КонтактнаяИнформация.Количество() > 0 Тогда
Для Каждого Инф Из Партнер.КонтактнаяИнформация Цикл
Если Инф.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес И Инф.Вид = Справочники.ВидыКонтактнойИнформации.ФактАдресКонтрагента Тогда //Инф.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента
ПоднадзорныйОбъект.Адрес = Инф.Представление;
Прервать;
КонецЕсли;
КонецЦикла;
Иначе
Возврат Строка(Контрагент.Наименование)+": необходимо заполнить контактную информацию.";
КонецЕсли;
Для обычных форм это может быть:
ПоднадзорныйОбъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Партнер, "Юридический");
Если НЕ ЗначениеЗаполнено(ПоднадзорныйОбъект.Адрес) Тогда
Сообщить("Необходимо заполнить юридический адрес контрагента: " + Партнер);
Возврат Неопределено;
КонецЕсли;
или
ПоднадзорныйОбъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Партнер, "Фактический");
Если НЕ ЗначениеЗаполнено(ПоднадзорныйОбъект.Адрес) Тогда
Сообщить("Необходимо заполнить фактический адрес контрагента: " + Партнер);
Возврат Неопределено;
КонецЕсли;