I
Idea
Доброго времени суток!
Есть такая проблема:
В основной документ встроено представление, на котором отображаются документы, категоризованные 1) по родителю, 2) по автору. Соответственно пользователь видит на этом представлении только то, что относится к нему. Пользователь может из этой формы (через экшен бар представления) добавить документ, изменить или удалить. На вью есть колонка - сумма. Которая в обычном представлении делает подсчет по категориям, но естественно, что во встроенном представлении итоговой суммы мы не видим (single category). Для того, чтобы отобразить сумму по всем столбцу, использую форму уже на главной форме:
Естественно, если что-то меняется, то его надо пересчитать. А теперь заковырка:
пользователь, редактирующий свои документы через вью совсем не обязательно обладает правами автора на головной документ (скорее всего он есть только в поле Reader), то есть не может он его редактировать. Как можно в этом случае отобразить актуальную сумму?
Попробовала агентом, но эффекта пока никакого. Код агента:
Сам агент вызывается по кнопке из встроенного представления:
Есть такая проблема:
В основной документ встроено представление, на котором отображаются документы, категоризованные 1) по родителю, 2) по автору. Соответственно пользователь видит на этом представлении только то, что относится к нему. Пользователь может из этой формы (через экшен бар представления) добавить документ, изменить или удалить. На вью есть колонка - сумма. Которая в обычном представлении делает подсчет по категориям, но естественно, что во встроенном представлении итоговой суммы мы не видим (single category). Для того, чтобы отобразить сумму по всем столбцу, использую форму уже на главной форме:
Код:
@If(@IsNewDoc;@Return(0);"");
ar := @DbLookup("":"NoCache";@DbName;"PoT";@Text(@DocumentUniqueID);9);
@If( @IsError(ar); 0; @Sum(ar) )
Естественно, если что-то меняется, то его надо пересчитать. А теперь заковырка:
пользователь, редактирующий свои документы через вью совсем не обязательно обладает правами автора на головной документ (скорее всего он есть только в поле Reader), то есть не может он его редактировать. Как можно в этом случае отобразить актуальную сумму?
Попробовала агентом, но эффекта пока никакого. Код агента:
Код:
Dim session As NotesSession
Dim doc As NotesDocument
Set session= New NotesSession
Set doc=session.documentcontext
doc.HistText = "Added new TimeReport"
Call doc.ComputeWithForm(False, False)
Call doc.Save(True,False)
Код:
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Set uidoc = ws.CurrentDocument
Set doc = db.CreateDocument
doc.Form = "WorkWeek"
doc.Parentunid = uidoc.Document.UniversalID
doc.ProjectID = uidoc.Document.ProjectID
Call doc.MakeResponse( uidoc.Document )
Call doc.ComputeWithForm( False, False )
If ws.DialogBox("WorkWeek", True, True, True, False, False, False, "WorkWeek", doc, True, True) Then
Set agent = db.GetAgent("Recalculate")
Call agent.Run(uidoc.Document.NoteID)
End If
End Sub