Сформировать хоз субъект: различия между версиями
Shihov (обсуждение | вклад) Нет описания правки |
Shihov (обсуждение | вклад) Нет описания правки |
||
Строка 41: | Строка 41: | ||
</1c> | </1c> | ||
| | | | ||
#1 Заполнение поля ЮрФизЛицо | |||
| | | | ||
В зависимости от учетной системы, правовая форма контрагента может хранится в различных реквизитах. | В зависимости от учетной системы, правовая форма контрагента может хранится в различных реквизитах. | ||
Строка 69: | Строка 69: | ||
КонецФункции | КонецФункции | ||
</1c> | </1c> | ||
#2 Заполнение адреса | |||
| | | | ||
На управляемых формах адрес Хоз. субъекта можно получить следующим способом | На управляемых формах адрес Хоз. субъекта можно получить следующим способом | ||
Строка 102: | Строка 102: | ||
КонецЕсли; | КонецЕсли; | ||
</1c> | </1c> | ||
[[Category:Асп.шлюз выгрузка]] | [[Category:Асп.шлюз выгрузка]] | ||
<vote type=1 /> | <vote type=1 /> |
Версия от 07:59, 28 марта 2025
Пример формирования хозяйствующего субъекта для выгрузки в АСП.Шлюз
<1c> Функция СформироватьХозСубъект(Контрагент,фабрика)
ХозСубъект = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"ХозяйствующийСубъект"));
ХозСубъект.Наименование = Контрагент.Наименование; ХозСубъект.НаименованиеПолное = Контрагент.НаименованиеПолное; Если Контрагент.Ссылка.Метаданные().Реквизиты.Найти("ЮридическоеФизическоеЛицо")=Неопределено Тогда //#1 ЮрФизЛицо = "Физ"; Иначе Если Контрагент.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ЮридическоеЛицо Тогда //#1 ЮрФизЛицо = "Юр"; ИначеЕсли Контрагент.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо Тогда //#1 ЮрФизЛицо = "ИП"; КонецЕсли; КонецЕсли;
ХозСубъект.ЮрФизЛицо = ЮрФизЛицо; ХозСубъект.ИНН = Контрагент.ИНН; // Метаданные.Справочники.Контрагенты.Реквизиты.Найти("ИНН")<>Неопределено //ХозСубъект.ОГРН = ""; ХозСубъект.Комментарий = "перенесено через XDTO";
Обычные формы
#2
ХозСубъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Контрагент, "Юридический"); Если НЕ ЗначениеЗаполнено(ХозСубъект.Адрес) Тогда Сообщить("Необходимо заполнить юридический адрес контрагента: " + Контрагент); Возврат Неопределено; КонецЕсли;
ХозСубъект.Организация = Истина;
Указывается, если выхружаемый Хоз. субъект является организацией
Возврат ХозСубъект; КонецФункции </1c> |
- 1 Заполнение поля ЮрФизЛицо
| В зависимости от учетной системы, правовая форма контрагента может хранится в различных реквизитах. | <1c> // Из поля ЮридическоеФизическоеЛицо ПолучитьТипХС(Ссылка)
Если Ссылка.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ЮридическоеЛицо Тогда Возврат Юр"; ИначеЕсли Ссылка.ЮридическоеФизическоеЛицо = Перечисления.ЮридическоеФизическоеЛицо.ФизическоеЛицо Тогда Возврат "ИП"; КонецЕсли;
Возврат Неопределено;
КонецФункции </1c> <1c> // Из поля ЮрФизЛицо ПолучитьТипХС(Ссылка)
Если Ссылка.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо Тогда Возврат "Юр"; ИначеЕсли Ссылка.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ФизЛицо Тогда Возврат "ИП"; КонецЕсли;
Возврат Неопределено;
КонецФункции </1c>
- 2 Заполнение адреса
| На управляемых формах адрес Хоз. субъекта можно получить следующим способом <1c> Если Контрагент.КонтактнаяИнформация.Количество() > 0 Тогда Для Каждого Инф Из Контрагент.КонтактнаяИнформация Цикл Если Инф.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес И Инф.Вид = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента Тогда //Инф.Вид = Справочники.ВидыКонтактнойИнформации.ФактАдресКонтрагента
ХозСубъект.Адрес = Инф.Представление;
Прервать; КонецЕсли; КонецЦикла; Иначе Возврат Строка(Контрагент.Наименование)+": необходимо заполнить контактную информацию."; КонецЕсли; </1c> Для обычных форм это может быть: <1c> ХозСубъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Контрагент, "Юридический"); Если НЕ ЗначениеЗаполнено(ХозСубъект.Адрес) Тогда Сообщить("Необходимо заполнить юридический адрес контрагента: " + Контрагент); Возврат Неопределено; КонецЕсли; </1c> или <1c> ХозСубъект.Адрес = УправлениеКонтактнойИнформацией.ПолучитьАдресИзКонтактнойИнформации(Контрагент, "Фактический"); Если НЕ ЗначениеЗаполнено(ХозСубъект.Адрес) Тогда Сообщить("Необходимо заполнить фактическийадрес контрагента: " + Контрагент); Возврат Неопределено; КонецЕсли; </1c>