Domino 9 und frühere Versionen > ND6: Entwicklung

Added to this database

<< < (2/2)

Gandhi:
Nun - alles nur Nullen und Einsen...
Nachdem ich mich stundenlang in den Tiefen der Undokumentation der C-Api erfolglos frustriert habe, bin ich dann doch zu einem DXL Versuch übergegangen, der erfolgreich war.
Anbei das Script - falls jemand mal ein ähnliches Problem hat - oder es verbessern möchte (ich möchte anmerken, dass ich mir vollkommen bewusst bin, dass elegant etwas anderes ist - und absolut gewillt etwas über das Parsen in XML zu lernen).

--- Code: ---
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Dim dc As notesdocumentcollection
Set dc=db.unprocesseddocuments

Dim exporter As NotesDXLExporter
Set exporter = session.CreateDXLExporter
Dim i As Integer
Dim dxl As String
Dim doc As notesdocument
Dim added As String
On Error Goto nextloop
For i=1 To dc.Count
Print Str(i) & " von " & Str(dc.Count)
Set doc=dc.GetNthDocument(i)
dxl=exporter.Export(doc)
added=getAdded(dxl)
doc.addedToThisFile=added
Call doc.Save(True, False, True)
nl:
Next
Stop
Exit Sub

nextloop:
Resume nl
End Sub

Function getadded(dxl As String) As String

Dim step1 As String
Dim step2 As String
Const END1=|</addedtofile>|
Const END2=|</datetime>|
Const START1=|<addedtofile>|
Const START2=|<datetime>|
Const START3=|<datetime dst='true'>|

step1=Strright(Strleft(dxl,END1),START1)
step2=Strright(Strleft(step1,END2),START2)

If step2="" Then
step2=Strright(Strleft(step1,END2),START3)
End If
Dim yearstring As String
Dim monthstring As String
Dim daystring As String
yearstring=Left(step2,4)
monthstring=Right(Left(step2,6),2)
daystring=Right(Left(step2,8),2)
getadded=daystring & "." & monthstring & "." & yearstring
End Function



--- Ende Code ---

Ach ja, das ist ein Agent.

Tode:
danke für den Code, der kommt gleich in meine "interne KB". Erst letze Woche hätte ich genau das gebrauchen können.
Ob der jetzt "schön" ist oder nicht: er erfüllt mit relativ wenigen Zeilen code einen Zweck, der sonst nicht so einfach gewesen wäre....

Danke nochmal.

Tode

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln