Сбрасывается выделение после отработки агента внутри Action

  • Автор темы SkinGreek
  • Дата начала
S

SkinGreek

#1
Добрый день || вечер
подскажите плз,это правильно что сбрасывается выделение после отработки агента внутри action?
то есть есть Action написанный на собаках. Дело в том что после отработки @Command([ToolsRunMacro];... следующей команде уже передается не все выделенные документы. То есть, как я понимаю, эта команда автоматом прославляет обработанным докам статус processed.В принципе может это и правильно, но не в моем случае, мне нужно чтоб следующая команда работала с тем же выделением. По сути по другому я даже и не знаю как мне это сделать.мне нужно чтоб выполнить свой LS до того как выполнится системная команда обрабатывающая
Как это сделать подскажите плз.
 
S

SkinGreek

#3
не помогло((
Не понимаю зачем же стоко граблей наставлено^_^
Вообще можешь пояснить правельно ли я понимаю что формула в Action обрабатывает каждый выделенный док.или я доки опять не дочитал?
Дело в том что даже тестовый Action установки значения поля работает только для первого из выделенных доков.

И еще, вопрос. сорри за офтоп...
Напролся на такую непонятную штуку. Есть Shared Action в котором вызываться @Command([Folder]);
у фолдера, в который я вставляю док, описан обработчик ивента QueryAddToFolder. Если я из view All Documents или Inbox запускаю Shared Action и нажимаю внутри системного диалога выбора фолдера кнопку Add обработчик не срабатывает, а если Move то все норм. Если же из катумовского фолдера я это делаю то все норм на обоих кнопках. В чем я не прав? Это баг в Lotus'е или у меня в ДНК?:(
Уже не знаю когда же эти затыки закончатся, есть ли у кого структурированный список таких неожиданностей?
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#4
Вообще можешь пояснить правельно ли я понимаю что формула в Action обрабатывает каждый выделенный док.или я доки опять не дочитал?
Вроде обрабатывает только документ на котором курсор стоит, а не на выделенных. На выделенных только агенты иди LS.

Напролся на такую непонятную штуку. Есть Shared Action в котором вызываться @Command([Folder]);
у фолдера, в который я вставляю док, описан обработчик ивента QueryAddToFolder
В этом случае событие не работает. Это событие для источника, а не для приёмника. ^_^ В хелпе расписано. К тому же только при драгэнддропе.
Остальное с первого прочтения не понял. :(
 
S

SkinGreek

#5
Расстрелять разработчиков за это мало. быстрая смерть для тех, кто такое придумал, просто роскошь!:(
Да действительно не дочитал, просто название ивента логически противоречит данной стратегии. Да и вообще очень мало ивентов, которые срабатывают на источниках.
Я не думал что будет такой безумной сложностью сделать свои действия ДО перемещения/копирования дока в фолдер, и после него. То есть тупо поставить свой код до и после команды @Command( [RemoveFromFolder] ) и @Command( [Folder] ).
На счет второй команды только что увидел что можно использовать @Command( [FolderDocuments] ) сейча буду проверять, но уже и не чаю что получится(
Даже если и так не выйдет с переносом дока проблем не должно возникнуть, поставлю тогда обработчики еще в 3-х view'ах,это не проблема.
А вот что делать с @Command( [RemoveFromFolder] ) никак не знаю. Как я понял команда выполняется после выполнения всех собак, поэтому после нее я запускаю свои агенты я запускаю так.
Код:
@Command([RunAgent];"(wFolderMarkDocsForMove)");
@Command([RemoveFromFolder]);
@Command([ToolsRunMacro];"(wFolderMoveDoc)")
При этом RemoveFromFolder обрабатывает только 1-н док, если же я убираю 1-ю команду то RemoveFromFolder работает норм.
Внутри wFolderMarkDocsForMove я делаю NotesUIView.SelectDocument, но это не помогает.
Как только что выяснилось формула работает для дока под курсором. Есть команды NavigateNextSelected и NavNextSelected отличающиеся только тем когда они запускаются. Может конечно я не умею их готовить но, они мне тож не помогли.
Объясните неразумному плз, как сделать эту тривиальнейшую задачу. Чую что у меня подход к этому лотусу какой то не тот. Все как то по старинке как в нормальных ЯП пытаюсь ее решить, а он не сдается.:'(
 
S

Sandr

#6
использование собак - это принцип?
Если нет, то получите сначала коллекцию доков, а потом делайте с ней что захотите...

Или я не въехал в суть? :(
 
S

SkinGreek

#7
О кажись должно прокатить, буду завтра проверять. Спасиб огромное!
Нет, ни в коем случае не принцип:()
Мне больше понятен LS, хоть и корявый в некоторых языковых вещах, например не недоделаная типизация, но все же более понятный метод програминга.
Я просто зациклился что мне нужен диалог выбора фолдера, который на самом деле нужен при перемещении...:((