29.11.2012 Aufrufe

combit List & Label - Programmierer-Referenz - combit GmbH

combit List & Label - Programmierer-Referenz - combit GmbH

combit List & Label - Programmierer-Referenz - combit GmbH

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Ansteuerung des Berichtscontainer-Objekts<br />

4. Ansteuerung des Berichtscontainer-Objekts<br />

<strong>List</strong> & <strong>Label</strong> bietet Ihnen komfortable Möglichkeiten, Druckprojekte mit mehreren Datenbanktabellen<br />

(hierarchische Reports) zu gestalten. Dies stellt die für den Anwender komfortabelste<br />

Art dar, mit mehreren Tabellen, Kreuztabellen und Charts zu arbeiten. Grundsätzlich<br />

verwenden Sie für solche Projekte den Projekttypen LL_PROJECT_LIST.<br />

Im folgenden wird "Tabelle" als Synonym für eine Gruppe zusammengehöriger Felder<br />

im <strong>List</strong> & <strong>Label</strong>-Designer bzw. im Berichtsstruktur-Toolfenster verwendet. Sie sind hierbei<br />

nicht an "echte" Datenbanken gebunden, auch Klassenarrays oder dynamisch erzeugte<br />

Daten können eine "Tabelle" darstellen, z.B. alle Member-Variablen einer Klasse.<br />

Beachten Sie, dass Sie im <strong>List</strong> & <strong>Label</strong> Designer dennoch nur mit einem einzigen Berichtscontainer-Objekt<br />

arbeiten. Dieses kann aber mehrere Unterobjekte wie Tabellen,<br />

Kreuztabellen und Charts enthalten.<br />

Bei der Ausgabe im Druck sind sie ebenfalls nicht an die Tabellenausgabe gebunden –<br />

mit dem gleichen Code werden auch Kreuztabellen sowie Chartobjekte (auch in Tabellenspalten)<br />

gefüllt.<br />

Sobald Sie einzelne Tabellen über LlDbAddTable() hinzugefügt haben, können Ihre Anwender<br />

im Designer mit einem neuen Toolfenster arbeiten – dem Berichtsstruktur-<br />

Fenster. Weitere Hinweise zum Design finden Sie im entsprechenden Kapitel des Designerhandbuchs.<br />

Dieses Kapitel konzentriert sich auf die Fragen der Ansteuerung solcher<br />

Reports.<br />

Die .NET- und VCL-Komponenten bieten Ihnen eine komfortable Datenbankanbindung –<br />

wenn Sie Ihre Daten in einem DataSet mit DataRelations (.NET) bzw. einem DataSet<br />

(VCL) darstellen können, brauchen Sie sich in der Regel nicht um die Ansteuerung zu<br />

kümmern – in diesem Falle können Sie die folgenden Abschnitte überspringen.<br />

Für viele andere Programmiersprachen sind Beispiele für die Ansteuerung von <strong>List</strong> &<br />

<strong>Label</strong> bei Verwendung mehrerer Tabellen im Lieferumfang enthalten.<br />

4.1. Benötigte API-Funktionen<br />

Die API-Funktionen, die Sie für die Ansteuerung dieser Funktionalität benötigen beginnen<br />

einheitlich mit LlDb... bzw. LlPrintDb... Sie können Tabellen hinzufügen (LlDbAdd-<br />

Table()), Sortierungen innerhalb der Tabellen zur Verfügung stellen (LlDbAddTableSortOrder())<br />

und Beziehungen zwischen Tabellen definieren (LlDbAddTableRelation()).<br />

Zur Druckzeit können Sie dann die derzeit aktive Tabelle abfragen (LlPrintDbGetCurrent-<br />

Table()) sowie analog die gerade aktive Beziehung und Sortierung erhalten (LlPrintDb-<br />

GetCurrentTableSortOrder(), LlPrintDbGetCurrentTableRelation()). Ausführliche Beispiele<br />

für die Verwendung dieser Funktionen finden Sie im Laufe dieses Kapitels.<br />

56

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!