Domino 使用遞歸算法獲取視圖值

    在關係數據庫中,有兩字段是父子關係,通過遞歸算法,輸入一個父ID,可以獲取所有對應的子ID。這種數據結構在組織架構中經常使用,顯示一般使用樹形結構。在Domino中同樣可以處理這樣的情況,以下是個小demo,希望對大家有幫助,交流QQ 873968102

   1)視圖的數據結構(這數據結構使用在一些應用當中,這是前臺UI xpages domino動態編輯樹

     

    2)以下是使用LS的遞歸算法,通過輸入一個父ID,把所有子ID帶出來,通過 : 分隔,其它JAVA、SSJS寫法類似,就不寫出來了。有些同學會想,爲什麼要獲取所有的子ID呢?例如刪除一個ID,就先要獲取子ID一起,然後當前ID和子ID全刪除。

%REM
    視圖第一第二列遞歸取數據
    view,id爲全局變量
%END REM

Dim id asstring

Function tempstring1(key As String) AsString
    Dim vc1 AsNotesViewEntryCollection
    Dim entry1 As NotesViewEntry
    Set vc1=view.GetAllEntriesByKey(key,True)
    Set entry1=vc1.GetFirstEntry   
    While Not entry1 Is Nothing
       If id=""Then
           id=CStr(entry1.ColumnValues(1))
       Else
           id=id & ":" & CStr(entry1.ColumnValues(1))
       EndIf
       tempstring1=id & ":" &tempstring1(CStr(entry1.ColumnValues(1)))
       Setentry1=vc1.Getnextentry(entry1)
    Wend  
EndFunction



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章