Lotus form的Postopen编码改为Xpage

时间:2015-04-15 16:01:34

标签: xpages

我有一个应用程序,在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

2 个答案:

答案 0 :(得分:0)

不是很详细,但您可能希望查看页面/自定义控件的“afterRenderResponse”事件以及数据源的postOpenDocument事件。您的代码的确切位置将取决于您想要做什么,而这正是我们需要更多关于您要实现的目标的信息。

作为一个例子,我有一些代码,每次打开页面时都会添加到计数器中。我的代码位于数据源的postOpenDocument事件中,因为我使用LotusScript代理来完成工作(代理已经存在,所以我只需要调用它)。

答案 1 :(得分:0)

如果在Designer中打开XPage,请在“大纲”窗口中单击XPage: XPage Outline

然后在“事件”窗口中选择“页面”下的相应“事件”,具体取决于您是否希望服务器端或客户端操作数据: enter image description here