视图里有数据,根据单据的UNID取视图里取数据,
Dim ViewH As NotesView
Dim VcH As NotesViewEntryCollection
Dim entryH As NotesViewEntry
Dim DocH As NotesDocument
Set ViewH=Db.Getview("v_list_HangMingXi")
Set VcH = viewH.GetAllEntriesByKey(UNID,True)
MsgBox VcH.Count
MsgBox UNID
For i=1 To VcH.Count ' 查找本文档的行项目
Set entryH=VcH.GetNthEntry(i)
Set DocH = entryH.Document
MsgBox DocH.Getfirstitem("ARBPL").Text
If Left(DocH.Getfirstitem("ARBPL").Text,2) = "11" Then
DiffDocTime = True
Else
DiffDocTime = False
End If
Next
这里显示VcH.Count一直为0,
这个要看你视图怎么设计的,如果知道UNID,没必要通过这个方式获得文档。
NotesDatabase.GetDocumentByUNID(UNID)
视图搜索是通过排序列的数据进行的,你要检查你的排序列。
如果是通过关联主文档UNID,得到一些明细集合的方式,视图第一列需要检查下排序,使用@DocumentUniqueID,需要使用@Text文本化。