Delete hierarchy

 A common use for LotusScript is to control the deletion of documents. I found myself often wanting to assure that when a user deletes a document, all of that document's descendants were removed as well.
The following piece of code can be called from anywhere you have a handle to a NotesDocument object. You pass this sub a NotesDocument and it will delete that document as well as all descendants.

 Sub DeleteHierarchy(docToDelete As NotesDocument) %REM This code will delete a document and all of its descendants. PARAMETERS docToDelete - NotesDocument object the represents the NotesDocument to be deleted. RETURN Nothing is returned. %END REM Dim ndcResponses As NotesDocumentCollection Dim docResponse As NotesDocument ' docNextResponse is a pointer to the next document in the response collection. ' This is needed because the current response is removed before a call to GetNextDocument can be made. Dim docNextResponse As NotesDocument Set ndcResponses = docToDelete.Responses If ndcResponses.Count > 0 Then Set docResponse = ndcResponses.GetFirstDocument Do While Not docResponse Is Nothing Set docNextResponse = ndcResponses.GetNextDocument(docResponse) Call DeleteHierarchy(docResponse) Set docResponse = docNextResponse Loop End If Call docToDelete.Remove(True) End Sub
This was last published in April 2001

Dig Deeper on Domino Resources - Part 3



Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:




  • iSeries tutorials's tutorials provide in-depth information on the iSeries. Our iSeries tutorials address areas you need to know about...

  • V6R1 upgrade planning checklist

    When upgrading to V6R1, make sure your software will be supported, your programs will function and the correct PTFs have been ...

  • Connecting multiple iSeries systems through DDM

    Working with databases over multiple iSeries systems can be simple when remotely connecting logical partitions with distributed ...