1С Предприятие УТ — как сделать чтобы при импорте с сайта правильно заполнялись адреса контрагентов


Сам импорт не трогаем — адрес контрагента приходит, как приходит. Возникает проблема при последующем пересохранении контрагента — адрес слетает. Чтобы этого не случалось — подписываемся на событие:

Процедура _НовыйМодульПодпискаНаСобытиеПередЗаписью(Источник, Отказ) Экспорт

ТекущийОбъект = Источник;
Для Каждого ТекЭлемент Из ТекущийОбъект.КонтактнаяИнформация Цикл
Если ТекЭлемент.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес ИЛИ ТекЭлемент.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты ИЛИ ТекЭлемент.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда
Иначе
Продолжить;
КонецЕсли;
Если Лев(ТекЭлемент.ЗначенияПолей, 28) = "<КонтактнаяИнформация xmlns=" Тогда
Продолжить;
КонецЕсли;
Если ТекЭлемент.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда
ТекЭлемент.Представление = ТекЭлемент.Представление;
ТекЭлемент.ЗначенияПолей = "<КонтактнаяИнформация xmlns=""http://www.v8.1c.ru/ssl/contactinfo"" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" Представление="""+ТекЭлемент.Представление+"""><Комментарий/><Состав xsi:type=""Адрес"" Страна=""РОССИЯ""><Состав xsi:type=""АдресРФ""><СубъектРФ>Московская обл<СвРайМО><Район xsi:nil=""true""/><Город>"+ТекЭлемент.Город+"<НаселПункт xsi:nil=""true""/><Улица>"+ТекЭлемент.Представление+"<ДопАдрЭл ТипАдрЭл=""10100000"" Значение=""""/>";
ИначеЕсли ТекЭлемент.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда
ТекЭлемент.Представление = ТекЭлемент.Представление;
ТекЭлемент.АдресЭП = ТекЭлемент.Представление;
ТекЭлемент.ЗначенияПолей = "<КонтактнаяИнформация xmlns=""http://www.v8.1c.ru/ssl/contactinfo"" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" Представление="""+ТекЭлемент.Представление+"""><Состав xsi:type=""ЭлектроннаяПочта"" Значение="""+ТекЭлемент.Представление+"""/>";
ИначеЕсли ТекЭлемент.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда
ТекЭлемент.Представление = ТекЭлемент.Представление;
ТекЭлемент.НомерТелефона = ТекЭлемент.Представление;
ТекЭлемент.НомерТелефонаБезКодов = ТекЭлемент.Представление;
ТекЭлемент.ЗначенияПолей = "<КонтактнаяИнформация xmlns=""http://www.v8.1c.ru/ssl/contactinfo"" xmlns:xs=""http://www.w3.org/2001/XMLSchema"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" Представление="""+ТекЭлемент.Представление+"""><Комментарий/><Состав xsi:type=""НомерТелефона"" КодСтраны="""" КодГорода="""" Номер="""+ТекЭлемент.Представление+""" Добавочный=""""/>";
КонецЕсли;
КонецЦикла;

КонецПроцедуры

 


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *