Private Agent

Тема в разделе "Lotus - Программирование", создана пользователем wowa, 28 июл 2011.

  1. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Подскажите такой вопрос,

    Пользователь имеет право создавать частные агенты.
    Пользователь создал частный агент, но не может его сохранить "You are not authorized to perform that operation"

    Вот агент

    Код (Text):
    Option Public
    Option Declare

    Use "Library_1"
    Sub Initialize

    Dim s       As New NotesSession
    Dim db      As NotesDatabase
    Dim coll        As NotesDocumentCollection
    Dim doc         As NotesDocument
    Dim docNext     As NotesDocument
    Dim dtCreated   As NotesDateTime
    Dim agentLog    As Variant
    Dim createDate  As Variant

    Set db = s.CurrentDatabase
    Set agentlog = New LogDocInSpecificDb ("Missing Customer Requested Release Date '"+ db.Title +"'", db )
    Set coll = db.Search( {Form = "Opportunity" & Is_RfS_Proposal = 1 & OPP_GeplUebergabe = "" }, Nothing , 0 )

    Set docNext = coll.GetFirstDocument
    While Not docNext Is Nothing
    Set doc = docNext
    Set docNext = coll.GetNextDocument(doc)

    createDate = doc.Created
    Set dtCreated = New NotesDateTime( createDate )
    Call dtCreated.AdjustDay( 21 )
    Call doc.ReplaceItemValue("OPP_GeplUebergabe", dtCreated.GMTTime)
    Call doc.Save(True,False)
    Call agentLog.LogAction(doc.OPP_Reg(0))
    Wend       
    End Sub
    Возможно тут что-то запрещенное для частного агента, но я не знаю что.
    Также возможно тут неверно указана библиотека. Библиотека необходима для создания лога, но вызывается "Library_1", а уже из нее "Library_2", где все функции для лога.

    Агент простой, необходимо найти все доки, где поле пустое и заполнить его - прибавить 21 день к дате создания дока.
     
  2. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    wowa
    Вотни errorhandler, будет понятно на какой строке ошибка.
    Типа такого
    Код (LotusScript):
    On Error Goto Errh
    ...
    Exit Sub
    errh:
    Msgbox Error & | in line | & Erl(), 64, |Lotus Notes (| & Lsi_info(2) & |)|
    Exit Sub
    Я думаю ошибка будет тут:
    Код (Text):
    Call doc.Save(True,False)
    либо где-то внутри класса LogDocInSpecificDb
     
  3. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Omh , дак а смысл? он мне прислал скрин с дизайнера
    Насколько я понимаю, он создал агент в дизайнере и не может его сохранить. Обработчик ошибок тут не поможет
     
  4. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    А на сервере на вкладке безопасность у него есть права на лотусскрипт агенты?
     
  5. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Тьфу, я нечётко посмотрел.
    Проблема в том, что не может сохранить агента.

    Давно галку в ACL поставил?
    Может стоит лотус передёрнуть?
     
  6. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    с серверными правами - не должно вроде влиять. А есть ли у пользователя в АЦЛ право создавать лотусскрипт агенты?
    Потому что по умолчанию галка создания личных агентов вроде только простые действия и формулы позволяет (насколько помню).
     
  7. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Давно

    блин, а вот эту галочку я проморгал. Спасибо, наверно из-за этого.
     
  8. wowa

    wowa Well-Known Member

    Регистрация:
    1 фев 2007
    Сообщения:
    842
    Симпатии:
    0
    Возникла большая проблема, оказывается пользователь не имеет права создавать частные агенты на LS, и добавить это право ему не могут.
    Необходимо переписать агент на собаках. Я особо не знаю собак и не знаю возможно ли это.

    Агент простой, необходимо найти все доки, где поле пустое и заполнить его - прибавить 21 день к дате создания дока.

    Я не знаю, создать частную папку, где сделать Select Form = "Opportunity" & OPP_GeplUebergabe = ""

    А дальше как? Помогите плз, эт очень срочно
     
  9. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    У папок нет Select, они содержат документы, которые в них поместили :)
    Можно использовать в представлении, содержащим документы по форме "Opportunity" агента с условием отбора "все документы в представлении" или агента с условием отбора "все документы в БД"
    Код агента на собаках примерно такой
    @IF(Form = "Opportunity" & OPP_GeplUebergabe = ""; @SetField("OPP_GeplUebergabe"; @Adjust(@Created; 0; 0; 21; 0; 0; 0)); "")
     
Загрузка...
Похожие Темы - Private Agent
  1. Amfion
    Ответов:
    1
    Просмотров:
    672
  2. Serduko
    Ответов:
    17
    Просмотров:
    2.511
  3. seoman2
    Ответов:
    12
    Просмотров:
    2.323
  4. PaVaP
    Ответов:
    3
    Просмотров:
    1.572
  5. Zeka
    Ответов:
    4
    Просмотров:
    17.929

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