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