Как стать автором
Обновить

Комментарии 10

Как оно устроено — это здорово. А как вы с этим потом работали средствами PL/SQL рассказ будет?
Разумеется. Но сначала, на мой взгляд, лучше объяснить, как оно устроено, чтобы не было недосказанности: почему оно работает, как оно работает и так далее.
Вероятно потом, автор, путем xslt трансформации (модуль xml2) и функций pl/sql выполнял преобразование данных.
Данные -> xml -> xslt_process -> Готовый xlsx документ
По крайней мере, так я делал в PostgreSQL
Нет.
Если в двух словах, то я перегнал исходный файл в BLOB, оттуда выделил тексты интересующих меня файлов в CLOB, а уже там начал колдовать.
Подробнее напишу, когда дойду до этого.
через updatexml

кусок реального кода — update tablica set dat = UPDATEXML(XMLTYPE.createXML(dat),'/data/address/text()','новый_адрес').getClobVal()
where id = ИД; --dat хранится в формате clob

А имея представление о структуре, дальше можно на лету все менять, тем более, что Oracle XML позволяет работать и с атрибутами. В общем, за поднятую тему автору СПАСИБО!

Вот бы еще про .docx такую статейку!

Маловата статья, по-хорошему, объединить бы её со следующей частью. Но тема интересная. Сам занимался разбором .xlsx (не нашёл нормальной либы для js, пришлось писать свой велосипед), но как устроены стили внутри, не разбирался, информация из статьи была мне полезна.
Есть проект под названием abap2xlsx
в нем ексель можно разобрать на атомы и потом собрать обратно, правда на абапе, но посмотреть как оно устроено внутри можно.
Этот пакет влился в библиотеку Alexandria PL/SQL. Некоторые процедуры я из нее и беру. Но я сделал над ней свою надстройку, про которую расскажу подробнее в следующем посте.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории