1.檢測當前用戶是不是文檔的創建者,如果不是,不允許編輯文檔。 Sub Querymodechange(Source As Notesuidocument. Continue As Variant) Dim session As New NotesSession Dim doc As notesdocument. Dim userName As New NotesName(session.UserName) Set doc=source.document. If Not ( source.EditMode ) Then If ( doc.authors(0) = username.CANONICAL ) Then continue=True Else Msgbox "您不是此文檔的創建人,不可以修改!",0,"文檔資料庫" continue=False End If End If End Sub 2.退出時檢測關鍵的域不能為空 Sub Click(Source As Button) Dim w As New notesuiworkspace Dim uidoc As notesuidocument. Dim doc As notesdocument. Set uidoc=w.currentdocument. name1=uidoc.fieldgettext("name") If name1="" Then Messagebox "姓名不能為空!",0,"通訊錄" Exit Sub End If Call uidoc.save Call uidoc.close End Sub 3.用私有視圖來顯示需要當前用戶處理的文檔,用以下視圖公式: 注意建立視圖時不要選中"保存到本地"選項,否則調試不便. SELECT Form = "收文1" & NextApprover=@Name(;@V3UserName) 4.Notes中Active控制項 當文檔中添加OLE或其他通用的ActiveX控制項后,在文檔的script編輯框右側中,會自動添 加各種屬性和方法在notes的類列表中.在script中聲明該對象的 方法如下: Sub Postopen(Source As Notesuidocument. Dim w as notesuiworkspace Dim uidoc as notesuidocument. Dim aa As Variant Set w =New notesuiworkspace Set uidoc =w.currentdocument. Set aa=uidoc. getObject("Chart")'該句為ole對象聲明,注意Chart是你給對象起的名 字 '接下來你就可以通過aa.**來調用其方法和屬性了. End Sub 5.是否保存 在表單中設定一個域,名稱為saveoption 下列公式添加到返回按鈕中,決定文件退出是否保存 FIELD saveoptions:="1"; 保存 FIELD saveoptions:="0"; 不保存 6.用公式彈出對話框,按確定繼續,取消返回. @If(@DialogBox("表單名";:;"表單標題");"";@Return(" ")) 7.用script彈出對話框,按確定繼續,取消返回 Dim w as notesuiworkspace If Not w.dialogbox("表單名",True,True,False,True,False,False,"填寫") Then doc.close'用戶按取消退出 Exit Sub End If 8.視圖中刪除文檔語句 @Command(); @Command() 9.檢測是否是周末 Dim dt as notesdatetime call dt.setnow If Weekday(dt.lslocaltime)=7 Then'是周六耶, dt.adjustday(2) '加兩天到星期一 Elseif Weekday(dt.lslocaltime)=1 Then'周日加一天 dt.adjustday(1) End If 10.得到當前的伺服器和路徑 公式: ResideServer := @Subset(@DbName; 1) CurrentPath := @Subset(@DbName; -1) DirOnly := @If(@Contains(CurrentPath; "\\"); @LeftBack(CurrentPath; "\\") + "\\"; ""); DbFile := DirOnly + "***.NSF"; 11.得到當前用戶名 公式:@Name(;@V3UserName) script:Dim s as notessession Dim myname as newnotesname(s.username) messagebox myname.common 12.得到當前日期公式: @today @date(@created) script:Dim dt as notesdatetime Set dt=New notesdatetime("") Call dt.setnow 13.常用全局對象聲明 '-----對象變數----- Dim w As NotesUIWorkspace Dim s As NotesSession Dim db As NotesDatabase Dim view As NotesView Dim uidoc As NotesUIdocument. Dim doc As Notesdocument. Dim item As NotesItem Dim dt As NotesDateTime Dim username as notesname 14.一些計算域,開始時沒有值,如果不給它一個值會報錯,以下公式給計算域賦值 @if(Bfield="";0;Bfield) 15.特殊字元 @char(13)可以在@prompt提示框中顯示回車 script中用函數chr(13)