H
haldey
Доброго времени суток!
Прошу помочь решить задачку, как хранить историю изменения полей.
Вообщем у меня получилось сохранять только 2-й и последующие варианты.
При первом сохранении документ не сохраняется если убрать первый If.
Sub Querysave(Source As Notesuidocument, Continue As Variant)
Dim rtitem, RDateItem As Variant
Set cuid = Source
Set CurDoc = cuid.Document
Set rtitem = curdoc.GetFirstItem( "numberhistory" )
Set RDateItem = curdoc.GetFirstItem( "RDatehistory" )
If CurDoc.old_number(0)<>"" Then 'Если не проверять то документ не сохранится
If CurDoc.old_number(0) <> CurDoc.Number(0) Then
Call curdoc.replaceitemvalue("old_number", CurDoc.Number(0))
Call CurDoc.Save(True, False)
If rtitem.Type = RICHTEXT Then
Call rtitem.AppendText( CurDoc.Number(0) & {, } & getAFSession.CurrentUser.ShortName & {, } & Format$(Now, "dd.mm.yyyy hh:mm"))
Call rtitem.AddNewLine( 1 )
Call curdoc.Save(False, True)
curdoc.SaveOptions="0"
Call cuid.Close()
End If
End If
End If
If CurDoc.old_number(0)="" Then
Call curdoc.replaceitemvalue("old_number", CurDoc.Number(0))
End If
'============================================================================
========
If CurDoc.old_RDate(0)<>"" Then 'Если не проверять то документ не сохранится
If CurDoc.old_RDate(0) <> CurDoc.RDate(0) Then
Call curdoc.replaceitemvalue("old_RDate", CurDoc.RDate(0))
If RDateItem.Type = RICHTEXT Then
Call RDateItem.AppendText( CurDoc.RDate(0) & {, } & getAFSession.CurrentUser.ShortName & {, } & Format$(Now, "dd.mm.yyyy hh:mm"))
Call RDateItem.AddNewLine( 1 )
Call curdoc.Save(False, True)
curdoc.SaveOptions="0"
Call cuid.Close()
End If
End If
End If
If CurDoc.old_RDate(0)="" Then
Call curdoc.replaceitemvalue("old_RDate", CurDoc.RDate(0))
End If
End Sub
Прошу помочь решить задачку, как хранить историю изменения полей.
Вообщем у меня получилось сохранять только 2-й и последующие варианты.
При первом сохранении документ не сохраняется если убрать первый If.
Sub Querysave(Source As Notesuidocument, Continue As Variant)
Dim rtitem, RDateItem As Variant
Set cuid = Source
Set CurDoc = cuid.Document
Set rtitem = curdoc.GetFirstItem( "numberhistory" )
Set RDateItem = curdoc.GetFirstItem( "RDatehistory" )
If CurDoc.old_number(0)<>"" Then 'Если не проверять то документ не сохранится
If CurDoc.old_number(0) <> CurDoc.Number(0) Then
Call curdoc.replaceitemvalue("old_number", CurDoc.Number(0))
Call CurDoc.Save(True, False)
If rtitem.Type = RICHTEXT Then
Call rtitem.AppendText( CurDoc.Number(0) & {, } & getAFSession.CurrentUser.ShortName & {, } & Format$(Now, "dd.mm.yyyy hh:mm"))
Call rtitem.AddNewLine( 1 )
Call curdoc.Save(False, True)
curdoc.SaveOptions="0"
Call cuid.Close()
End If
End If
End If
If CurDoc.old_number(0)="" Then
Call curdoc.replaceitemvalue("old_number", CurDoc.Number(0))
End If
'============================================================================
========
If CurDoc.old_RDate(0)<>"" Then 'Если не проверять то документ не сохранится
If CurDoc.old_RDate(0) <> CurDoc.RDate(0) Then
Call curdoc.replaceitemvalue("old_RDate", CurDoc.RDate(0))
If RDateItem.Type = RICHTEXT Then
Call RDateItem.AppendText( CurDoc.RDate(0) & {, } & getAFSession.CurrentUser.ShortName & {, } & Format$(Now, "dd.mm.yyyy hh:mm"))
Call RDateItem.AddNewLine( 1 )
Call curdoc.Save(False, True)
curdoc.SaveOptions="0"
Call cuid.Close()
End If
End If
End If
If CurDoc.old_RDate(0)="" Then
Call curdoc.replaceitemvalue("old_RDate", CurDoc.RDate(0))
End If
End Sub