IE2017

XSL преобразование в 1С

Обмен - Обмен через XML

XSLT есть в 1C, в отличие от регулярных выражений. Значит, надо попробовать.

Доброго времени суток!

  Если спросить простого 1С-ника, что такое XSL преобразование, он, наверно, Вам ничего не скажет. Есть, конечно, знающие люди, но их мало. В стандартных конфигурациях это мало используется, и использовать в такой закрытой системе, как 1С, сложно. Но все по порядку.

  На самом деле XSLT есть в 1C (объект ПреобразованиеXSL), в отличие от регулярных выражаний ( //infostart.ru/public/183084/ ). Да, она, конечно, только версии 1.0, но нам не привыкать к трудностям. Что же это такое? Если кратко - берем один файл xml и по шаблону превращаем его в другой. Сразу возникает куча вопросов как, поэтому отсылаем к первоисточникам https://www.w3schools.com/xml/xsl_intro.asp

А сами покажем маленький пример обработки на 1С.

Сайт: http://sikuda.ru/archives/308

P.S.

Я думаю, она не стала популярной, так потребности внутри  1С нет. Динамические преобразования XML в части интерфейса слабо развиты или  применяются закрытые методы 1С. Но я думаю, может, кому и пригодится.

Дополнительно:

//infostart.ru/public/146223/

Скачать файлы

Наименование Файл Версия Размер
ПреобразованиеXSL.epf
.epf 9,48Kb
19.04.17
60
.epf 9,48Kb 60 Скачать

См. также

Комментарии
1. Ийон Тихий (cool.vlad4) 41 23.04.13 14:34 Сейчас в теме
у вас же на картинке правильный порядок букв, почему в заголовке и в тексте неправильный (расширение excel)?
eXtensible Stylesheet Language Transformations
2. Яков Коган (Yashazz) 2095 23.04.13 19:27 Сейчас в теме
О, вот и публикация на эту тему. Гуд!
Сам пользуюсь, у нас такенные хмл-файлы приходят, что построчно их преобразовывать да туда-сюда готовить к нетривиальному чтению - дело очень долгое. Посему юзаем. Посмотрю, авось что и пригодится.

(1) Автор уже успел поправить. Бывает, опечатался )).
3. Ийон Тихий (cool.vlad4) 41 23.04.13 20:55 Сейчас в теме
ну исправил, молодец. теперь о деле. под виндой есть возможность использовать xslt 2.0, - использовать добротный движок (есть бесплатная версия), с примерами и даже где-то валяющейся в инете документацией - http://www.altova.com/download/altovaxml.html (altova знают наверное многие, кто имел дело с xml). качаем community edition и по аналогии с примером из js, код 1С,
	
Попытка
	objAltovaXML = Новый COMОбъект("AltovaXML.Application");
Исключение
	Сообщить(ОписаниеОшибки());
	Возврат;
КонецПопытки;
strExampleFolder = "Здесь путь к altova\......\AltovaXMLExamples\";
xslt2 = objAltovaXML.XSLT2;
xslt2.XSLFileName = strExampleFolder + "CopyInputXSLT2.xsl";
xslt2.InputXMLFileName = strExampleFolder + "simple.xml";
xslt2.Execute(strExampleFolder + "OutputFrom1C.xml");
...Показать Скрыть

там же лежит библиотека типов, можно посмотреть какие еще методы поддерживаются (в принципе их не так много)
4. Станислав Раташнюк (stanru1) 81 24.04.13 11:13 Сейчас в теме
очень огорчает и ограничивает отсутствие поддержки 2й версии xslt. вменяемого быстрого способа работы с 2й версией не нашел (saxon работает медленно и через ж. - то есть, через файлы). Но saxon не надо устанавливать, в отличие от altova. Вообще удивляет и обращает на себя внимание отсутствие свободных xslt движков 2й версии.
5. Игорь (nmt450) 108 25.04.13 09:23 Сейчас в теме
stanru1, скорее всего уже и не будет. Технология XSLT в вэбе, где и предполагалось основное применение, "не взлетела". Поддержка XSLT в браузерах появилась в IE6, и с тех пор не обновлялась лет десять. Год назад один из последних "могикан" - mail.ru отказалась от использования XSLT в своем почтовом сервисе.
Желающих развивать эту технологию уже давно не наблюдается.
6. vovlulus septium (volvulus) 20 17.04.17 15:03 Сейчас в теме
(5) А какие есть альтернативы xsl преобразованиям?
Оставьте свое сообщение