Форум продуктов IBM Lotus
Общие вопросы => Разработка приложений => Тема начата: Lariel от 05 Июнь 2010, 14:12:16
-
Привет.
Столкнулся на днях с интересной проблемой. Может быть кто-то тоже сталкивался.
При открытии документа в его методе
Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
в параметр Source - передается совсем другой документ, т.е. передается документ из другой базы совсем (из почтовой)
у которого другой метод Queryopen и т.е. попадает документ который вообще не имеет отношения к открываемому документу.
Какой-то интеренсый "глюк" что-ли ? Как такое может быть вообще.
Удалял cache.ndk, desktop, bookmarks, - переустанавливал клиент - ничего не помагает
Самое интересное вот что:
- если переустановить клиент lotus на этой машине, то при первом открытии документа - ошибки с подменой параметра не возникает
а если дальше перезапусить клиент то ошибка появиться и будет повторяться уже всегда. - если в ACL базы изменить уровень пользователя с Редактора на дизайнера - то ошибка с подменой параметра тоже исчезает
- на других компьютерах под этим iD-пользователя - все работает корректно т.е. глюк проявляется только на оной конкретной машине
[/li][/list]
/list]
Lotus Notes. 7.0.2 + Windows XP SP2
Даже не знаю - это что какая-то проблема с интерпретаром Lotus Script ? [/list]
-
Добрый день!
Точно из другой базы? Что выдает Source.Document.ParentDatabase?
-
Да точно из другой - имено через свойство Source.Document.ParentDatabase - и понял что база другая и документ другой
Хотя в итоге открывается именно тот документ который пользователь открывал на который щелкал,
но в отладчике видно что через параметр проходит другой джокумент
и соответствено код уже становиться писать бесмыслено т.к. в паремт передан "непонятный" документ
А куда делся настоящий документ ? - загадка
-
Строго говоря, если я правильно понял суть этого "глюка" - программный код вообще может никакого не быть -
тут важен именно факт что в процессе отладки в метод в параметр пападает уже другой "левый" документ,
и этот неверное значения параметрп может передаваться уже программному коду.
Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
REM Source - этот нее тот документ на который щелкал пользователь и вообще из другой базы
----> а программный код уже чего тут анализировать раз Source не тот на которомщелкали
End Sub
-
На виде есть Form Formula?
Как текущая база связана с другой?
-
В параметр Source - пападает документ из одной и той же базы, значек которой находится на на рабочем столе - это почтовая база пользователя.
А в формула отбора в представлении такая:
SELECT (Status = "") & (Form = "Request")
В итоге-то открывается правильный документ т.е. тот на котором щелкал пользователь в представлении,
но вот в событии QeryOpen - перехватить и обработать этот документ нет возможности т.к. в его параметре Source документ из другой базы.
-
Фантастика!
Попробуйте создать PMR запрос