我有一个应用程序,在Lotus表格的Postopen中有一些编码,现在我需要使用XPage将此客户端应用程序更改为web。
如何在XPage中编写代码以实现表单的Postopen功能?谢谢你的帮助!
以下是表格后期编码:
Sub Postopen(Source As Notesuidocument)
.........
Set Targetdb = New NotesDatabase(db.Server, "OAS\PERSONAL.NSF")
Set enameview = Targetdb .GetView( "ENAMEVIEW" )
If enameview Is Nothing Then
Print "Coludn't find ENAMEVIEW View."
Exit Sub
End If
Set cnameview = Targetdb .GetView( "CNAMEVIEW" )
If cnameview Is Nothing Then
Print "Couldn't find CNAMEVIEW View."
Exit Sub
End If
Set Personaldoc = enameview.GetDocumentByKey(userName.ABBREVIATED,True)
If Personaldoc Is Nothing Then
message = "Couldn't find your information in Personal Database。 " & Chr(10)
msgtype = MB_OK + MB_ICONSTOP
return_code = Messagebox (message, msgtype, db.Title)
Exit Sub
End If
Set doc = Source.Document
If doc.IsNewNote Then
doc.dept=Personaldoc.DEP_NO_CNAME(0)
doc.Location = Personaldoc.Location(0)
If Personaldoc.C_SUPERIOR2(0)="" Then
doc.Director= Personaldoc.C_SUPERIOR(0)
Else
doc.Director= Personaldoc.C_SUPERIOR2(0)
End If
End If
End Sub
答案 0 :(得分:0)
不是很详细,但您可能希望查看页面/自定义控件的“afterRenderResponse”事件以及数据源的postOpenDocument事件。您的代码的确切位置将取决于您想要做什么,而这正是我们需要更多关于您要实现的目标的信息。
作为一个例子,我有一些代码,每次打开页面时都会添加到计数器中。我的代码位于数据源的postOpenDocument事件中,因为我使用LotusScript代理来完成工作(代理已经存在,所以我只需要调用它)。
答案 1 :(得分:0)
如果在Designer中打开XPage,请在“大纲”窗口中单击XPage:
然后在“事件”窗口中选择“页面”下的相应“事件”,具体取决于您是否希望服务器端或客户端操作数据: