|
Перенос Xml | ☑ | ||
---|---|---|---|---|
0
pavvlyk
23.04.12
✎
08:23
|
Хочу из одной базы выгрузить Контрагентов с ИНН , в другой сравнить если есть такие же контрагенты то подставлять им ИНН из файла. Только вот не могу сообразить как это сделать.
Выгрузить вроде выгрузил, а вот как дальше делать... Процедура КнопкаВыполнитьНажатие(Кнопка) ЗаписьXML=Новый ЗаписьXML(); ЗаписьXML.ОткрытьФайл("d:\doc.xml"); Запрос = Новый Запрос(); Запрос.Текст = "ВЫБРАТЬ | Контрагенты.Ссылка КАК Контрагент |ИЗ | Справочник.Контрагенты КАК Контрагенты"; Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий () Цикл ЗаписьXML.ЗаписатьНачалоЭлемента("ГруппаОбъектов"); ЗаписьXML.ЗаписатьНачалоЭлемента("Контрагент"); ЗаписатьXML(ЗаписьXML, Выборка.Контрагент.ПолучитьОбъект()); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("ИНН"); ЗаписатьXML(ЗаписьXML, Выборка.Контрагент.ИНН); ЗаписьXML.ЗаписатьКонецЭлемента(); КонецЦикла; КонецПроцедуры |
|||
1
pavvlyk
23.04.12
✎
08:23
|
Процедура Кнопка1Нажатие(Элемент)
ЧтениеXML = Новый ЧтениеXML; ЧтениеXML.ОткрытьФайл("D:\doc.xml"); ЧтениеXML.Прочитать(); Сообщить(ЧтениеXML.Имя); Пока ЧтениеXML.Прочитать() Цикл Если ВозможностьЧтенияXML(ЧтениеXML) Тогда Сообщить(ПрочитатьXML(ЧтениеXML)); КонецЕсли; ЧтениеXML.Закрыть(); КонецЦикла; КонецПроцедуры |
|||
2
pavvlyk
23.04.12
✎
08:24
|
Только вот ВозможностьЧтенияXML(ЧтениеXML) возвращает мне ЛОЖЬ почему то....
|
|||
3
Trance_1C
23.04.12
✎
08:26
|
Есть очень удобное решение Конвертация данных, как раз для такого случая.
|
|||
4
butterbean
23.04.12
✎
08:29
|
конфигурации одинаковые??
|
|||
5
pavvlyk
23.04.12
✎
08:34
|
Да конфигурации одинаковые. Да я знаю про КД , это не "рабочая" задача, я просто сам хочу разобраться как написать такой код, просто для себя. Учусь программированию так вот =)
|
|||
6
Wobland
23.04.12
✎
08:35
|
(5) вот так учился я:
Процедура ОсновныеДействияФормыВыгрузить(Кнопка) ЗаписьXML=Новый ЗаписьXML; ЗаписьXML.ОткрытьФайл(ИмяФайла); ЗаписьXML.ЗаписатьНачалоЭлемента("body"); Запрос=Новый Запрос; Запрос.Текст= "ВЫБРАТЬ | ЧекККМ.Ссылка |ИЗ | Документ.ЧекККМ КАК ЧекККМ |ГДЕ | ЧекККМ.Дата МЕЖДУ &ДатаС И &ДатаПо | И ЧекККМ.КассаККМ = &КассаККМ | |УПОРЯДОЧИТЬ ПО | ЧекККМ.Дата"; Запрос.УстановитьПараметр("ДатаС", ДатаС); Запрос.УстановитьПараметр("ДатаПо", ДатаПо); Запрос.УстановитьПараметр("КассаККМ", Касса); Выборка=Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл ЗаписатьXML(ЗаписьXML, Выборка.Ссылка.ПолучитьОбъект()); КонецЦикла; ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.Закрыть(); КонецПроцедуры Процедура ОсновныеДействияФормыЗагрузить(Кнопка) Чтение=Новый ЧтениеXML; Чтение.ОткрытьФайл(Имяфайла); Чтение.Прочитать(); Чтение.Прочитать(); Пока Истина Цикл Попытка мОбъект=ПрочитатьXML(Чтение); Исключение Возврат; КонецПопытки; мОбъект.ОбменДанными.Загрузка=Истина; мОбъект.Записать(); КонецЦикла; КонецПроцедуры |
|||
7
pavvlyk
23.04.12
✎
08:38
|
Он почему то мне возвращает ВозможностьЧтенияXML(ЧтениеXML) Ложь, ну да ладно с этим разберусь.
А как потом обратиться к прочитанным данным чтобы сравнить если у меня есть такой же контрагент например, и подставлять ему ИНН из файла? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |