Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/22: Рейтинг темы: голосов - 22, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 116

Notesdocument - MS Word - Notesdocument

12.02.2017, 18:43. Показов 4250. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Прошу помощи.
Задача такая: проект (NotesDocument) прилетает на согласование юзеру. В проекте вложенный MS Word документ. Юзер кликает ворд-файл и вносит в него поправки. В ворд-файле нужно нарисовать кнопку "Отправить замечания Lotus Notes", которая сохраняет новую версию проекта и отправляет уведомление автору. Скажите, мастера Lotus Domino, не сошел ли я с ума. Возможно ли такое сделать в природе? (Если вы считаете данное невозможным или слишком сложным, есть ли у вас альтернатива?)

Спасибо за внимание!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.02.2017, 18:43
Ответы с готовыми решениями:

послать сообщение Notesdocument -> Notesdocument
Подскажите пожалуйста как можно послать сообщение от одного NotesDocument другому конечная задача я делаю аналог DialogBox мне надо...

Notesdocument.putinfolder
Всем привет, господа! У меня возникла странная вещь. После изменения File Format (43:00 -> 51:00) nsf-базы функция...

Notesdocument.isuidocopen
как узнать что NotesDocument открыть в UI где нибудь c cети в клиенте лотуса NotesDocument.IsUIDocOpen не помогает

12
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 223
12.02.2017, 21:02
После открытия вордовского файла в одно из свойств/переменных файла пишем UNID дока и передаем управление Word.
После внесения изменений отрабатываем кнопку в Worde по обработке изменений. Соответственно в кнопке:
1) Устанавливаем связь с базой/сервером
2) По имеющемуся UNID получаем документ с исходной версией файла.
3) Создаем к нему наследника и аттачим сохраненный вариант файла с правками.
4) Кидаем автору исходного варианта письмо со ссылкой на документ с правками.
Где-то так. C Basicом в Wordе особых проблем быть не должно, синтаксис не сильно отличается от LotusScript
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 116
13.02.2017, 07:43
Цитата Сообщение от Anatoly
После открытия вордовского файла в одно из свойств/переменных файла пишем UNID дока и передаем управление Word.
После внесения изменений отрабатываем кнопку в Worde по обработке изменений. Соответственно в кнопке:
1) Устанавливаем связь с базой/сервером
2) По имеющемуся UNID получаем документ с исходной версией файла.
3) Создаем к нему наследника и аттачим сохраненный вариант файла с правками.
4) Кидаем автору исходного варианта письмо со ссылкой на документ с правками.
Где-то так. C Basicом в Wordе особых проблем быть не должно, синтаксис не сильно отличается от LotusScript
Один в один я и представлял. А есть ссылки с примерами? Куда проще было бы


--- Добавлено 14 фев 2017. Первое сообщение размещено 14 фев 2017 ---

В шагах 3 и 4 разобрался (http://www.fabalou.com/vbandvba/lotusnotesmail.asp)
Вот как передать в открываемый Word UNID notes-документа (вариант передачи в названии файла не очень нравится)?


--- Добавлено 14 фев 2017 ---

В ворде создал макрос (). Так некрасиво. Думал можно будет создать кнопку, которая мгновенно будет выполнять скрипт.
С макросом как-то некрасиво. Запускаешь его, потом выбираешь. Совсем не то.
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
13.02.2017, 11:10
Цитата Сообщение от Anatoly
После открытия вордовского файла в одно из свойств/переменных файла пишем UNID дока и передаем управление Word.
После внесения изменений отрабатываем кнопку в Worde по обработке изменений. Соответственно в кнопке:
1) Устанавливаем связь с базой/сервером
желательно DDA (будет вопрос секурити и атентификации), а не вызовом КОМ нотуса


2) По имеющемуся UNID получаем документ с исходной версией файла.
юнид в имени файла, при сохранении на диск, как временный файл и открытия ср-вами ОС


3) Создаем к нему наследника и аттачим сохраненный вариант файла с правками.
агент по DDA, есть тонкости с локировкой файла


4) Кидаем автору исходного варианта письмо со ссылкой на документ с правками.
стоит подумать, зависит от архитектуры приложения и используемой почтовой системы


Где-то так. C Basicом в Wordе особых проблем быть не должно, синтаксис не сильно отличается от LotusScript
общий посыл - использование http, а не КОМ
ссылки на DDA м.б. временными (чтобы не морочиться с паролем и пользователем)
Т.о. весь основной код будет на домине, а вордятине только ссылка, для POST измененного файла
детали, разумеется надо обдумывать


--- Добавлено 14 фев 2017. Первое сообщение размещено 14 фев 2017 ---




Цитата Сообщение от imendan
Вот как передать в открываемый Word UNID notes-документа (вариант передачи в названии файла не очень нравится)?
в теле в виде ссылки/в св-вах документа....
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 116
13.02.2017, 13:13
А что такое DDA? Есть ссылки с примерами?
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
13.02.2017, 18:30
Цитата Сообщение от imendan
А что такое DDA? Есть ссылки с примерами?
я, наверняка, внес сумятицу термином без ссылки ;) извините
говорил об этом https://www-10.lotus.com/ldd/ddwiki.nsf/xpAPIViewer.xsp?lookupName=IBM+Domino+Access+Services+9.0.1
https://www-10.lotus.com/ldd/d... _using_DAS



--- Добавлено 14 фев 2017. Первое сообщение размещено 14 фев 2017 ---

смысл действа таков:
- создаем док для отредактированного аттача
- открывает вордятину на детаченом (в темп) файле
- юнид из первого шага прописываем в св-ва файла, доступным способом, причем можем туда и ссылку для домины всобачить
- т.к. использование сервиса позволяет нам менять документ - мы эти и воспользуемся
- формируем json (как позволяют обстоятельства) и PUT его (по ссылке из предыдущих шагов)
как-то так http://infolib.lotus.com/resources/...DominoDataService.html#ddapi_ref_document_put
- заенкодить файло мы можем ср-вами ОС (скриптом, кот. услужливо положим рядом с вордятиной)

Т.о. мы можем не писать макросы в ворде, а написать ОС зависимые скрипты по работе, кот. складывать в домине (и выгружать вместе с вордятиной), и скрипт вызывать из вордятины (или вордятину открывать из скрипта, с ожиданием окончания его заюзывания)
т.к. док мы создавали временный и юнид известен только нам, секурити "условно" будет соблюдена (можно в отдельной БД, с анонимным доступом/спецюзера, на запись, делать это)

ЗЫЖ я не пытался отправлять так аттачи, но мну хочет верить ;)


--- Добавлено 14 фев 2017 ---

кста - вот пример бинарника
0
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 3,019
14.02.2017, 11:02
сохранить ворд в XML увидеть разницу версий, указать её в уведомлении ;)
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
14.02.2017, 11:36
допущение для скрипта - файло детачим во временный каталог (кот. создаем для каждого детача)
и этот каталог мониторим https://msdn.microsoft.com/en-... tcher.aspx
на предмет Watcher.Delete после запука вордятины с ворд файлом!
а вот мониторим временный файл, кот. создает водятина
http://stackoverflow.com/questions/760904/how-can-i-monitor-a-windows-directory-for-changes

делать можно и через опрос процессов, с открытым файлом (по имени файла), в цикле (с засыпанием, код, здесь, выкладывал)
в каждом подходе есть тонкости

для чего эти все заморочки с файлом и DAS (Domino Data Access Service, тоже самое что и DDA, как выше я называл)!?
это специфика интерактивной работы:
- не блокировать нотусевого клиента
- не зависеть от того - когда юзер наиграется с файлом (в винде Shell не будет ждать завершение "внешней" команды)
- более-менее контролировать момент окончания правок
- не быть завязанными на программирование в вордбэйсик (еще та забава- VB более коряв чем LS, и КОМы юзать полюбому придется)
- писать можно на любом языке, кот. нра и RT поддержвается ОС
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 812
15.02.2017, 14:24
Цитата Сообщение от imendan
Всем привет! Прошу помощи.
Задача такая: проект (NotesDocument) прилетает на согласование юзеру...
Вы стандартную базу "Библиотека документов" уже смотрели?
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
15.02.2017, 15:59
Цитата Сообщение от garrick
Вы стандартную базу "Библиотека документов" уже смотрели?
там же все через... КОМ
будут разные траблы
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 116
16.02.2017, 13:55
Цитата Сообщение от garrick
Вы стандартную базу "Библиотека документов" уже смотрели?
Что за база?
0
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
16.02.2017, 19:08
Цитата Сообщение от imendan
Что за база?
с лохматых времен есть такой шаблон http://www-12.lotus.com/ldd/doc/dom...6b870069c0a9/4a277ff50de24b2f85256c77005b1b60
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 812
16.02.2017, 21:16
Цитата Сообщение от lmike
там же все через... КОМ
будут разные траблы
COM это в Microsoft Office Documents Library, а я простую Documents Library имел ввиду. Там согласования, уведомления, версии документов, права доступа. А документы любые можно в виде аттачей вкладывать.


--- Добавлено 17 фев 2017. Первое сообщение размещено 17 фев 2017 ---




Цитата Сообщение от imendan
Что за база?
В дистрибутиве Lotus Notes есть набор стандартных шаблонов - там поищите.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.02.2017, 21:16
Помогаю со студенческими работами здесь

Умирает notesdocument
Здравствуйте. Гибнет NotesDocument, примерно в вот таком случае: есть библиотека Script Library TEST Option Public Option...

Notesdocument -> Vcalenar
Здравствуйте! Есть ли способ преобразовать документ Lotus типа встреча (у которого Form=Appointment) в vCalendar (или iCal, iCalendar,...

Notesdocument.getitemvalue("fieldname")
Редактируемое поле FieldName - DialogList с опцией Allow Multiple Values, в нем отмечены несколько значений. На LS пытаюсь взять все...

Связывание объектов Notesdocument
Собственно проблема в чем: Это некоторый кусок логики при самописном логировании Есть агент вызываемый через Ajax под Web, в нем...

Lotusscript Notesdocument.save
Добрый день Набросал простенький скрипт, который добавляет в names.nsf запись с полями LastName и Form. Однако при попытке сохранить...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru