|
Выгрузка из 1С в YML
|
Я
|
|
jamesgold 26.10.16 - 09:07 | Добрый день, прошу помочь!
Стандартные атрибуты вроде нормально записываются:
Файл_XML = Новый ЗаписьXML;
Файл_XML.ОткрытьФайл(АдресФайла, "windows-1251");
Файл_XML.ЗаписатьОбъявлениеXML();
Файл_XML.ЗаписатьНачалоЭлемента("offers");
Файл_XML.ЗаписатьНачалоЭлемента("offer");
Файл_XML.ЗаписатьАтрибут("id", Строка(Результат.Ссылка.код));
Файл_XML.ЗаписатьКонецЭлемента();
Файл_XML.Закрыть();
Может кто поделиться рабочим кодом выгрузки из 1с в YML?
Интересует также как заполнить параметры в файле выгрузки:
<param name="Тип">12344</param> |
jamesgold 1 - 26.10.16 - 09:21 | Кто-нибудь сталкивался?
|
experimentator76 2 - 26.10.16 - 09:37 | ( 0) код сверху на доработку |
jamesgold 3 - 26.10.16 - 09:41 | По YML уже все написал, что я накидал в обработке
|
jamesgold 4 - 26.10.16 - 09:42 | Там атрибутов просто много, но заполняются то одинаково. Проблема с параметрами.
|
jamesgold 5 - 26.10.16 - 09:42 | Файл_XML.ЗаписатьАтрибут("param name=""Подтип""", Подтип); В таком виде ругается
|
jamesgold 6 - 26.10.16 - 09:49 | Недопустимое имя XML ругается
|
jamesgold 7 - 26.10.16 - 09:55 | ап
|
Serginio1 8 - 26.10.16 - 10:04 | Файл_XML.ЗаписатьТекст("12344");
|
Serginio1 9 - 26.10.16 - 10:06 | |
Serginio1 10 - 26.10.16 - 10:08 | |
jamesgold 11 - 26.10.16 - 10:15 | Файл_XML.ЗаписатьТекст("12344");
Сформировать в виде текста?
<param name="Тип">12344</param> |
Serginio1 12 - 26.10.16 - 10:19 | Файл_XML.ЗаписатьНачалоЭлемента("param ");
Файл_XML.ЗаписатьАтрибут("name", "Тип");
Файл_XML.ЗаписатьТекст("12344");
Файл_XML.ЗаписатьКонецЭлемента(); |
jamesgold 13 - 26.10.16 - 10:34 | Ругается
Файл_XML.ЗаписатьТекст("<param name=""Тип"">"+Строка(Результат.Тип)+"</param>");
Ошибочный порядок записи XML |
jamesgold 14 - 26.10.16 - 10:35 | |
jamesgold 15 - 26.10.16 - 10:46 | Так тоже ругается:
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() цикл
Файл_XML.ЗаписатьНачалоЭлемента("offer");
Файл_XML.ЗаписатьАтрибут("id", Строка(Результат.Ссылка.код));
Файл_XML.ЗаписатьНачалоЭлемента("param");
Файл_XML.ЗаписатьАтрибут("name", "Тип");
Файл_XML.ЗаписатьТекст(Строка(Результат.Тип));
Файл_XML.ЗаписатьКонецЭлемента();
Файл_XML.ЗаписатьКонецЭлемента();
КонецЦикла;
Файл_XML.ЗаписатьКонецЭлемента();
Файл_XML.Закрыть(); |
Serginio1 16 - 26.10.16 - 10:58 |
Правильно, ты же не там конец элемента поставил
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() цикл
Файл_XML.ЗаписатьНачалоЭлемента("offer");
Файл_XML.ЗаписатьАтрибут("id", Строка(Результат.Ссылка.код));
Файл_XML.ЗаписатьНачалоЭлемента("param");
Файл_XML.ЗаписатьАтрибут("name", "Тип");
Файл_XML.ЗаписатьТекст(Строка(Результат.Тип));
Файл_XML.ЗаписатьКонецЭлемента();
Файл_XML.ЗаписатьКонецЭлемента();
Файл_XML.ЗаписатьКонецЭлемента();
КонецЦикла;
Файл_XML.Закрыть(); |
Serginio1 17 - 26.10.16 - 11:00 | Тьфу Не то. Для начал проверь
|
jamesgold 18 - 26.10.16 - 11:17 | Serginio1, огромное спасибо! Работает!
|
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать
новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более
2000 человек.