Also okay hab es jetzt wieder ein bisschen umgebaut...
Sub Initialize
Dim session As NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim view As NotesView
Dim oh_document As NotesDocument
Dim temp As NotesDocument
Dim bis_date As Variant
Dim von_date As Variant
Set session = New NotesSession
Set db = session.CurrentDatabase
Set view = db.GetView("NextAuslieferung")
Set oh_document = view.GetFirstDocument
Call db.EnableFolder(ausliefer)
von_date = Inputbox("Letze Version vom?", "Letzte Version", "31.05.2001")
bis_date = Inputbox("Datum der Version die ausgeliefert wird?", "Auslieferungsdatum","03.07.2001")
Do While Not (doc Is Nothing)
Set temp = view.GetNextDocument(oh_document)
If (((oh_document.voiAuslieferungCall(0) = "Ja" Or oh_document.voiAuslieferungCall(0) = "1") Or _
Not(Isempty(voiInbetriebKunde)))And Datevalue(von_date)<= oh_document.voiAbgeschlossen(0) And _
oh_document.voiAbgeschlossen(0) <= Datevalue(bis_date)) Then
Call oh_document.PutInFolder(ausliefer)
End If
Set oh_document = temp
Loop
End Sub
kann ich irgendwie jetzt den ganzen Folder drucken oder muss ich mit einer Schleife durch die einzelnen Dokumente durch?? Wenn zweiteres werden die dann trotzdem aneinandergehängt?
Wir reden über diesen Teil vom Code oder?
Set oh_document = view.GetFirstDocument
Call uidb.OpenView("ausliefer")
Set uiview = ws.currentview
While Not oh_document Is Nothing
Call uiview.SelectDocument(oh_document)
Call uiview.print(1)
Set oh_document = view.GetnextDocument(oh_document)
Wend
und du willst dass ich jetzt in das Argument von uiview.SelectDocument(...) eine Schleife baue die durch die View durchläuft und alle Dokumente einliest die in dem Folder sind (also auch in der UIView). Ich suche aber doch gar nicht die Dokumente aus meiner View sondern will die Dokumente die nun in den Folder aussortiert worden sind. Und genau danach frag ich. Wie mach ich das am dümmsten?
also ich hab jetzt eine Lösung die funktioniert nur falls es jemanden interessiert
Sub Initialize
Dim session As NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim view As NotesView
Dim vw As NotesView
Dim ws As New NotesUIWorkspace
Dim oh_document As NotesDocument
Dim temp As NotesDocument
Dim bis_date As Variant
Dim von_date As Variant
Dim uiview As NotesUiView
Dim uidb As NotesUIDatabase
Set session = New NotesSession
Set db = session.CurrentDatabase
Set view = db.getview("NextAuslieferung")
Set uidb = ws.currentdatabase
Set oh_document = view.GetFirstDocument
von_date = Inputbox("Letze Version vom?", "Letzte Version", "31.05.2001")
bis_date = Inputbox("Datum der Version die ausgeliefert wird?", "Auslieferungsdatum","03.07.2001")
Call uidb.OpenView("ausliefer")
Set uiview = ws.currentview
Set vw = db.getview("ausliefer")
Do While Not (oh_document Is Nothing)
Set temp = view.GetNextDocument(oh_document)
If (((oh_document.voiAuslieferungCall(0) = "Ja" Or oh_document.voiAuslieferungCall(0) = "1") Or _
Not(Isempty(voiInbetriebKunde)))And Datevalue(von_date)<= oh_document.voiAbgeschlossen(0) And _
oh_document.voiAbgeschlossen(0) <= Datevalue(bis_date)) Then
Call oh_document.PutInFolder("ausliefer")
Call uiview.SelectDocument(oh_document)
Call uiview.print(1)
End If
Set oh_document = temp
Loop
Set oh_document = view.GetFirstDocument
While Not oh_document Is Nothing
Call oh_document.removefromfolder("ausliefer")
Set oh_document = view.GetnextDocument(oh_document)
Wend
End Sub
Jetzt hab ich aber noch eine Frage (mir kommen die Ideen immer erst wenn ich eigentlich fertig bin). Ist es möglich die Werte von dem Dokument in einer anderen Maske die anders angeordnet ist als die erste auszudrucken?