+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

Seitennummer feststellen aus einer LL-Datei

Ich erzeuge in einem Rechnungslauf für ca. 1000 Kunden eine Sammelrechnung die 1 bis N Seiten gross sind und wandel sie in PDF um. Diese Gesamtdatei wird zur Zentralle abgelegt. Zusätzlich möchte ich aber für jeden Kunden eine eigende Rechnungs-PDF erzeugen ohne den Rechnungslauf zu wiederholen sondern die Gesamtdatei-LL verwenden. Wenn jede Rechnung nur 1x Seite lang ist, geht es schon da ich dann jeweils mit Seitennummer die Daten aus der ll-Datei exportiere und in PDF umwandel mit entsprechener Rechnungsnummer. Nun habe ich jedoch das Problem das es auch mehrere Seiten je Kunde geben kann und von Kunde zu Kunde unterschiedlich. Gibt es eine Möglichkeit in der LL-Datei Programmgesteuert die Seitennummer zu ermitteln ? im LL-Viewer kann man ja Suchen aber geht das auch über Aktiv-X-Tools oder andere Methoden.

Mit LL25v kann ich zwar Texte suchen und bekomme die Seitennummer ermittelt, jedoch zu langsam und wenn kein Treffer erscheint eine Usermeldung.
Suche nach Möglichkeit Funktion_suche_Seite_von_bis(Datei,Suchbegriff) Rückgabe ein Bereich oder NULL/""

Könnten Sie mir noch die verwendete List & Label Version und Entwicklungsumgebung nennen.
Vielen Dank.

LL25 ist die Version
VFP9SP2

LL-Datei laden:
thisform.ll25v.language= 0 && CMBTLANG_GERMAN
_LLDatei=“C:\DESIGN\PDF\rechnung_verband_OP001866.ll”
thisform.ll25v.fileURL=_LLDatei
(LL25V = LlViewCrtl von 25)

Seite ermitten:
lcsuchen=“RE:1113”
_antw=thisform.ll25V.searchFirst(lcsuchen,.t.)
_lcseite=TRANSFORM(thisform.ll25V.currentPage))
_vonseite=thisform.ll25V.currentPage
_antw=thisform.ll25V.searchFirst(“RE:1114”,.f.)
_bisseite=thisform.ll25V.currentPage-1

Die Optimierung bei sortierter Liste ist:
Startnummer finden (Seite Start)
Nächste Nummer finden an Position in LL
Die Differenz -1 ist das Ende für ersten Beleg:

Speicherroutine:
thisform.llo25.language=CMBTLANG_GERMAN
_LLDatei=“C:\DESIGN\PDF\rechnung_verband_OP001866.ll”
hStgOrg=thisform.llo25.LlStgsysStorageOpen(_LLDatei, “”, .f.,.t.)

_savePDF=“C:\DESIGN\PDF\RE1113.PDF”
_Parameter=“PDF;PDF.PDFAMode=1;Export.PageIndexRange=”+TRANSFORM(_vonseite)+"-"+transform(_bisseite)
_fnr=thisform.llo25.llstgsysConvert(hStgOrg,_savePDF,_Parameter)
next
_ret=thisform.llo25.LlStgsysStorageClose(hStgOrg)

In Ihrer verwendeten Umgebung gibt es von List & Label keine direkte Lösung, in .NET gibt es einen Event den man hier möglicherweise verwenden könnte, daher hatte ich nach der Entwicklungsumgebung gefragt.

Da Sie ja VFP verwenden gehe ich mal davon aus, daas Sie Ihre eigene Druckschleife verwenden, d.h. Sie haben ja die Informationen vorher in der Druckschleife, diese könnten Sie sich merken, um dann später für das Umwandeln wiederzuverwenden.

© combit GmbH