|
Перенос данных ЗУП 2.5 в ЗУП 3. Контактная информация. | ☑ | ||
---|---|---|---|---|
0
bolobol
02.02.18
✎
15:28
|
Доброй пьятницы!
Подскажите, пожалуйста, как понять, как именно переносить контактную информацию ФЛ из ЗУП 2.5 в ЗУП 3, чтобы в поле ЗначенияПолей появилось правильно заполненное подобное: "<КонтактнаяИнформация |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"" | |Представление=""РОССИЯ, 190000, Санкт-Петербург г, Горохо-музыкальная ул, дом № 255, квартира 8""> | |<Комментарий/> | |<Состав xsi:type=""Адрес"" Страна=""РОССИЯ""> | |<Состав xsi:type=""АдресРФ""> | | <СубъектРФ>Санкт-Петербург г</СубъектРФ> | | <Улица>Горохо-музыкальная ул</Улица> | | <ОКТМО>9998888</ОКТМО> | | <ДопАдрЭл><Номер Тип=""2010"" Значение=""8""/></ДопАдрЭл> | <ДопАдрЭл><Номер Тип=""1010"" Значение=""255""/></ДопАдрЭл> | <ДопАдрЭл ТипАдрЭл=""10100000"" Значение=""190000""/> | |</Состав> |</Состав> | |</КонтактнаяИнформация>" Спасибо! |
|||
1
Amra
02.02.18
✎
15:33
|
А чем типовой вариант не устраивает?
|
|||
2
bolobol
02.02.18
✎
15:40
|
(1) Типовой нужно иметь, а у нас только значения полей есть адресов
|
|||
3
Amra
02.02.18
✎
15:49
|
(2) Если есть куда грузить, то значит и типовые правила есть (подсказываю - они в конфе). Посмотреть там как разбирается представление - именно то что нужно
|
|||
4
bolobol
02.02.18
✎
15:59
|
(3) Т.е. вы предлагаете пройти отладкой весь путь сохранения элемента ФЛ, вместо ознакомления с размещением и названием функции (если такая и есть), на крайний случай - вместо ознакомления с форматом схемы?
|
|||
5
Amra
02.02.18
✎
16:07
|
(4) Я предлагаю посмотреть одно единственное правило конвертации из 2.5 в 3.1. Там в коде все есть. За потраченные полчаса уже все бы уже б сделал
|
|||
6
bolobol
02.02.18
✎
16:29
|
(5) Тогда - резонен вопрос: что за правила такие, где находятся, как взять? Логично ведь, не правда ли?
|
|||
7
Неверный Параметр И
02.02.18
✎
16:37
|
(0) ИТС -> Главная -> Разработка и администрирование -> Библиотека стандартных подсистем 2.4.5. -> Документация -> 3.25. Контактная информация -> Настройка обмена данными
|
|||
8
Amra
02.02.18
✎
16:40
|
(6) Внимательно читаем (3) - логично, правда?
|
|||
9
bolobol
02.02.18
✎
17:07
|
(7) Спасибо. Но, то ли я слеп, то ли там только конвертация в старую версию описана, и то - лишь в одно какое-то значение:
Значение = РаботаСАдресами.ПредыдущийФорматКонтактнойИнформацииXML(Значение, Истина) И про то, что можно разобрать Представление в отдельные поля адреса, но, пиип, где "как собрать отдельные поля в ЗначенияПолей?"? Что я не дочитал? |
|||
10
bolobol
02.02.18
✎
17:09
|
(8) при помощи (7) - я понял, что имеется некая демо-конфа с правилами конвертаций. Попробую развернуть её, что ли...
|
|||
11
Неверный Параметр И
02.02.18
✎
17:15
|
(9) А, тебе обратно из старой в новую, я криво прочитал.
Тогда забей. ЕМНИП оно везде успешно читает старое ключ=значение, а записывает уже новый xml. В БСП так испокон веков было, если только ЗУПовцы своей самобытности не привнесли. Ну и в тех же модулях по управлению КИ посмотри, там вменяемо написано и прокомментировано. |
|||
12
bolobol
02.02.18
✎
17:17
|
(11) У меня совсем "старое" - у меня отдельные поля только - Дом=17, Корп=20, Оф=316, Город=Питер...
|
|||
13
bolobol
02.02.18
✎
17:17
|
(11) Но схему я почти уловил, уже почти вооружён, Спасибо!
|
|||
14
Alexandr_U1982
02.02.18
✎
17:51
|
(6)
ОбщийМакет.ЗарплатаКадрыПереносДанныхИзБП30 ОбщийМакет.ЗарплатаКадрыПереносДанныхИзЗиК23 ОбщийМакет.ЗарплатаКадрыПереносДанныхИзЗУП25 ОбщийМакет.ЗарплатаКадрыПереносДанныхИзЗУП25КОРП Стыдно не знать) |
|||
15
Alexandr_U1982
02.02.18
✎
17:56
|
Однажды тоже нужно было перегрузить контактную информацию.
Для Каждого Строка Из ТаблицаКонтактнаяИнформация Цикл Тип = ПолучитьЗначениеПеречисления("ТипыКонтактнойИнформации", Строка.Тип); Если Не ЗначениеЗаполнено(Строка.Вид) Тогда Строка.Вид = ПолучитьВидКонтактнойИнформации(Строка.Вид_ИмяПредопределенного, Строка.Вид_Наименование, Тип, РодительВидаКИ); КонецЕсли; // Телефон Если Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда Представление = ?(Лев(Строка.Представление, 5) = "(495)", "+7 " + Строка.Представление, Строка.Представление); // Адрес ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда Представление = Строка.Представление; Представление = СтрЗаменить(Представление, "кв.", "квартира "); Представление = СтрЗаменить(Представление, "оф.", "офис "); ЗначенияПолей = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияXMLПоПредставлению(Представление, Строка.Вид); СтруктураКИ = УправлениеКонтактнойИнформацией.ПредыдущаяСтруктураКонтактнойИнформацииXML(ЗначенияПолей, Строка.Вид); Если Строка.ВключатьСтрануВПредставление Тогда Представление = СтруктураКИ.Страна + ", " + Представление; КонецЕсли; // Все остальное Иначе Представление = Строка.Представление; КонецЕсли; ЗначенияПолей = УправлениеКонтактнойИнформацией.КонтактнаяИнформацияXMLПоПредставлению(Представление, Строка.Вид); // Добавляем контактную информацию в справочник Если ЗначениеЗаполнено(Тип) И ЗначениеЗаполнено(Строка.Вид) И ЗначениеЗаполнено(ЗначенияПолей) Тогда ОтобранныеСтроки = Объект.КонтактнаяИнформация.НайтиСтроки(Новый Структура("Тип, Вид", Тип, Строка.Вид)); Если ОтобранныеСтроки.Количество() > 0 Тогда РедактируемаяСтрока = ОтобранныеСтроки[0]; Иначе РедактируемаяСтрока = Объект.КонтактнаяИнформация.Добавить(); КонецЕсли; // РедактируемаяСтрока.Тип = Тип; РедактируемаяСтрока.Вид = Строка.Вид; РедактируемаяСтрока.ВидДляСписка = Строка.Вид; РедактируемаяСтрока.Представление = Представление; РедактируемаяСтрока.ЗначенияПолей = ЗначенияПолей; // Адрес электронной почты Если Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда РедактируемаяСтрока.АдресЭП = Представление; // Телефон ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда РедактируемаяСтрока.НомерТелефона = Представление; РедактируемаяСтрока.НомерТелефонаБезКодов = Представление; // Адрес ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда РедактируемаяСтрока.Страна = ?(СтруктураКИ.Свойство("Страна"), СтруктураКИ.Страна, ""); РедактируемаяСтрока.Регион = ?(СтруктураКИ.Свойство("Регион"), СтруктураКИ.Регион, ""); РедактируемаяСтрока.Город = ?(СтруктураКИ.Свойство("Город"), СтруктураКИ.Город, ""); КонецЕсли; КонецЕсли; КонецЦикла; |
|||
16
bolobol
02.02.18
✎
18:35
|
Опачки... Не успел я осилить модуль БСП, не успел перекрутить Алгоритм из правил из (14), тут прям модуль-модуль в (15)!
Разберём и эту схему) Благодарю вселенски!! |
|||
17
Amra
02.02.18
✎
20:08
|
(15) Добрая вы душа, Александр
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |