Форум продуктов IBM Lotus
Общие вопросы => Разработка приложений => Тема начата: CL1F от 13 Сентябрь 2011, 09:30:16
-
ВВодная часть.
Автор создает документ. Он может его редактировать и изменять как ему хочется. Админ тоже может делать с файлом что угодно. Есть также группа которая должна менять 1 поле во всем документе, естественно прав на редактирование у данной группы нету.
Как реализовать данную проблему????
написал агент который позволяет менять данные из-под автора и админа ...
Sub Initialize
On Error Goto errHandler
Dim errs As String
Dim s As New NotesSession
Dim db As NotesDatabase
Dim wdc As NotesDocument
Dim doc As NotesDocument
Dim unid As String
Dim NewDate As Variant
Dim NewDateTXT As String
Set wdc = s.DocumentContext
Set db = s.CurrentDatabase
unid = wdc.GetItemValue("ParentUnid")(0)
On Error Resume Next
Set doc = db.GetDocumentByUNID(unid)
Err = 0
On Error Goto errHandler
If Not(doc Is Nothing) Then
NewDateTXT = wdc.GetItemValue ("Date_D") (0)
If NewDateTXT = "" Then Exit Sub
NewDate = Datevalue (NewDateTXT)
Call doc.ReplaceItemValue ("DateProlong" , "1")
Call doc.ReplaceItemValue ("DateProlongEnd" , NewDate)
Call doc.Save(True, False)
Print {<script>window.opener.location.reload();</script>}
Print {<script>window.close();</script>}
End If
endSub:
Exit Sub
errHandler:
Msgbox Error$ & " in [Agent\(Web_Action_Prolog)], at line: " & Erl, 16, "Ошибка"
Resume endSub
End Sub
-
Добрый день!
Можно дать группе права на редактирование и условиями скрытия для полей настроить возможность редактирования только нужных полей.
-
не пойдет ... редактирование дам на все документы ... это не есть айс ... да и условий придется писать очень много .... а если для другой группы надо будет что то сделать ...
есть ли способ решить данную траблу только Агентом ...
-
Можно сделать еще одну форму, в которой будет только одно поле на редактирование. А в виде изменять Form Formula в зависимости от пользователя.
Можно через агент, который бы запускался от имени администратора.
-
как запустить агент от имени администратора ?
вооот что мне надо )
-
В свойствах агента на вкладке "Security" поле "Run on behalf of"
-
СПАСИБО ... это решило проблему
Кнопка которая вызывает агент настроена на показ определенным РОЛЯМ и пользователям ...
Агент запускается под админом ... нет никакого гемора ....