|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
Экспорт выделенных документов (для новичка)19.11.2018, 19:13. Показов 10485. Ответов 22
Метки нет (Все метки)
Добрый вечер всем!
Не ругайте сильно, если спрашиваю глупость. Буду благодарен всем, кто ответить более предметно, нежели отправит читать мануалы)) Итак, задача: есть сервер Лотуса. Там - куча разных документов. Необходимо УКАЗАННЫЕ документы экспортировать, чтобы в дальнейшем выкладывать их на сайт. УКАЗАННЫЕ документы - это выбранные пользователем. Как экспортировать: в идеале, желательно каждому документу добавить некий ПРИЗНАК, а скрипт будет сам искать документы, которые ещё не были экспортированы, и экспортировать из КУДА-ТО в КАКОМ-ТО формате (текстовый, Эксель, XML - не суть важно, тут я уже разберусь). КУДА экспортировать - тоже, как мне кажется, второй вопрос. А идеале, вызывать внешний URL-адрес и передавать туда, например, XML. Если так не получится - то хоть просто в какой-то каталог в виде отдельных файлов. Тоже не суть важно. Это - в идеале. Но можно и так: пользователь в Notes выделяет галочками нужные документы, жмёт КНОПКУ и сохраняет файл, содержащий экспортированные документы в КАКОМ-ТО виде (см. выше) туда, куда укажет пользователь. В общем, пока не важно КАК, но хоть КАК-ТО бы экспортировать данные))) Если двигаться по второму варианту (когда пользователь выделяет нужные документы и жмёт кнопку), то вопросы такие: 1. Как создать СВОЮ кнопку, которую пользователь сможет нажать 2. Как на эту кнопку повесить обработчик, которые будет собираться все выделенные документы и преобразовывать их, например, в XML Программированием занимаюсь давно, но вот Лотус неожиданно достался в наследство. Раньше с ним не работал. А сделать всё надо, как обычно, вчера. ((( И никак не могу в интернете найти толковое руководство по Lotus Script, с чего хотя бы начать! Я даже не пойму, где исходный код на Lotus Script вставлять! )) Подскажите, пожалуйста! Не бросайте наедине с этим монстром)) Спасибо!
0
|
|
| 19.11.2018, 19:13 | |
|
Ответы с готовыми решениями:
22
Экспорт выделенных документов в Xml Как снять метки с выделенных документов во вьюшке как формулами собрать ИД всех выделенных документов? |
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 20.11.2018, 03:13 | |
|
Здравствуйте, если быстро экспортировать с минимальными телодвижениями то у вас только один выход
- Выделить в представлении (view) нужные документы, которые хотите экспортировать - Потом правой (!) кнопкой вызываете всплывающее меню и в меню есть пункт "Копировать как таблицу" - это в русском клиенте и после в буфер обмена будут помещены документы - Потом вы можете их вставить через буфер обмена. например в excel или word или куда хотите вообще. Недостаток этого копирования через буфер в том что в буфер будет помещены не все поля документа, а только видимые на экране (в представлении). Зато ничего программировать не нужно, быстро и универсально. Это самое простое для вас и быстрое. Если говорить о идеальном варианте, о котором вы спрашиваете с кнопочкой и обработчиком - то да вы правильно написали - это нужно уже программировать. Для начала вам нужно установить рабочую станцию Lotus Domino Designer - с ней вы сможете работать с дизайном (разработкой) баз, Не путайте с просто версиями станций Lotus Notes Standart или Basic - обычно их ставят пользователям там доступа к дизайну БД нет. И потихоньку разбираться начать лучше с Создания агента с использованием @-команд и @-формул, затем переходите к LotusScript - он по синтаксисту похож на Basic - но не обманывайтесь такой простой аналогией - на самом деле lotusScript работает со всеми элементами БД lotus, так же поддерживает ООП. В будущем если освоете базовый lotusScript - можете переходить в XPages - это более сложное можно уже разрабатывать приложения Lotus для Web. Особо много книг на тему разработки нету, но из лучших которые были в свое время поищите такие: Язык @-формул в Lotus Domino 6 справочник разработчика, Ru, Пояков Е.В. - не смущайтесь что это для 6-ой версии - на самом деле там 100% актуально и для всех последующих Разработка приложений в Lotus Designer 7 тот же Поляков Е.В. "Разработка приложений в Lotus Domino 7" - это перевод IBM Есть более старая, но так же актуальная версия на 100% Программирование в Lotus Domino R5. У меня они где-то были кажется в эл.виде - могу поискать если надумаете
1
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 20.11.2018, 08:22 [ТС] | |
|
Добрый день.
Да, Дизайнер есть. И Админ есть. Всё есть)) В Дизайнере уже копался. Примерно понял, где формы для нужных изданий лежат и как выглядят. Сейчас главный вопрос - как добавить СВОЮ кнопку, чтобы редактор, который занимается добавлением статей в Лотус, мог галочками выделить нужные статьи и нажать эту кнопку. И как потом на эту кнопку обработчик повесить. За вариант с копированием в буфер обмена - спасибо. На первых порах, по всей видимости, придётся так и делать. Но просто это работа не разовая и заниматься этим будет другой человек. У нас достаточно много статей пишется, много аналитики (финансовые рынки, банкинг), 75% из них идёт для внутреннего использования и для клиентов. А вот ЧАСТЬ статей должны выкладываться на сайт (http://www.wiki-ins.ru/) Сейчас редактор, по сути, делает двойную работу: сначала пишет статьи в Лотусе, а затем открывается Админку на указанном сайте и там их тоже добавляет. Это отнимает много времени. Изначально я рассматривал вариант работы через Lotus Notes SQL. Так, кажется, называется?. В общем, чтобы обращаться к Лотусу через SQL-запросы. Да, я знаю, что вариант во многом ущербный, но, судя по описанию возможностей, мне было бы достаточно. Проблема только в том, что я не нашёл драйвера под Linux (у нас Lotus установлен на Linux-е). Может быть у вас есть где-то ссылка на этот драйвер? И по поводу литературы - скиньте, пожалуйста! Буду очень благодарен! И если можно быстро подсказать, то намекните про создание кнопки и "повешение" на неё обработчика. Спасибо!
0
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 20.11.2018, 19:43 | |
Сообщение было отмечено play1981 как решение
Решение
Здравствуйте
Код посадить на кнопку нужно так Открываете базу в дизанейре - или шаблон из которога база наследует дизайн) переключаетесь в список представлений (views) Находите нужное представление и открваете его Когда попадаете в коструктор конкретного представления с правой стороны будет вертикалоьный список дествий - это и есть те кнопочки которые Отображатюся в панели дестви в представлении В этот список вы можете добавить действие (Actions) - за каждому дествию будет соответстовваа кнопка. Далее программный код кнопки по разному будет доступе в зависимости от того какое у вас дествие с @-коммандами или c LotusScript Прикладываю картинку - там все стрелками показал !
1
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 20.11.2018, 19:49 | |
|
Если вы хотите, чтобы действие работало только с выделенными пользователем документами, то это вам нужно использовать агенты. Создаете сначала агент , и в свойствах агента задать например что он обрабатывает тольк5о выделенные документы а в кнопке выполняете вызов агента команда кажется называется @RunToolsMacro("Название Агента"). И когда агент запускается агент сам уже фильтрует и обратабывает только выделенные длокументы.
1
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 21.11.2018, 07:58 [ТС] | |
|
Спасибо! Сегодня попробую ваш алгоритм действий.
Но, думаю,это то, что надо))
0
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 21.11.2018, 20:45 [ТС] | |
|
Попробовал.
Да, то, что надо! Вы, можно сказать, открыли мне окно в Лотус! )) А то я было совсем отчаялся, так как не мог ни в чём разобраться )) Дальше уже сам с экспортом буду думать. Спасибо огромное!!!
0
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 10.12.2018, 11:41 [ТС] | |
|
Добрый день.
Ещё раз спасибо за подробное объяснение! Всё сделал, всё получилось! )) При нажатии на кнопку выбранные статьи экспортируются на сайт. Однако, появился новый вопрос: не совсем пойму, как взять статью именно в HTML-формате. Просто в виде текста - пожалуйста! Но, как оказалось, в статьях есть таблицы и рисунки, которые в плоском тексте просто отсутствуют либо в виде несуразного набора символом присутствуют. Подскажите, пожалуйста, как взять текст статьи именно с разметкой? Вроде есть что-то про HTML, но там какой-то тип данных, который я никак не могу преобразовать в текст с разметкой. А может это и не оно вообще. Спасибо на наводку!
0
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 10.12.2018, 16:40 | |
|
Здравствуйте.
Я хотел уточнить - у вас статъи в Лотус базе хранятся в документах лотус и далее в поле RichText - и в rich-text поле уже теги HTML картинками ? или по другому как-то ? Просто что-то не соображу никак . Можете показать пример как у вас html- код хранится ? и тип поля.
0
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 10.12.2018, 19:33 [ТС] | |
|
В статье есть поле NS_TextView. У него тип просто TEXT. Его я сейчас беру.
Вот для выбранной статьи это поле имеет размер чуть больше 2 кБ. И есть поле NS_Text. У него тип Rich Text. И размер этого поля 40 кБ. Но когда я пытаюсь взять это поле и присвоить его переменной, Лотус выдаёт ошибку: Variant does not contain a container Как я понимаю, с данным типом поля как-то по-другому надо работать, чтобы вытащить из него данные. Только как - не пойму. Уже погуглил, разные преобразования типов попробовал - что-то не то...
0
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 10.12.2018, 20:03 | |
|
Для работы с ricthtext - полями моэжно использовать один из вдуух классов notesItem или NotesRichTextItem
У вас, я подозреваю, просто ошибка в алогитме работы с объектами. раз выдает "Variant does not contain a container" Для получения данных поля в формет html досточно notesItem это будут просто строки с тегами html Вам то нужно ? и картинки просто как строка с путем к имени фала или данными . Или у вас что то другое ?
0
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 11.12.2018, 01:08 [ТС] | |
|
Попробовал вот так:
Dim Item As NotesItem Set Item = doc.GetFirstItem("NS_Text") Msgbox Item.Text Выдаёт пустое окошко. Наверное, что-то не так опять)))
0
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|||||||||||
| 11.12.2018, 15:20 | |||||||||||
|
Код верный. у вас по карйней мере этот кусчек.
Попробуйте использовать проверки
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 12.12.2018, 19:25 [ТС] | |
|
Сделал, как вы написали.
Поле есть. Но выводит всё равно ПУСТОЕ значение. Прикрепляю два скриншота, как выглядит статья, и её свойства. Как видите, есть два поля: NS_Text и NS_TextView. NS_TextView - просто текст. NS_Text - RichText размером 40 кБ против 2 кБ у NS_TextView. Сдаётся мне, там и прячется эта табличка! Но всё равно почему-то ПУСТО выводит. Командой Messagebox(item.ValueLength) выводит 40054, а item.text - всё равно пусто, блин!
0
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 12.12.2018, 20:22 | |
|
Может быть там используется MIME формат ?
0
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 13.12.2018, 19:53 [ТС] | |
|
Не знаю. Как проверить, какой формат используется?
Вообще создаются и редактируются статьи в Word-е. То есть он запускается автоматом, когда в Лотуса наживаешь РЕДАКТИРОВАТЬ или ДОБАВИТЬ.
0
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 13.12.2018, 20:22 | |
|
Тогда скорее всего OLE Obect - хотя можно по другому. Вообщем нужно смотреть тогда дизанйрен. типя полей и код что делается события. Так иначе будет одни предпроложаения и угадывания.
0
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
|
| 13.12.2018, 20:36 [ТС] | |
|
Да, по всей видимости, это OLE-объект и есть.
Хм. Получится из него вытащить информацию?
0
|
|
|
528 / 91 / 43
Регистрация: 02.02.2013
Сообщений: 399
|
|
| 14.12.2018, 02:14 | |
|
Если это OLE- объект -То вы можете с ним рабоать из lotusScript используя OLD-classes и тогда можете вытягивать тест из Word.
Но если вы хотите имено работать с html-разметкой нужно понять тогда как текст из Word трансформируется в HTML. Это может например отдельно где-то сохраняется например в каком-то поле скрытом которое в форме не видно. И понять в какой момент происходит преоборозование в HTML и понять куда в какое место трансформируется куда кладется заранее полученный html-код Или у вас как-то по другому ?
0
|
|
|
0 / 0 / 0
Регистрация: 20.03.2017
Сообщений: 12
|
||||||
| 14.12.2018, 09:06 [ТС] | ||||||
|
Так-с. Докладываю, с чем разобрался.
Поле действительно OLE. Значит, надо, как вы говорите, работать с OLE-классом. Каким образом это делать? Всё-таки, сначала получаем Item?
Или надо сразу из DOC (который ....Set doc = docs.GetFirstDocument()...) OLE-объект вытягивать?
0
|
||||||
| 14.12.2018, 09:06 | |
|
Помогаю со студенческими работами здесь
20
Быстрый способ сохранить все вложения из выделенных документов Экспорт документов в Word Вывод в печатную форму несколько выделенных документов Экспорт выделенных строк из dataGridView в Excel Экспорт / Импорт документов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|