Seite 1 von 49 Inhalt 1. 2. 3. Einführung ............................................................................................................... 2 Listenexplorer .......................................................................................................... 2 Listendesigner ......................................................................................................... 3 3.1. Daten .................................................................................................................. 3 3.2. Report................................................................................................................. 5 4. Die Relation ............................................................................................................. 6 4.1. . Einführung ........................................................................................................ 6 4.2. Relationen unter Tabellen ................................................................................... 6 4.3. Schlüssel ............................................................................................................ 6 4.4. Datenbankaufbau ............................................................................................... 7 5. Datenquellen ........................................................................................................... 9 5.1. Tabellen.............................................................................................................10 5.2. Felder ................................................................................................................11 5.3. Suchen ..............................................................................................................12 5.4. Sortieren ............................................................................................................13 5.5. SQL ...................................................................................................................14 5.6. SQL Befehl ausserhalb des Listenmoduls verwenden .......................................14 5.7. Einfügen von mehreren Datenquellen ................................................................15 5.8. Datenverbindung von mehreren Datenquellen ...................................................16 5.9. Zweite Datenquelle auf Report hinzufügen ........................................................18 6. Der Arbeitsbereich Listengenerator.........................................................................20 6.1. Band Einstellungen ............................................................................................21 6.2. Komponenten ....................................................................................................23 6.3. Eigenschaften ....................................................................................................24 6.4. Wörterbuch ........................................................................................................25 6.5. Liste designen ...................................................................................................27 7. Funktionen ..............................................................................................................30 7.1. Textfeld einfügen ...............................................................................................30 7.2. Textfeld formatieren ...........................................................................................31 7.3. Datenbankfeld einfügen .....................................................................................31 7.4. Verkettung von Datenbankfelder zu einem Feld ................................................32 7.5. Einfügen von Systemvariablen...........................................................................34 7.6. Einfügen von Gruppenfunktionen.......................................................................35 7.7. Einfügen von summierten Felder auf Gruppen...................................................38 7.8. Einfügen von summierten Felder auf Gruppen von Berechneten Werten...........39 7.9. Einfügen von Summen (Zusammenfassungen) .................................................41 8. Checkboxen............................................................................................................44 9. Subreports ..............................................................................................................46 10. Funktionen in Ausdrücken ......................................................................................49 Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 2 von 49 1. Einführung Willkommen beim Listenkurs, ein Dokument, das Ihnen die Möglichkeiten des ListenModuls aufzeigt. Der Kurs beginnt mit den grundsätzlichen Möglichkeiten und endet mit den erweiterten Möglichkeiten wie Subreports, Berechnungen usw. Diese Anleitung hilft also Anfängern und Fortgeschrittenen. 2. Listenexplorer 1 2 3 4 5 neuer Ordner Ordner löschen Neue Liste Liste drucken Vorschau Mit der rechten Maustaste können Sie sich ein PopUp-Menü anzeigen lassen, mit dem verschiedene zusätzliche Funktionen, unter anderem auch der Entwurfsmodus der gewählten Liste, ausgeführt werden können. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 3 von 49 Je nachdem welche Rechte Ihnen der Masteruser gegeben hat, sehen Sie im Listenexplorer oder unter dem Menüpunkt „Diverse Listen“ verschiedene Verzeichnisse. Die Verzeichnisse haben folgende Bedeutung: Abrechnung : Unter diesem Verzeichnis sind alle Abrechnungslisten abgelegt. Es enthält Unterverzeichnisse für die einzelnen Beiträge. Privat : Privates Verzeichnis des Users. In diesem Verzeichnis kann der User, sofern der Menüpunkt. „Listen eigene“ freigegeben wurde, Listen erstellen und mutieren. Diese Listen werden nur diesem User in „Diverse Listen“ zusätzlich zu den Public-Listen angezeigt. Public : Diese Listen können von sämtlichen Usern im Modul Betriebsdaten über den Menüpunkt „Diverse Listen“ ausgedruckt werden. System : In diesem Verzeichnis sind sämtliche Listen abgelegt, die von AGRICOLA direkt angesprochen werden. Dies sind z.B. Auszahlungsbriefe. In diesem Verzeichnis sollten sie nur nach Absprache mit der LABCOM AG Veränderungen vornehmen. 3. Listendesigner Eine Liste besteht immer aus zwei Teilen: Datenquelle: Die Datenquelle ist das Kernstück der Liste. In ihr werden die gewünschten Daten aus der Datenbank abgefragt. Die Tabellen, aus denen Informationen gewonnen werden wollen, werden ausgewählt, miteinander verknüpft und die Felder werden ausgewählt. Ausserdem kann man wählen, welche Felder man als Resultat erhalten will. Die Eingrenzung und die Sortierung werden definiert. Eine Liste kann mehrere untereinander Verknüpfte Datenquellen haben. Listenlayout Im Listenlayout wird das Aussehen der Liste definiert. Dies beinhaltet Datenüberschriften, Titel, Anordnung der Daten usw. 3.1. Daten Der Datenbereich ist oft die Basis für einen guten Bericht. Sie erstellen die Daten sobald Sie einen neuen Bericht erstellen möchten (siehe unten Maske) Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 4 von 49 Die Datenquellen werden beim Erstellen einer neuen Liste definiert. Beim Listennamen wird die Bezeichnung der zu erstellenden Liste gewählt. Der Listenname sollte keine Punkte oder Sonderzeichen beinhalten. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 5 von 49 1 2 3 Reiter löschen Reiternamen Anpassen Querybilder Die Benutzer werden zum grössten Teil mit dem Querybilder arbeiten. Dies bedeutet das nachdem man den Listennamen gewählt hat, auf den Button Querybilder draufklicken kann. 3.2. Report Das Layout des Reports ist in 6 wichtigen Abschnitten unterteilt die für den Benutzer des Designers sehr wichtig sind. Man kann zwischen folgenden Bereichen hin und her Switchen 1 Layout Seite, 2 Vorschau, 3 Datenbänder, 4 Komponenten, 5 Eigenschaften, 6 Wörterbuch und 7 Berichtsbaum,. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 6 von 49 4. Die Relation 4.1. . Einführung AGRICOLA arbeitet mit einer relationalen Datenbank im Hintergrund. In relationalen Datenbanken werden die Daten in gleichartig aufgebauten Datensätzen gespeichert, die wiederum in Tabellen organisiert sind. Zwischen mehreren derartigen Tabellen können Beziehungen bestehen (Relationen). Vergleichen Sie eine relationale Datenbank am besten mit einem Aktenschrank. Die einzelnen Fächer für Kunden und Mitarbeiter entsprechen den Tabellen, die Karteikarten den einzelnen Datensätzen einer Datenbank. 4.2. Relationen unter Tabellen Tabellen sind untereinander verknüpft, eine solche Verknüpfung nennt man eine Relation. Folgendes Beispiel veranschaulicht die Verknüpfung zwischen einzelnen Tabellen. Jedem Betrieb ist genau ein Bewirtschafter zugeordnet (1 : 1 Relation) Jedem Betrieb ist keine, eine oder sind mehrere Flächen zugeordnet (1 : mc Relation) 4.3. Schlüssel Da in jedem relationalen Datenmodell nur die Daten, nicht aber die Beziehungen (Relationen) zwischen diesen Daten abgespeichert werden, sind zusätzliche Massnahmen zur Herstellung der Verknüpfungen zwischen den Tabellen erforderlich. Eine zentrale Rolle spielt dabei der so genannte Schlüssel (Key). Ein Schlüssel erfüllt immer folgende Bedingung: Der Datensatz kann durch den Schlüssel eindeutig identifiziert werden. Der wichtigste Schlüssel in AGRICOLA ist die Betriebs ID. Dieser Schlüssel ist in allen Tabellen zu finden, wo ein Datensatz direkt an einen Betrieb geknüpft ist Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 7 von 49 4.4. Datenbankaufbau Mit dem Button „Datenbankaufbau“ können Sie sich die Datenstruktur von Agricola anzeigen lassen. Wenn Sie mit dem Cursor über den Text über den Verbindungslinien fahren, wird Ihnen das angezeigt über welchen Schlüssel die Tabellen verknüpft sind. Klicken Sie auf dem Symbol bei den Tabellen, öffnet sich das Detailfenster mit den Informationen zu den Tabellen und Tabellenfeldern. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 8 von 49 Falls Sie nicht wissen in welcher Tabelle die gewünschten Informationen gespeichert sind können Sie dies mit Hilfe der F1 Taste im Betriebsgitter die Feldfunktion aktivieren. Fährt man dann mit der Maus über ein Feld, so erschein die Feldbezeichnung sowie auch der Tabellenname wo sich das Feld befindet. Achtung diese Funktion steht leider noch nicht in jeder Maske zur Verfügung. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 9 von 49 5. Datenquellen Als Grundlage für jede Auswertung müssen Sie eine Datenquelle erstellen. Sie definieren, welche Felder aus welchen Tabellen Sie in der Liste anzeigen möchten. Sie geben an, wie die Tabellen verknüpft werden und wie die Daten gefiltert werden sollen. Im Abfrageeditor gibt es 5 verschiedene Reiter: 1 2 3 4 5 Labcom AG Tabellen Hier werden die Tabellen ausgewählt, welche für die Abfrage benutzt werden wollen Felder Es werden die Felder ausgewählt die für einen Report verwendet werden. Natürlich können auch alle Felder einer Tabelle berücksichtigt werden Suchen Hier kann die Suche oder die Einschränkung durchgeführt werden Sortieren Sortierung der Abfrage wird hier bestummen SQL In diesem Register kann der SQL angezeigt werden den man zusammengestellt hat. Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 10 von 49 5.1. Tabellen Im Abschnitt Tabellen wählen Sie die Tabellen aus, die sie für Ihre Liste benötigen. Sie müssen die richtigen Verknüpfungen angeben. Durch Doppelklicken auf eine Tabelle kann sie vom Bereich „Verfügbare Tabellen“ in „gewählte Tabellen“ verschoben werden. Umgekehrt funktioniert dies genauso. Wählen Sie anschliessend die gewünschten Tabellen aus. Tabellen die eine vordefinierte Verknüpfung zu den gewählten Tabellen besitzen, werden fett dargestellt. Mit der Tastenkombination Ctrl + F erscheint wie untenstehend im Bild das Suchfenster. Hier kann man nach einer Tabelle suchen. Im unteren Teil des Bildschirmes sieht Ihr dann welche Tabelle gewählt worden ist. Natürlich können wie auch im alten Listengenerator mehrere Tabellen zusammen verknüpft werden. Fett hinterlegte Tabellen haben die Verknüpfung automatisch hinterlegt. Bei nicht Fett definierten Tabellen kann man in der Spalte Verbindungstyp dies selber definieren. Nach drücken auf Felder können Sie die gewünschten Felder auswählen. Selektieren Sie nur wenn es nötig ist alle Felder, da dies zu einem Geschwindigkeitsverlust führen wird. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 11 von 49 5.2. Felder Im Bereich „Felder“ werden die Felder ausgewählt, die auf der Liste angezeigt werden sollen. Durch Doppelklicken auf eine Tabelle kann sie vom Bereich „Verfügbare Felder“ in „gewählte Felder“ verschoben werden. Umgekehrt funktioniert dies genauso. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 12 von 49 5.3. Suchen Sie können in diesem Bereich Filter definieren. Durch doppelklicken auf ein Feld wird es als Kriterium eingefügt und Sie können den Filter setzen. Geben Sie den richtigen Operator ein und setzen dann den Wert. Durch markieren des Kästchens „Suchdialog“ wird vor dem normalen Druck die Möglichkeit geboten den Wert zu ändern. „Mussfeld“ bewirkt, dass der Filter im Dialog nicht leer sein darf. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 13 von 49 5.4. Sortieren Geben Sie an, nach welchen Kriterien Sie sortieren wollen. Die Sortierfelder werden wiederum durch Doppelklicken an- und abgewählt Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 14 von 49 5.5. SQL In diesem Abschnitt können Sie den Namen der Datenquelle ändern. Ausserdem sehen Sie den SQL-Text, der Anhand von Ihren Angaben generiert wurde. Wen Sie nun auf Schliessen drauf drücken. Dann gelangen Sie in die Ursprungmaske. Jedoch sehen Sie nun auch die des SQL den Sie zusammengestellt haben. 5.6. SQL Befehl ausserhalb des Listenmoduls verwenden Sie können den erstellten SQL-Befehl auch ausserhalb des Listenmoduls benützen. Markieren Sie mit der linken Maustaste den SQL-Text und drücken Sie die Tasten [Ctrl] + [C] (kopieren) Der SQL-Text steht ihnen dann in im Windows Zwischenspeicher in anderen Anwendungen zur Verfügung. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 15 von 49 5.7. Einfügen von mehreren Datenquellen Sollte ein Report gewünscht sein welcher mehrere Datenquellen besitzt oder einen Subreport enthält, so muss man im Datengrid auf das Pluszeichen draufdrücken um eine neue Datenquelle hinzuzufügen. Nachdem man das + Zeichen betätigt erscheint das untere Fenster und man kann die Datenmenge nun benammsen. Nachdem man dies gemacht hat fügt man die Datenquelle wie gehabt mit dem Querybuilder ein und selektiert seine gewünschten Daten Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 16 von 49 5.8. Datenverbindung von mehreren Datenquellen Wen man mehrere Datenquellen in einem Report einfügt, muss dafür auch die Relation oder die Verbindung aufgebaut werden. Dies erstellt man im Listengenerator. Dazu muss man die rechte Seite des Reports beachten und aufs Wörterbuch klicken. Dort sind nun alle Datenquelle die man für den Report eingefügt hat ersichtlich. In unserem Beispiel ist die Hauptdatenquelle „Abfrage“ und die 2te hinzugefügte „Tiere“. Wir müssen nun für die 2te Datenquelle Tiere die Verbindung zur Hauptdatenquelle erstellen. Dafür geht man auf die 2te Datenquelle Tiere hin. Rechte Maustaste und erstellt eine neue Beziehung. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 17 von 49 Nachdem muss man die untenstehenden Werte alle ausfüllen: Name in der Datenquelle: Hier schreibt man immer die Verbindung hin in unserem Beispiel ist es die Verbindung der Tiertabelle zur Abfrage Tabelle. Beim Namen und Alias schreibt man dasselbe hin. Die Übergeordnete Datenquelle ist immer die Haupttabelle. In unserem Fall ist das die Abfrage Tabelle. Die Untergeordnete Datenquelle ist in unserem Beispiel die Tiere Tabelle. Dann muss man nur noch die Felder angeben mit welchen man die Daten miteinander verlinkt. In unserem Beispiel werden die Tabellen über die BID verkettet. Wen man dies durchgeführt hat und auf OK drückt sieht man nun dass für die 2te Datenquelle eine Verlinkung zur Haupttabelle besteht (siehe Printscreen). Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 18 von 49 5.9. Zweite Datenquelle auf Report hinzufügen Damit die 2te Datenquelle auf dem Report nun erscheint und die korrekte zugeordneten Daten angezeigt werden, muss man dafür ein Datenband anlegen (siehe Printscreen). Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 19 von 49 Damit die 2te Datenquelle auch die Richtige Verbindung zur Hauptdatenquelle besitzt, muss man auf der Tiere Datenquelle doppelklicken und die Verbindungen korrekt angeben. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 20 von 49 6. Der Arbeitsbereich Listengenerator Sobald Sie die Daten ausgewählt haben, können Sie mit dem Button Listengenerator des Reports beginnen. Der primäre Zweck eines Berichts ist, die Daten in einer Datenbank als gut lesbare Information darzustellen. Der Arbeitsbereich Listendesigner ist die Umgebung, in der Sie die Berichte erstellen werden. Der Listendesigner ist unter folgenden Punkten Unterteilt die für den Benutzer wichtig sind: 1 2 3 4 5 6 7 Labcom AG Page Hier ist die Arbeitsfläche ersichtlich auf welcher man den Report designt. Vorschau Hier drückt man drauf um zu sehen wie der Report ausschauen wird. Dies tätigt man erst nachdem man den Report designt hat. Datenbänder Unter diesem Menüpunkt können verschiedene Datenbänder ausgewählt werden. Komponenten Unter Komponenten versteht man ein Datenbankfeld, Richtet, Checkbox, Senkrechte und Waagrechte Linien Eigenschaften In den Eigenschaften können div. Einstellungen getätigt werden Wörterbuch Hier ist die Datenquelle mit den ausgewählten Feldern ersichtlich. Es können auch die Daten angezeigt werden die zur Verfügung stehen Berichtsbaum Ansicht aller Elemente die benutzt worden sind für den Report Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 21 von 49 6.1. Band Einstellungen Als erstes bei der Erstellung eines Reports sollte Ihnen die Bedeutung der Arbeitsfläche geläufig sein. Die Arbeitsfläche ist in unterschiedliche Sektionen, genannt Bänder, unterteilt. Ein Band ist im Bandteiler bezeichnet, der gleich unterhalb des Bandes sich befindet. Das erste Band heisst Kopf, das zweite heisst Detailband und das dritte heisst Fussband. Wenn der Bericht generiert wird, werden die Bänder an unterschiedlichen Stellen der Seite gedruckt. Es gibt verschiedene Bändertypen für unterschiedliche Bedürfnisse. 1. Berichtskopf 2. Berichtsfuss 3. Seitenkopf 4. Seitenfuss 5. Gruppenkopf 6. Gruppenfuss 7. Datenkopf 8. Datenfuss 9. Spaltenkopf 10. Spaltenfuss 11. Datenband 12. Tabelle 13. Hierarchisches Band 14. Untergeordnetes Band 15. Leeres Datenband 16. Overlay Labcom AG Kasernenstrasse 5 : : : : : : : : : : : : : : : : 9100 Herisau Wird am Anfang des Berichtes gedruckt Wird am Schluss des Berichtes gedruckt Wird am Anfang von jeder Seite gedruckt Wird am Schluss von jeder Seite gedruckt Wird beim Beginn einer Gruppe gedruckt Wird beim Abschluss einer Gruppe gedruckt Wird vor den Detaildaten gedruckt Wird nach dem letzten Detaildaten gedruckt Wird als Titel vor den Datenspalte gedruckt Wird nach dem letzten Datenspalte gedruckt Wird gedruckt so oft wie es Datensätze hat Daten aus dem SQL in Tabellenform Daten in hierarchischer Form Untergeordnetes Band wird einmal gedruckt Leerbereich wird aufgefüllt Overlay (Hintergrund) Tel.071 / 351 42 22 www.labcom.ch Seite 22 von 49 Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 23 von 49 6.2. Komponenten Unter diesem Menüpunkt können diverse Komponenten ausgewählt werden. Diese sind für den Design der Liste sehr wichtig. Untenstehend sehen Sie die Erklärungen dazu: 1. Text 2. Text in Zellen 3. Richtet 4. Bild 5. Barcode 6. Geom. Formen 7. Panel 8. Clone 9. Kontrollkästchen 10. Unterbericht 11. PLZ 12. Horizontale Linie 13. Vertikale Linie 14. Rechteck 15. Abgerundetes Rechteck 16. Diagramm Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 24 von 49 6.3. Eigenschaften Im Bereich Eigenschaften können div. Einstellungen der Liste sowie der verschiedenen Komponente und Textfelder verändert werden. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 25 von 49 6.4. Wörterbuch Im Bereich Wörterbuch können die Felder die ausgewählt werden angeschaut werden sowie auch die Daten die anhand des SQL’s im Hintergrund zur Verfügung stehen. In den Bereichen Systemvariablen und Funktionen stehen noch div. Formatierungen und Programmierungsbefehle zur Verfügung. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 26 von 49 Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 27 von 49 6.5. Liste designen Untenstehend sehen Sie ein Beispiel wie man die Datenbänder auswählt um eine einfache Liste zu designen. 1. 2. 3. 4. 5. Seitenkopf Gruppenkopf Datenband Gruppenfuss Seitenfuss Wichtig ist es das für das gewühlte Datenband auch immer das dazugehörige Pendent genommen wird. Obwohl man es nicht braucht. Es ist jedoch Sinnvoll, damit Stimulsoft den Abschluss sicher erkennt. Das heisst Wen man einen Gruppenkopf benutz sollte man es auch mit einem Gruppenfuss abschliessen Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 28 von 49 Wie man im untenstehenden Beispiel sieht ist im Seitenkopf der Titel und die Kopfzeile definiert worden. Die Daten welche man ausgeben will sind auf dem Datenband definiert worden und in der Fusszeile ist die Seitenanzahl sowie das Datum definiert worden. Der Gruppenkopf und Gruppenfuss kann man auf ein minimum schrumpfen wen diese nicht gebraucht werden so wie im untenstehenden Beispiel. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 29 von 49 Sollte man mit dem Design der Liste fertig sein. Kann man auf den Vorschaubutton drücken um zu sehen wie die Liste ausschaut. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 30 von 49 7. Funktionen 7.1. Textfeld einfügen Textfelder werden mittels Mausklick auf die TextBox ausgewählt. Danach kann das Textfeld beliebig auf dem Gewünschten Datenband positioniert werden. Damit auch ein Inhalt im Testfeld eingefügt wird muss auf das leere Feld mit der Maus doppelgeklickt werden. Danach geht ein Fenster auf in dem man einen Ausdruck eingeben kann. Hier kann man dann einen freien Text eingeben. Nach der Eingabe kann dies mit OK bestätigt werden und schon ist der Text auf dem Formular sichtbar. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 31 von 49 7.2. Textfeld formatieren Das eingefügte oder gewählte Textfeld kann mit der untenstehend ersichtlichen Formatierungsleiste je nach Wunsch formatiert werden. Diverse Formatierungen wie auch im Word stehen zur Verfügung: Fett, Kursiv, Unterstrichen, Schriftart, Schriftgrösse, Textausrichtung, Textfarbe, Umrandung etc. 7.3. Datenbankfeld einfügen Auf der rechten Seite des Listengenerators besitzt man ein Wörterbuch. Dort sind die Datenquellen ersichtlich welche man im Querybuilder erstellt hat. Wen man da die Leiste aufklappt, sieht man auch die Felder die aus der Datenbank zur Verfügung stehen. Die Felder kann man beliebig mit der Maus und einem gedruckten Klick in das Datenband reinziehen. Achtung Datenbankfelder können nur in eine Liste reingezogen werden, wen auch ein DataBand auf dem Formular vorhanden ist. Sollte kein DataBand auf dem Formular erstellt worden sein ist natürlich noch keine Datenquelle ausgewählt worden. Die Datenquellen befinden sich immer auf dem DataBand. Die Datenbankfelder können aber beliebig dann auch auf anderen Datenbändern positioniert werden. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 32 von 49 Wen man auf die Vorschau drückt sieht man dann wie die Liste ausschaut. 7.4. Verkettung von Datenbankfelder zu einem Feld Es können auch mehrere Datenbankfelder in einem Datenfeld verkettet werden. In unserem Beispiel haben wir die Adresse des Bewirtschafters. Anstelle das wir 3 – 5 einzelne Datenbankfelder auf dem Datenband positionieren, kann man alle diese Felder in einem Feld anhängen. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 33 von 49 Dazu erstellt man zuerst ein Leeres Textfeld auf dem Datenband. Mit einem Doppelklick gelangt man dann in den Ausdruck. Auf der rechten Seite kann man dann die Datenquellen aufklappen. Nun kann man die gewünschten Felder mit der Maus einfach reinziehen und nacheinander mit , oder Abstand trennen (siehe Printscreen). Nachdem man die Felder eingefügt hat und mit OK bestätigt hat kann man auf die Vorschau drücken um zu sehen wie die Liste nun ausschaut. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 34 von 49 7.5. Einfügen von Systemvariablen In den meisten Fällen möchte man auf der Liste die Seitenzahl und/oder das aktuelle Tagesdatum darstellen. Dies kann man mit den Systemvariablen anzeigen lassen. Wichtig ist natürlich auch das dies auch auf dem korrekten Datenband positioniert werden. Meistens wird dafür immer der PageFooterBand gewählt (Seitenfuss). Die Systemvariablen sind auch auf der rechten Seite im Abschnitt Wörterbuch ersichtlich. Wen man die Lasche öffnet sieht man diese. Man kann Sie dann mit einem gedrückten Mausklick in den PageFooterBand reinziehen. Wen man auf die Vorschau drückt sieht man dann wie es ausschaut. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 35 von 49 7.6. Einfügen von Gruppenfunktionen Manchmal besitzt man den Wunsch eine Liste nach bestimmten Datenfelder Gruppiert anzuzeigen. Dabei ist es Wichtig im Datadict die Sortierung auch dementsprechend nach dem gewünschten Feld zu sortieren. Um Daten zu gruppieren ist es zwingend nötig ein Gruppenkopf (GroupHeaderBand) und Gruppenfuss (GroupFooterBand) auf dem leeren Datablatt zu positionieren. In unserem untenstehenden Beispiel Gruppieren wir nach der Gemeindenummer. Mit einem Doppelklick auf dem Gruppenkopf geht dann ein Fenster auf. Dort kann man das Feld wählen nachdem Gruppiert wird. Wen man auf die Vorschau drückt. Sieht man wie dann die Daten nach Gemeinde gruppiert angezeigt werden. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 36 von 49 Sollte man jedoch wünschen dass bei jedem Gruppenwechsel (jedes Mal wenn die Gemeinde wechselt) eine neue Seite beginnt, muss man noch folgendes einstellen. Zuerst auf den Gruppenkopf klicken. Dann auf der rechten Seite des Listendesigners im Abschnitt Eigenschaften, Kategorie 2. Seiten – und Spaltenumbruch. Den Hacken setzen auf „Vor der neuen Seite“ Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 37 von 49 Danach sieht das Ganze in der Vorschau wie folgt aus. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 38 von 49 7.7. Einfügen von summierten Felder auf Gruppen Möchte man eine Liste erstellen, auf welcher Totalzusammenzüge von Feldern pro Gruppen abgebildet werden müssen, dann stellt man die Felder auf den Gruppenfüssen (GroupFooterBand) dar. Dabei zieht man ein leeres Textfeld auf den Gruppenfuss und macht einen Doppelklick drauf. Nun muss man wie folgt vorgehen 1. Mann wechselt auf die Lasche „Gesamt“ 2. Bei der Gesamt-Funktion wählt man die Funktion Sum 3. Bei der Datenbank wählt man die Gruppe aus(in unserem Fall GroupHeaderBand1) 4. Bei der Datenspalte wählt man die Spalte aus auf welche man die Summenbildung pro Gruppe machen will. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 39 von 49 Danach mit OK bestätigen und in der Vorschau sieht man nun das auf dem SAK Total die Totalisierung pro Gruppe besteht. 7.8. Einfügen von summierten Felder auf Gruppen von Berechneten Werten Bei berechneten Werten kann nicht so einfach vorgegangen werden. Wie in unserem Beispiel besteht das LN Total aus einem Berechneten Wert. Der Wert setzt sich zusammen aus: {Abfrage.LN_31 + Abfrage.LN_41 + Abfrage.LN_51 + Abfrage.LN_52 + Abfrage.LN_53 + Abfrage.LN_54} Um diesen Wert pro Gruppe zu Summieren muss wie folgt vorgegangen werden: 1. Auf der Lasche Ausdruck bleiben 2. Den errechneten Wert in eine {Sum(GroupHeaderBand1,…)} verpacken wie im untenstehenden Beispiel. 3. Danach OK klicken Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 40 von 49 Wen man nun auf die Vorschau klickt sieht man dass der Wert LN Total auch pro Gruppe angezeigt wird: Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 41 von 49 7.9. Einfügen von Summen (Zusammenfassungen) Damit Summen für die ganzen Daten eines Reports gebildet werden können, muss ein SummaryBand (Berichtsfuss) eingefügt werden. Es ist wichtig zu wissen dass ein SummaryBand immer nur auf der letzten Seite des Reports ersichtlich ist. Im untenstehenden Abschnitt sieht Ihr wie man in einer Liste den Summary Report einfügt und dementsprechend mit Summwerte bestückt. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 42 von 49 Untenstehend seht Ihr wie man einen Zähler aller Datensätze aus dem Databand (Datenband) darstellt. Dies wird als Total Betriebe angezeigt. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 43 von 49 Untenstehend sieht Ihr eine Summierung des Feldes SAK_Total auf den ganzen Bericht. Wen man dann auf die Vorschau drückt und zur letzten Seite des Berichtes springt, seht Ihr das Ergebnis. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 44 von 49 8. Checkboxen Sollten Checkboxen auf einem Report gewünscht sein, so können diese über die Linke Auswahlliste (Komponenten) ausgewählt werden. Man muss einfach das Kontrollkästchen anklicken und diese auf dem Report einfügen. Damit das Kontrollkästchen einen Ramen rundum besitzt muss es markiert werden und die Ramenfunktion wie man Sie auch in Word kennt anklicken. Damit die Checkbox auch funktioniert muss eine Bedingung eingegeben werden damit geprüft wird ob das Kästchen angehackt werden soll oder nicht. Die Bedingung dafür wird auf der rechten Seite im Abschnitt 1.Prüfung, Unterkategorie Checked eingegeben. Die Bedigung ist im Syntax wie folgt aufgebaut: {IIF(Variable,true, false)} In unserem Beispiel wird die Abfrage wie folgt aufgebaut: {IIF(Abfrage.GESUCH == "J", true, false)} Bedeutet: Ist das Feld Tiere.Gesuch = “J“ dann Feld anhacken sonst nicht anhacken. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 45 von 49 Wen man dann auf die Vorschau drauf klickt sieht man das Resultat wie folgt: Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 46 von 49 9. Subreports Beim Integrieren von Subreports auf Reports sind folgende Punkte wichtig und müssen zuerst erfüllt werden. 1. Der Report muss mehrere Datenquellen besitzen 2. Die Verbindung der verschiedenen Datenquellen muss zugewiessen werden 3. Subreports sind immer nur auf Datenbändern zu positionieren. Untenstehend sieht Ihr ein Beispiel wie bei einem Report mit mehreren Datenquellen ein Subreport erstellt wird und auf das DataBand positioniert wird. Sobald man ein Subreport auf der Hauptseite positioniert erscheint sofort eine 2te Seite wo man dann die Daten des Supreportes definieren kann. Untenstehend seht ihr die 2te Seite wo ersichtlich ist was auf den Subreport angezeigt werden soll. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 47 von 49 Damit das Ganze auch sauber funktioniert müsst Ihr auf das Datenband der Datenquelle Tiere einen doppelklick ausführen. Da erscheint dann ein neues Fenster wo Ihr die Beziehung und die Haupt-Komponente des Subreports angeben müsst. Die HauptKomponente ist natürlich immer das Datenband der ersten Seite und die Beziehung muss auch immer angewählt werden. Wen man nun auf den Vorschaubutton drauf drückt sieht Ihr das Resultat eines Berichtes mit der Anzeige des Subreportes. Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 48 von 49 Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch Seite 49 von 49 10. Funktionen in Ausdrücken Es können auch Funktionen in Ausdrücken verwendet werden. In den untenstehenden Beispielen ist immer der Begriff MyString als eigene Variable gemeint. Die Ausdruckfunktion wird aktiviert sobald man auf eine Variable einen Doppelklick ausführt. {MyString.Trim()} entfernt die Leerzeichen vor und nach dem Begriff {“Test“.ToUpper()} den Begriff Test als Grossbuchstaben = TEST {Math.Round(MyValue, 2)} Betrag auf 2 Kommastellen runden {MyValue.ToString() + “Zeit“} Konvertiere einen nummerischen Wert in einem String und füge noch das Wort Zeit hinzu. {Switch(condition1, value1, condition2, value2,....)} Beispiel : {Switch(Betriebsblatt.SPRACHE == "I",Tiere3.VIEH_TEXT_I, Betriebsblatt.SPRACHE == "D", Tiere3.VIEH_TEXT_D)} {IIF(bool, objekct, objekct)} Beispiel : {IIF(Betriebsblatt.SPRACHE == "I",Tiere3.VIEH_TEXT_I, Tiere3.VIEH_TEXT)} Labcom AG Kasernenstrasse 5 9100 Herisau Tel.071 / 351 42 22 www.labcom.ch