|
Копия ЧтениеXML или сбросить выборку | ☑ | ||
---|---|---|---|---|
0
ДНН
13.02.19
✎
15:47
|
Доброго времени суток, коллеги.
Есть ЧтениеXML. Мне нужно получить из него определенное значение, сравнить его с моим значением, если они равны, то я загружаю этот файл. Если нет, то нет. Я читаю ЧтениеXML через ЧтениеXML.Прочитать(), нахожу мое свойство, читаю значение, сравниваю, но после этого ЧтениеXML уже не загружается, потому что методом Прочитать() я дошел до конца файла. Как можно создать копию ЧтениеXML для анализа, или сбросить выборку после анализа? Спасибо. |
|||
1
Вафель
13.02.19
✎
15:49
|
если файл небольшой, что читай через xdto
|
|||
2
kennetmccormick
13.02.19
✎
15:54
|
закрыть и прочитать снова
|
|||
3
ДНН
13.02.19
✎
16:14
|
Вообще задача такая: нужно при переносе данных через конвертацию данных 2.1 фильтровать документы при загрузке в приемник по значению даты документа.
Пытаюсь получить дату в обработчике "Перед загрузкой" из Файла обмена (тип Чтение XML), но после анализа он больше не читается. Пробовал через ПостроительDOM и фабрику xdto - аналогично. В обработчиках "При загрузке" и "После загрузки" не отменяется загрузка, так как в обработчике "После загрузки" выполняется заполнение, запись и проведение объекта. |
|||
4
ДНН
13.02.19
✎
16:16
|
Для загрузки в семёрку я сделал проверку на дату запрета загрузки документов так:
В ПКО обработчик "Перед загрузкой" УзелДок = гФайл.ТекущийЭлементВВидеОбъекта(); Реквизиты = УзелДок.ВыбратьУзлы("Свойство"); ДатаДок = ""; НомерДок = ""; Для Сч=0 По Реквизиты.КоличествоУзлов()-1 Цикл Реквизит = Реквизиты.ПолучитьУзел(Сч); ИдРеквизита = Реквизит.ПолучитьАтрибут("Имя"); ТипОбъектаРеквизита = ""; ВидОбъектаРеквизита = ""; Если ИДРеквизита = "ДатаДок" Тогда ДатаДок = УстановитьРеквизитV8(Реквизит,ТипОбъектаРеквизита,ВидОбъектаРеквизита,ИдРеквизита); КонецЕсли; Если ИДРеквизита = "НомерДок" Тогда НомерДок = УстановитьРеквизитV8(Реквизит,ТипОбъектаРеквизита,ВидОбъектаРеквизита,ИдРеквизита); КонецЕсли; КонецЦикла; Если ДатаДок <> "" Тогда Если ДатаДок <= Константа.ДатаЗапретаЗагрузки Тогда Сообщить(НомерДок+ "("+ДатаДок+") документ не загружен. Дата документа меньше даты запрета загрузки.","!!"); Отказ = 1; КонецЕсли; КонецЕсли; Это пример из 7.7, хотел сделать также |
|||
5
Вафель
13.02.19
✎
16:17
|
послезагрузки делай отказ и все
|
|||
6
ДНН
13.02.19
✎
16:19
|
(5) не помогает, если в этом обработчике есть какой-нибудь код, то считается что объект был изменен и он записывается 100%
|
|||
7
Вафель
13.02.19
✎
16:20
|
(6) отказ = истина всегда помогает
|
|||
8
ДНН
13.02.19
✎
16:20
|
(5) а у меня так заполнение, запись и проведение. Если убрать проведение, то придется что-то придумывать для проведения всех документов после загрузки
|
|||
9
ДНН
13.02.19
✎
16:20
|
(7) не всегда
|
|||
10
Вафель
13.02.19
✎
16:23
|
(9) если конечно в самомо обработчике нет записать()
|
|||
11
ДНН
13.02.19
✎
16:24
|
(10) даже если нет, не помогает
ОбъектМодифицирован – Булево. Флажок указывает на то, что в обработчике объект был изменен. По умолчанию содержит значение Истина. То есть обработка загрузки считает, что если выполнялся какой-либо обработчик, то объект мог быть модифицирован, и его необходимо записать в информационную базу. Параметр относится только к текущему обработчику. Если объект был изменен ранее, то при любом значении переменной ОбъектМодифицирован он будет записан. Только для платформы 1С:Предприятие 8. |
|||
12
Вафель
13.02.19
✎
16:25
|
(11) я тебе про Фому, а ты мне про Ерему
|
|||
13
SilentMan
13.02.19
✎
17:42
|
(0) ЧтениеXML.ОткрытьФайл() ?
|
|||
14
craxx
13.02.19
✎
17:52
|
(11) В структуру прочитать не вариант?
|
|||
15
ДНН
13.02.19
✎
18:41
|
(13) А как сохранить в файл? Если перебрать уже имеющееся Чтение XML, то снова после перебора читаться больше не будет
|
|||
16
SilentMan
13.02.19
✎
18:44
|
(15) Кого куда сохранить? Откуда взялось текущее ЧтениеXML? Вот этот файл и открыть заново - выборка начнется с начала (судя по СП). Вопрос стоит - как сбросить выборку в начало. Я и предложил умозрительный вариант
|
|||
17
Конструктор1С
13.02.19
✎
20:16
|
(1) а на больших файлах XDTO чем плохо?
|
|||
18
quest
13.02.19
✎
20:42
|
(17) CDATA, размер и положение луны
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |