|
Подскажите - для чего XDTO используется?
| ☑ |
0
RomaH
naïve
22.08.14
✎
09:52
|
На конкретном примере:
из ФОМС получаем некую нормативно-справочную информацию в формате XML
мы эту НСИ загружаем в базу данных нашу
чем может помочь описание пакета XDTO в конфигураторе для этого файла?
|
|
1
NikVars
22.08.14
✎
09:55
|
|
|
2
thezos
22.08.14
✎
09:55
|
На эту тему можно много чего сказать) но лучше см. (1)
|
|
3
NikVars
22.08.14
✎
09:59
|
Можно еще посмотреть тут на X
Толковый словарь 1С:Предприятия 8
|
|
4
Господин ПЖ
22.08.14
✎
10:00
|
(0) валидировать его по схеме... не сношаться с чтением узлов
|
|
5
RomaH
naïve
22.08.14
✎
10:23
|
про запись вроде понятно в чем суть
а вот про чтение:
например сейчас приходят файлы xml
из него читаю так:
Функция ПолучитьАтрибутПосылки(ТекстСообщения,ИмяАтрибута) Экспорт
ЗначениеАтрибута = Неопределено;
Чтение= Новый ЧтениеXML;
Чтение.УстановитьСтроку(ТекстСообщения);
Построитель = Новый ПостроительDOM;
Попытка
Док = Построитель.Прочитать(Чтение);
Исключение
Возврат ЗначениеАтрибута;
КонецПопытки;
ЭлементыТело = Док.ПолучитьЭлементыПоИмени("*");
Для Каждого ЭлементДОМ Из ЭлементыТело Цикл
Если ТипЗнч(ЭлементДОМ) <> Тип("ЭлементDOM") Тогда
Продолжить;
КонецЕсли;
ЗначениеАтрибута = ЭлементДОМ.ПолучитьАтрибут(ИмяАтрибута);
Если ЗначениеАтрибута <> Неопределено Тогда
Прервать;
КонецЕсли;
КонецЦикла;
Возврат ЗначениеАтрибута;
КонецФункции
там есть оговорки - атрибуты уникальны внутри файла (т.е. например, дата рождения всегда одна)
другой вариант - найти конкретный узел XML (Пациент в нашем случае) и прочитать атрибут - дата рождения
а XDTO чем оптимизирует чтение?
|
|
6
NikVars
22.08.14
✎
11:20
|
(5) Самое лучшее - учиться у разработчика.
Открывай конфу, давай глобальный поиск по "XDTO".
К примеру, конфа Налогоплательщик 8 - Обработка ДокументообротСКонтролирующимиОрганами - Модуль объекта - Функция РазобратьРезультатОтСервераОнлайнПроверки...
Есть пример чтения.
|
|
7
Fisher-1987
22.08.14
✎
11:23
|
(0)Это УНИВЕРСАЛЬНЫЙ формат обмена данными.
Очень удобно использовать для обмена между сторонними прогами и 1с.
Я например писал конвертор для алкогольного декларанта.
Очень облегчает жизнь. Не представляю сколько сил надо иначе положить для последовательного вывода данных в XML или наоборот чтения его
|
|
8
Fisher-1987
22.08.14
✎
11:26
|
(0) и +(7) например - формат данных из ФОМС может менятся.
Ты свою прогу не переписываешь а в фабрику пихаешь новое описание структуры и твоя прога дальше работает.
Плюс! - читаешь данные из файла по названию свойст, а не так - типа получить строку...разобрать ее...
Все уже готово. Только получай узел и свойства
|
|
9
RomaH
naïve
22.08.14
✎
11:29
|
(8) ну как бы я тут не строку разбираю
а получаю конкретное свойство и атрибут
но вот с изменение формата - понятно
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший