Запуск агента на сервере на выделенных документах в представлении

Тема в разделе "Lotus - Программирование", создана пользователем Sasha*, 21 май 2009.

  1. Sasha*

    Sasha* Гость

    Здравствуйте, я столкнулась с такой проблемой:

    Я выделяю в представлении документы , и запускаю агент на сервере (agnt.RunOnServer(docTemp.NoteID) ) , в результате получаю ошибку:
    Notes error: Unsupported trigger and search in the background or embedded agent.

    У агента выставлены следующие настройки: Action menu selection, All selected documents.
    Если я запускаю данный агент формулами, то все работает.
    Запуск с помощью Run, тоже выдает тоже ошибку.
    Подскажите, пожалуйста, как запустить агент скриптом? Может я ставлю не те настройки для агента?
     
  2. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    собсно, задача не ясна полностью...
    агент, у которого в цели стоит "выделенные доки" подразумевает запуск на УИ с выделенными документами.
    твоим способом агент не получает цель, что приводит к ошибке...

    если цель обработать выделенные доки, и сделать локально это нельзя, а только серверным агентом,
    то придется как-то этому серверному агенту их указать.
    на вскидку два способа:
    - запускать агент на сервере указывая ему параметром каждый из выделенных доков по очереди;
    - если есть возможность (у пользователя, толкающего агент из УИ) создавать документы в базе серверного агента, то можно создать документ, в какое-то поле запихать униды/нотиды выделенных доков, сохранить док, указать его параметром серверному агенту, серверный агент получит нужные доки по унидам.

    зы: у серверного агента. соотв. в цели должно быть "ничего"
    зы2: во втором случае не забудь удалить временный документ
     
  3. Sasha*

    Sasha* Гость

    Вероятно, я плохо описала свою проблемку… попробую по-другому...
    У меня есть агент , он обрабатывает выделенные документы из представления. Агент прекрасно работает, если его запускать с помощью формул. НО возникла необходимость запустить агент скриптом, так как нужно передать кое какие параметры в агент. При запуске этого агента с помощью RunOnServer или Run, получаю ошибку (см. первое сообщение).

    PS: Для того чтобы обработать в агенте выделенные документы из представления не нужно передавать никаких сведений о документах, а можно воспользоваться методом UnprocessedDocuments в агенте.
     
  4. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    нет, ты ее не полно описала, ты сказала, что одним и тем же агентом пытаешься обработать документы как локально, так и на сервере - вот это решение не совсем понятно...
    это правильно, но для того, чтобы это db.UnprocessedDocuments содержало определенную коллекцию, нужно выполнить определенные условия. например, чтобы коллекция содержала выделенные в представлении документы, нужно в свойстве агента Target указать All Selected Documents (более детально и остальные случаи описаны в справке)

    агент, который запускается на сервере не получает в UnprocessedDocuments предполагаемой тобою коллекции, мало того, агент, у которого в Target указано All Selected Documents не может быть запущен в фоне (background). что собственно сервер и сообщает.

    теперь стоит уточнить задачу, вернее недостающую ее часть, и прийти к какому-то решению... предложенные ранее варианты, я пока не отбрасываю :)
     
  5. Sasha*

    Sasha* Гость

    RunOnServer находится на кнопке...
     
  6. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    у меня создается впечатление, что ты пытаешься мне доказать, что ты права, а я и лотус - нет ;)
    не хочешь слушать совет, читай справку и разбирайся ;)

    агент с указанным таким образом свойством не может быть запущен на сервере!

    агент не отработал, потому что он некорректно настроен, какие еще логи тебе нужны, если сервер пишет, что агент не может быть запущен потому что "Unsupported trigger and search in the background or embedded agent"

    потому что он запускается локально в контексте данной сессии интерфейса и имеет доступ к выделению в представлении! :)

    не хорошо менять сообщение пока тебе отвечают ;)

    что ты хотела уточнить тем, что RunOnServer на кнопке? это ничего не меняет :)
     
  7. Sasha*

    Sasha* Гость


    Вот наверно именно этого ответа я и ждала.
    Как настроить агент, чтобы он запустился?
    PS:
    Прошу прощение, у меня продублировало несколько раз мои сообщение, вот и редактировала....
     
Загрузка...

Поделиться этой страницей