Nun zu meinem Anliegen.
Wir sind aktuell dabei den Berichtscontainer zu aktivieren.
Damals haben wir den Umstieg von LL10 auf LL13 gemacht, ohne die neuen Funktionen komplett zu aktivieren(Zeitliche Gründe).
Jetzt benötigen wir aufgrund einer Anforderung den Berichtscontainer.
hierfür habe ich mit LlDbAddTable alle Tabellen(inklusive LlStaticTable) im Designer und in unserer Drucksteuerung bekannt gemacht.
Das sollte soweit auch passen.
Mein Problem ist das wenn ich einen freien Inhalt definiere oder eine Kopfzeile, diese IMMER 12 mal ausgegeben wird.
Mir ist schleierhaft warum genau 12 mal.
Hat jemand schon mal ein ähnliches Phänomen?
Bzw. einen Ansatz woran dies liegen kann?
Wie behandelst Du denn LLStaticTable in der Druckschleife dann später?
Siehe Docu:
[quote]Wenn Sie die “LLStaticTable”-Tabelle für statische Inhalte angemeldet haben und
LlPrintDbGetCurrentTable() diese Tabelle als aktuelle Tabelle liefert, muss Ihre Druck-
schleife darauf mit dem Druck einer einzelnen Datenzeile über LlPrintFields() reagie-
ren. Im Beispiel oben könnten Sie für den Fall von “LLStaticTable” einfach ein
DataTable-Objekt mit nur einem beliebigen Datensatz erzeugen, dann läuft der Druck
automatisch korrekt. [/quote]
Unser Programm macht ertmal alle Variablen bekannt und übermittelt diese an LL.
Anschließend geht es an die Felder(Postendaten).
Da wir hier in den Posten einen Gruppenwechsel haben können(mehrere Posten auf einer Seite = Gruppenechsel), haben wir hier folgende ABfragen:
Gruppenwechsel ->wenn ja dann prüf ob Infos noch auf die Seite passen
1.1. wenn nein Dann geb die bisher “geposteten Daten” mit
While frmDummy.llReport.LlPrintFields = LL_WRN_REPEAT_DATA
lngReturn = frmDummy.llReport.LlPrint
Wend
1.2. wenn ja dann ermittle weiter Daten bis di Bedingung oben eintrifft(LL_WRN_REPEAT_DATA).
Sollten die ermittelten Date keine LlPrint verusachen(also die AUsgabe nicht gestartet werden, da die Seite noch nich voll war), kommt zum Schluss noch folgendes:
Do
lngReturn = frmDummy.llReport.LlPrintFieldsEnd()
Loop Until lngReturn <> LL_WRN_REPEAT_DATA
Also er soll einfach alles ausgeben was bisher zwischengeladen wurde.
Da ich mir noch nicht so ganz im klaren bin, wie ich auf den “freien Inhalt” zu reagieren habe, habe ich amEnde einfach mal aus LL_WRN_REPEAT_DATE den LL_WRN_TABLECHANGE angewendet.
Des weiteren noch versuch mit LlPrintDbGetCurrentTable(psTableId, 1) die aktuelle Tabelle anzusprechen.
Diese wird auch richtig zurück gegeben.
Die Frage ist nur, was ich jetzt damit anfangen kann bzw. muss.
Problem hat sich gelöst!
Shit in <-> Shit out sag ich da nur.
Es gab in den Vorlagen ein Seitenumbruchkennzeichen(die Bedingung war außerhalb meiner Vorstellungskraft, wie diese gestellt wurde… aber sie war hatl da) was zu der X-fachen Ausgabe der Daten geführt hat.