Как найти элемент по id файле XML модели DOM при загрузке #599755


#0 by e053nk
Две базы 8 для одностороннего обмена: Источник и Приемник. Из базы Источника выгружаются данные, есть атрибут,который является идентификатором элемента. В базе Источник пишу: Дальше если проверять здесь же при выгрузке УзелЭлемента.Атрибуты[0].ЯвляетсяИдентификатором -возвращает Истина. При загрузке в Приемник вставил строки: ЭлементЗагрузки2Ур=ДанныеDOM.ПолучитьЭлементПоИден тификатору(СоответствиеРеквизитов.Получить("ОсновнойДоговорКонтрагента")); СоответствиеРеквизитов.Получить("ОсновнойДоговорКонтрагента") - это набор символов и он точно присутствует в файле. Стал в базе приемнике проверять файл обмена - на тех же самых артиубтах УзелЭлемента.Атрибуты[0].ЯвляетсяИдентификатором = возвращает Ложь. Т.е. не видит загрузка что этот атрибут содержит id элемента файла XML. Что я сделал не правильно-я не понимаю. Как указать атрибут с типом id элемента XML, чтобы искать по нему данные потом при загрузке из файла?
#1 by acsent
а как это в файле выглядит?
#2 by e053nk
кусок файла - не теги последние не привожу- много <?xml version="1.0" encoding="UTF-8"?>
#3 by Serginio1
Сейчас занимаюсь выгрузкой загрузкой из разных конфигураций через Объекты XDTO и схему базы. Есть нюансы но обмен прозрачнее и быстрее.
#4 by e053nk
я согласен, что мой вариант обмена возможно не идеален. Но мне для понимания работы XML в 1с крайне желательно понять -почему я не могу назначить атрибут с типом ID  в файле XML, для дальнейшей работы с ним при загрузке....И как вообще атрибут  с типом ID  от XML работает на языке 1с?
#5 by Serginio1
Вообще DOM в 1С некорректно работает когда этих ссылок множество
#6 by Serginio1
Кстати а где в файле прописывается твой АтрибутИдентификатор. Или он является атрибутом DOM
#7 by e053nk
Атрибут Идентификатор устанавливаю парой методов при выгрузке: УзелЭлемента.УстановитьАтрибутИдентификатор("id",истина); Причем, напомню, если в конце формирования (при выгрузке)  файла попробовать найти элемент: ДанныеDOM.ПолучитьЭлементПоИдентификатору(СоответствиеРеквизитов.Получить("ОсновнойДоговорКонтрагента")) - он находит его,а вот при загрузке во второй базе -уже не видит
#8 by Serginio1
Так в DOM он может и существует а в файле нет.
#9 by e053nk
Как сделать что бы и файле появился? И еще: DOM  что, не принимает основные типы XML? ведь id-стандартный тип XMLа
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С