Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: yetiman am 16.09.09 - 09:39:56
-
Hallo,
versuche mich gerade an einem DXL Export von Designelementen in einer Datenbank.
Das funktioniert soweit auch sehr gut und einfach.
Würde jetzt gerne herausbekommen, was für eine Art von Element ich gerade eben exportiere (Maske, Ansicht, Agent usw.).
Wie mache ich das am besten? Konnte nichts anständiges finden...
Hier der Code:
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim stream As NotesStream
Dim FileName As String
Dim exporter As NotesDXLExporter
Dim nclNotes As NotesNoteCollection
Dim strNoteID As String
Dim docDesign As NotesDocument
Dim Pos As Integer
Set db = session.CurrentDatabase
Set nclNotes = db.CreateNoteCollection(False)
Call nclNotes.SelectAllNotes(True)
Call nclNotes.SelectAllDataNotes(False)
Call nclNotes.BuildCollection
strNoteID = nclNotes.GetFirstNoteID
While Not strNoteID = ""
Set docDesign = db.GetDocumentByID(strNoteID)
FileName = "C:\Temp\" & docDesign.GetItemValue("$Title")(0) & ".dxl"
Set stream = session.CreateStream
If Not stream.Open(FileName) Then
Msgbox "Cannot Open File"
Exit Sub
Else
Call stream.truncate
Set exporter = session.CreateDXLExporter(docDesign, stream)
exporter.OutputDOCTYPE = False
Call exporter.Process
End If
'Next Note
strNoteID = nclNotes.GetNextNoteId(strNoteID)
Wend
End Sub
Grüsse
Ingo
-
Servus Ingo,
ich glaube Du musst die Objekte gezielt ansprechen, also z. B. bei Forms:
....
Call nclNotes.SelectAllFormatElements(True)
nclNotes.SelectForms = True
Call nclNotes.BuildCollection
...
Damit müßtest Du der Reihe nach alle Objekte bekommen und entsprechen
exportieren können.
Grüße Tim
-
Hi Tim,
danke...guter Typ!
Hab ich mal so umgesetzt...
Funktioniert so weit auch sehr gut.
Allerdings werden jetzt keine Script Libraries (mehr) exportiert.
'SelectScriptLibraries
Call nclNotes.SelectAllNotes( False )
nclNotes.SelectScriptLibraries = True
Call nclNotes.BuildCollection
Call writeDXL("ScriptLibraries", nclNotes)
Eine Idee?
Grüsse
Ingo