Записать контактную информацию. Записывает контактную информацию из XML в поля табличной части Контактная информация объекта.
// Записывает контактную информацию из XML в поля табличной части Контактная информация объекта.
//
// Параметры:
// Объект - ЛюбаяСсылка - ссылка на объект конфигурации, содержащий табличную часть контактная информация.
// Значение - Строка - контактная информация в внутреннем формате JSON.
// ВидИнформации - Справочник.ВидыКонтактнойИнформация - ссылка на вид контактной информации.
// ТипИнформации - Перечисление.ТипыКонтактнойИнформация - тип контактной информации.
// ИдентификаторСтроки - Число - идентификатор строки табличной части.
// Дата - Дата - Дата, с которой действует запись контактной информации,
// используется при хранении истории изменения контактной информации.
Процедура ЗаписатьКонтактнуюИнформацию(Объект, Знач Значение, ВидИнформации, ТипИнформации, ИдентификаторСтроки = 0, Дата = Неопределено) Экспорт
Если ПустаяСтрока(Значение) Тогда
Возврат;
КонецЕсли;
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(Значение) Тогда
ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(Значение, ТипИнформации);
Иначе
ОбъектКИ = УправлениеКонтактнойИнформациейСлужебный.JSONВКонтактнуюИнформациюПоПолям(Значение, ТипИнформации);
КонецЕсли;
Если Не УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияЗаполнена(ОбъектКИ) Тогда
Возврат;
КонецЕсли;
НоваяСтрока = Объект.КонтактнаяИнформация.Добавить();
НоваяСтрока.Представление = ОбъектКИ.Value;
НоваяСтрока.Значение = УправлениеКонтактнойИнформациейСлужебный.СтруктураВСтрокуJSON(ОбъектКИ);
НоваяСтрока.ЗначенияПолей = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияИзJSONВXML(ОбъектКИ, ТипИнформации);
НоваяСтрока.Вид = ВидИнформации;
НоваяСтрока.Тип = ТипИнформации;
Если ЗначениеЗаполнено(Дата) Тогда
НоваяСтрока.ДействуетС = Дата;
КонецЕсли;
Если ЗначениеЗаполнено(ИдентификаторСтроки) Тогда
НоваяСтрока.ИдентификаторСтрокиТабличнойЧасти = ИдентификаторСтроки;
КонецЕсли;
// Заполнение дополнительных реквизитов ТЧ.
ЗаполнитьТехническиеПоляКонтактнойИнформации(НоваяСтрока, ОбъектКИ, ТипИнформации);
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
КонтактнаяИнформацияИзJSONВXML (БСП)
УстановитьКонтактнуюИнформациюОбъекта (БСП)
JSONВКонтактнуюИнформациюПоПолям (БСП)
НоваяКонтактнаяИнформация (БСП)
КонтактнаяИнформацияВXML (БСП)
КомментарийКонтактнойИнформации (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)