Форум программистов, компьютерный форум, киберфорум
Наши страницы

Lotus Notes/Domino: Программирование

Войти
Регистрация
Восстановить пароль
 
 
otyk86
0 / 0 / 0
Регистрация: 17.12.2008
Сообщений: 420
#1

Dxl - Lotus

11.05.2010, 12:27. Просмотров 49842. Ответов 37
Метки нет (Все метки)

Предыстория:
Я так часто натыкался на этом форуме на выражения типа «ДХЛ тебе в помощь…» и т.п., что не выдержал и решил таки ознакомиться с данной технологией. ;)
Так вот:
Господа, не были бы вы столь любезны «ткнуть меня носом» в полезные ресурсы по DXL?
Интересует всё, начиная с теории (желательно на русском) и заканчивая примерами практической реализации (желательно с описанием)...
Поделитесь кто что видел, поделитесь кто что знает.
Раздел хелпа «XML for Domino» не предлагать! ;)
Заранее благодарен!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2010, 12:27
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Dxl (Lotus):

Dxl R8 To R6 - Lotus
Делаю экспорт документа в DXL из восьмёрки. При импорте там же в восьмерке всё проходит нормально. В версии нотеса 6.5.5 при вызове Call...

Переобразование Dxl - Lotus
в Rich тексте лежит DXl <?xml version=1.0 encoding=utf-8 ?> <database xmlns=http://www.lotus.com/dxl version=8.5.3> <document...

Dxl -> Xml - Lotus
Существуют ли какие-либо быстрые способы преобразования DXL в стандарный XML (data), понятный другим программам. Например: <div...

Символы В Dxl - Lotus
Например, при экспорте символ {} меняется на {'}. Подскажите, где посмотреть список всех соответствий? Спасибо.

Dxl Importer - Lotus
Всем привет! Вопрос. Вот кусок кода <!--shcode--><pre><code class=vb>Call Me.Exporter.Setinput( doc ) Call Me.Exporter.Setoutput(...

Dxl Export формы - Lotus
Всем привет! Помогите пожалуйста решить следующую проблему: Задача состоит в том, чтобы экспортировать форму из базы, дабы получить...

37
tmyky
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
11.05.2010, 12:45 #2
странный запрос...
звучит как - "научите меня водить ВАЗ 21111" ;)
нужно не ДХЛ учить, а ХМЛ - как технологию (т.е. со ср-вами работы и подходами к обработке)
0
otyk86
0 / 0 / 0
Регистрация: 17.12.2008
Сообщений: 420
11.05.2010, 12:56 #3
To lmike
Да в том-то и дело, что вроде как «где газ, тормоз, сцепление, коробка передач находятся, уже изучил, уже даже знаю, как завестись, тронуться и ехать, но вот каково оно ехать именно на ВАЗе 21111, как там у него отрегулировано сцепление, как именно расположены передачи и т.п. хотелось бы узнать и попробовать». ;)
P.S. Т.е. интересует именно DXL.
0
tmyky
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
11.05.2010, 13:20 #4
дык дело в том, что изучение сводится к просмотру ДТД, и готовых выгрузок
как и на авто - только поездив, сам, на конкретной модели преобретаешь специфичный опыт...
0
otyk86
0 / 0 / 0
Регистрация: 17.12.2008
Сообщений: 420
11.05.2010, 13:33 #5
БИНГО!!! Вот меня и интересуют среди всего прочего "примеры практической реализации". Т.е. хотелось бы посмотреть конкретные примеры, начиная постановки "хочу/надо сделать то-то и то-то" и заканчивая "а вот я/он/они сделали это, использовав DXL вот так:" и код этого "вот так".
P.S. Ща доизучаю хелп + нарыл че-то на OpenNTF -- лед тронулся, господа присяжные заседатели...
0
tmyky
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
11.05.2010, 13:48 #6
делал тупо подстановку файла в РТ и иконки...
делал выгрузку LAX, VTD для файлов
игрался с конвертацией РТ в UJAC (забросил - UJAC не развивается и не имеет границ для параграфа)
0
mvyush
0 / 0 / 0
Регистрация: 19.04.2009
Сообщений: 2,219
11.05.2010, 13:52 #7
alik86
На затравку — определение наличия картинки в рт-поле. РТ-нафигатор их в упор не видит.
0
turumboy
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 615
11.05.2010, 13:54 #8
Цитата Сообщение от alik86
P.S. Т.е. интересует именно DXL.
имхо, dxl применяеца в двух случаях:
1. нужно достать данные из документа( вида , базы , короче - лотусового объекта ), которые невозможно( сложно ) получить через стандартный апи( @, LS ). Пример задачи - получение скриптом файла из file resourses.
2. и наоборот - хочеца впихнуть данные в объект, но нету штатного апи для впихивания. Пример задачи - убрать в бэкенде дурацкую зеленую рамку для ссылок в rt поле
В обоих случаях приходица приходица действовать эвристическим путем. ( Можно конечна выкурить dtd и найти решение эмпирически - но это не наш путь )
1. экспортируем документ в dxl, открываем его текстовым редактором и вдумчиво курим увиденное. Найти нужные данные - обычно не проблема. Поняв, где оно(искомые данные) живет - пишем выдирающий его скрипт. Путей выдираения - множество: strleft-rigth, xslt, разбор dom , реализация sax. Для случая file resource - получаем ресурс через notecollection, выгружаем в dxl, выдираем содержимое <filedata> , декодируем base64, финиш.
2. впихивание данных чуть сложнее. нужно фактически иметь два документа: исходный и целевой. Исходный обычно есть, а целевой часто можно собрать ручками в ui. Далее, играем в "найди 10 отличий" и садимся писать скрипт, преобразующий исходный документ в целевой...
При работе с элементами дизайна - все то же самое, плюс надо не забывать их подписывать после импорта.
В любом случае - чтоб набить руку - необходимо повыгружать различные объекты и посмотреть "что у ней внутре"
Примеры:
проверка наличия ровно одной картинки в rt-поле.
http://www-10.lotus.com/ldd/bpmpblog.nsf/d...alidation-image
импорт элементов дизайна с подписыванием
http://www-10.lotus.com/ldd/bpmpblog.nsf/d...nt&comments
0
turumboy
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 615
11.05.2010, 14:09 #9
В догонку: если на форме расположен обычный текст вперемешку с pass-thru html - дизайнер часто вставляет ненужные параграфы перед html содержимым.
переодически натыкаюсь на эти грабли, особенно часто вылезают при отрисовке на форме html-таблиц - перед таблицей добавляется пустой параграф и нет возможности его убрать. Решение - убрать лишний <par>, выгрузив форму в dxl.
0
hosm
0 / 0 / 0
Регистрация: 15.05.2009
Сообщений: 1,454
11.05.2010, 14:21 #10
Как-то наткнулась еще на это сообщение о применении DXL
может, будет полезно ;)
0
ToxoRot
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 3,019
11.05.2010, 18:38 #11
моё практическое применение DXL
Анализатор - http://lotus.net.ua/homesite.nsf/0/DE279CD...22575FA00252AFE
0
otyk86
0 / 0 / 0
Регистрация: 17.12.2008
Сообщений: 420
14.05.2010, 15:50 #12
Итак, если никто не против, продолжим, господа…
Захотелось мне реализовать такой примерчик:
Форма с двумя rt полями RTField1 и RTField2 и кнопкой. В поле RTField1 вставлена картинка (допустим 100х100рх). По нажатию на кнопку надо «впулить» эту же картинку, но уже уменьшенную (допустим до 50х50рх) в поле RTField2.

Как я понимаю, теоретически решение выглядит как-то так:
Экспортирую RTField1, подменяю picture width="100px" height="100px" на picture width="50px" height="50px" (может еще и item name="RTField1" на "RTField2" – в общем хз ) и результат импортирую в RTField2.
(сразу же смутило то, что в NotesDXLImporter в Possible output objects значится лишь NotesDatabase)
Но как?! Как это реализовать и реализуемо ли это вообще через DXL?
Если да, то подкиньте пожалуйста приблизительный код.

P.S. ToxaRat, Ваша ссылка нерабочая.
0
hosm
0 / 0 / 0
Регистрация: 15.05.2009
Сообщений: 1,454
14.05.2010, 21:18 #13
Анализатор ToxaRat был выложен и на нашем форуме - Lotus Analyzer V1.4, но код там скрыт, так что вряд ли поможет разобраться с DXL.
Видать, с тем сайтом сегодня траблы...
0
Ktydo
0 / 0 / 0
Регистрация: 28.06.2009
Сообщений: 1,567
15.05.2010, 13:10 #14
ну и в тему про XML тут -
0
turumboy
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 615
15.05.2010, 14:37 #15
Цитата Сообщение от alik86
Как я понимаю, теоретически решение выглядит как-то так:
Экспортирую RTField1, подменяю picture width="100px" height="100px" на picture width="50px" height="50px" (может еще и item name="RTField1" на "RTField2" – в общем хз ) и результат импортирую в RTField2.
(сразу же смутило то, что в NotesDXLImporter в Possible output objects значится лишь NotesDatabase)
Но как?! Как это реализовать и реализуемо ли это вообще через DXL?
Кнопка на форме наверно не очень правильно. Не надо наступать на все грабли одновременно. Опытный граблепроходчик знает, что на грабли необходимо наступать последовательно. И даже умное слово для этого процесса выдумали: декомпозиция.
Пусть будет DXL отдельно, а UI отдельно. Сначала разберитесь с экспортом-импортом в бэкенде, потом подключайте UI. Так что для начала кнопку рекомендую сделать во вьюхе( или вообще - отдельного агента )
По задаче: все правильно рассуждаете.
1. выгружаем документ в xml.
2. преобразуем файл( поток, если не хочеца выгружать на диск) к нужному нам виду
3. импортируем полученный файл(stream) обратно в NotesDatabase с параметром
notesDXLImporter.DocumentImportOption = DXLIMPORTOPTION_REPLACE_ELSE_IGNORE (5)
0
15.05.2010, 14:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2010, 14:37
Привет! Вот еще темы с ответами:

Вопрос По Выгрузке Dxl - Lotus
Добрый день. Мучаюсь с выгрузкой dxl из lotus`a методом NotesDXLExporter. Подскажите, как выгружать xml по определенной схеме и с...

Dxl из БД большого размера. - Lotus
У меня есть база 5.8 гб, на ее основе создаю dxl файл,при его создании предварительно создается файл *.tmp, который доходит до 4 гб и...

Проблемы С Импортом Дизайна Из Dxl - Lotus
ну пока писал, одну проблемы поборол. Остался вопрос, а можно как-то, при импорте дизайне через DXL указать явно, что реплейсить весь...

Dxl и аттрибут Font.name у Columnheaderа - Lotus
Добрый день. Надумал я тут переводчик баз сделать :wacko: Ну и сразу наткнулся на грабли. Всё как обычно в лотусе: какая-то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru