Это старая версия документа.


Пример формирования документа для выгрузки в АСП:Шлюз

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

	//ХозСубъект.Организация = Истина;  // Указывается, если выхружаемый Хоз. субъект является организацией
	Возврат ХозСубъект;
КонецФункции

#1 Заполнение поля ЮрФизЛицо

В зависимости от учетной системы, правовая форма контрагента может хранится в различных реквизитах.

// Из поля ЮридическоеФизическоеЛицо 
ПолучитьТипХС(Ссылка)
   Если Ссылка.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ЮридическоеЛицо Тогда
      Возврат Юр";                                                  	
   ИначеЕсли Ссылка.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо Тогда 
      Возврат "ИП";
   КонецЕсли;
							
   Возврат Неопределено;
КонецФункции