VIEW MEMBER FEEDACK TO THIS TIP
When you run the LotusScript code below, it will ask you which folders you want to move from a current Notes/Domino database and to which database you want them moved.
Sub Initialize
Dim s As New NotesSession
Dim w As New NotesUIWorkspace
Dim dbSource As NotesDatabase, dbDest As NotesDatabase
Dim source As NotesView, dest As NotesView
Dim vc As NotesViewEntryCollection
Dim docDest As NotesDocument
Dim ve As NotesViewEntry
Dim folders() As String
Dim i As Integer
Dim ret, rez
Set dbSource = s.CurrentDatabase
Forall v In dbSource.Views
If v.IsFolder Then
i = i + 1
Redim Preserve folders( i - 1 ) As String
folders( i - 1 ) = v.Name
End If
End Forall
ret = w.Prompt( PROMPT_OKCANCELLISTMULT, "Folder selection",
"Select one or more folders to move.", folders(0), folders )
If Isempty( ret ) Then
Messagebox "User canceled", , "Folder not selected"
Exit Sub
Else
Forall f In ret
Set source = dbSource.GetView( f )
Set vc = source.AllEntries
rez = w.Prompt( 13, "Database selection",
"Choose the database to move the folder to" )
If Isempty( rez ) Then Messagebox "User canceled", ,
"Database not selected" : Exit Sub
Set dbDest = s.GetDatabase( rez(0), rez(1), False )
Call dbDest.EnableFolder( f )
Set ve = vc.GetFirstEntry
Do Until ve Is Nothing
Set docDest = ve.Document.CopyToDatabase( dbDest )
Call docDest.PutInFolder( f )
Set ve = vc.GetNextEntry( ve )
Loop
Call vc.RemoveAllFromFolder( f )
Call source.Remove
End Forall
End If
End Sub
MEMBER FEEDBACK TO THIS TIP
Here's a quick add-on that will allow you to copy the design of the folder as well.
Sub Initialize
...<snip> ...
'Code added
Dim col As NotesViewColumn
... <snip> ...
Set dbDest = s.GetDatabase
( rez(0), rez(1), False )
Call dbDest.EnableFolder( f )
'Code added
Set dest = dbDest.GetView( f )
'Copy the columns from the
source to the destination folder
While dest.ColumnCount > 0
Call dest.RemoveColumn(dest.ColumnCount)
Wend
For i = 0 To source.ColumnCount-1
Set col = dest.CopyColumn(source.Columns(i), i+1)
Next
'Code added
... <snip> ...
End Sub
Raimund G.
Do you have comments on this tip? Let us know.
This tip was submitted to the SearchDomino.com tip library by member Marko Bonaci. Please let others know how useful it is via the rating scale below. Do you have a useful Lotus Notes, Domino, Workplace or WebSphere tip or code snippet to share? Submit it to our monthly tip contest and you could win a prize.