Hallo,
ich verzweifle langsam. Ich möchte eine ganz simple Liste [1] drucken.
Oben soll ein Name stehen und unten drunter sollen einfach nur Zeilen
mit Zeilen-Indizes stehen. Das ganze soll über mehrere Seiten laufen.
Ich habe eigentlich alles genau so gemacht, wie im Kapitel
“2.6.6. Listendruck”
der Programmierer-Referenz beschrieben worden ist. Mein Programm druckt
aber a) nicht alle Zahlen in aufsteigender Reihenfolge, sondern immer
nur die höchste Zahl. Und b) nicht mehrere Seiten, sondern immer nur die
erste Seite und alle weiteren Seiten sind leer.
Was mache ich falsch?
Anbei mal meine Druck-Routine.
MfG
Susann
BEGIN
Private Sub Drucken()
Dim Dummy
Dim sFile: sFile = puPfad + "MyList.lst"
Dim I As Integer: I = 0
Dim DruckAnzahlZeilen As Integer: DruckAnzahlZeilen = 99
'Variablen und Felder mit Dummy-Daten für Syntax Check definieren
'Definiere alle im Ausdruck verwendeten Variablen
MyList.LlDefineVariableStart
Dummy = MyList.LlDefineVariableExt("Name", "Normalverbraucher",
LL_TEXT)
Dummy = MyList.LlDefineVariableExt(“Vorname”, “Otto”, LL_TEXT)
'Definiere alle im Ausdruck verwendeten Felder
MyList.LlDefineFieldStart
Dummy = MyList.LlDefineFieldExt("Nr", CStr(1), LL_TEXT)
'Druck starten
Dummy = MyList.LlPrintWithBoxStart(LL_PROJECT_LIST, sFile,
LL_PRINT_PREVIEW, LL_BOXTYPE_NORMALWAIT, hWnd, “Printing”)
'Dialog für Drucker-Einstellungen anzeigen
Dummy = MyList.LlPrintOptionsDialog(hWnd, “Bitte einen Drucker
auswählen …”)
'Fülle alle im Ausdruck verwendeten Variablen mit Werten
MyList.LlDefineVariableStart
Dummy = MyList.LlDefineVariableExt("Name", "Normalverbraucher",
LL_TEXT)
Dummy = MyList.LlDefineVariableExt(“Vorname”, “Otto”, LL_TEXT)
'Variablen drucken, auf Seitenumbruch achten
While MyList.LlPrint = LL_WRN_REPEAT_DATA
Wend
'Solange das Ende der Posten-Tabelle nicht erreicht ist...
While Not I > DruckAnzahlZeilen
'Prozentbalken setzen
Dummy = MyList.LlPrintSetBoxText("Printing invoice", I * 100 /
DruckAnzahlZeilen)
'Felder mit "Echtdaten" aus aktuellem Posten-Datensatz füllen
MyList.LlDefineFieldStart
Dummy = MyList.LlDefineFieldExt("Nr", CStr(I), LL_TEXT)
'Felder drucken, und wenn Seitenumbruch erfolgt ist,
'Variablen/Felder erneut drucken
While MyList.LlPrintFields = LL_WRN_REPEAT_DATA
MyList.LlPrint
Wend
I = I + 1
Wend
'Drucke Fußzeilen
While MyList.LlPrintFieldsEnd = LL_WRN_REPEAT_DATA
Wend
'Druck beenden
MyList.LlPrintEnd (0)
'Beim Preview-Druck Preview anzeigen und dann Preview-Datei (.LL)
löschen
Dummy = MyList.LlPreviewDisplay(sFile, “”, hWnd)
Dummy = MyList.LlPreviewDeleteFiles(sFile, “”)
End Sub