dok:berichte

Berichtkonfigurationen

Das Drucken unter Windows ist in typischen Desktopanwendungen so konzipiert, dass der Benutzer die Druckfunktion auslöst worauf ein Druckerdialog erscheint in welchem der Drucker ausgewählt wird und weitere Ausgabeparameter wie Seitengrösse, Orientierung, Druckqualität etc eingestellt werden können. BPS verwendet diesen Standardablauf jeweils in den Programmen welche für den Einsatz auf typischen Desktop oder Laptop PC's gedacht sind.

Dieser Ablauf ist jedoch weniger geeignet für mobile Programme der Kommissionierung, des Wareneingangs oder der Lagerorganisation die z.B. auf Touchscreen Terminals oder Handhelds ausgeführt werden. Das Drucken aus Voice-, MDE- oder Batch-Programmen ist mit dem normalen Druckablauf sogar unmöglich da keine Windows GUI Umgebung respektive keine Bedienung für einen Druckdialog vorhanden ist.

BPS löst dieses Problem so, dass Berichte mit Druckerzuordnung und allen benötigten Einstellungen in der Anwendung «Berichtkonfiguration» vorkonfiguriert werden. Jeder solche Berichtkonfiguration hat zudem einen bestimmten generellen Typ sowie die zulässigen Zonen zugeordnet. So sind die für eine bestimmte Anwendung und einen bestimmten Arbeitsbereich in Frage kommenden Berichtkonfigurationen eingegrenzt und können in einer übersichtlichen Liste zur Auswahl gestellt werden.

Der Ausdruck dieser Berichte erfolgt entweder über einen Berichtspooler, oder bei Touchscreen Terminals unter Windows wahlweise auch direkt.

Für den Ausdruck via Berichtspooler stellen die Anwendungen einen Auftrag in eine Warteschlange (die Datenbank-Tabelle t_reportqueue). Die Aufträge in dieser Warteschlange bestehen im Kern aus der Angabe einer Berichtkonfiguration sowie den Selektionsparametern für die Datenabfrage von der Datenbank, oder in speziellen Fällen durch die Rohdaten selbst. Der Berichtspooler auf einem zentralen PC oder Server arbeitet diese Warteschlange ab und generiert aus den Parametern die fertigen Berichte, rendert diese für den Zieldrucker und sendet die generierten Druckaufträge an den entsprechenden Windows Drucker. Ein grosser Vorteil dieses Konzepts ist, dass die Windows Druckertreiber nur auf dem PC oder Server zu installieren sind auf dem der Berichtspooler läuft, und nicht auf jedem einzelnen Terminal.

Beim direkten Druck erfolgt die Aufbereitung des Druckauftrags in der Applikation und die Ausgabe erfolgt auf einem Drucker der im Windows des Touchscreen Terminals eingerichtet sein muss. Vorteil des direkten Drucks ist ein schnellerer Start des Ausdrucks da ein die Auftragsübergabe via Warteschlange entfällt. Falls keine MDE-, Voice- oder Batch-Anwendungen im Einsatz sind kann so auch komplett auf den Reportspooler verzichtet werden. Nachteilig ist dass die Drucker im Windows jedes Clients eingerichtet sein müssen.

Die Druckereinstellungen werden durch Ausführung eines Konfigurationsdrucks eingestellt und in den BPS Einstellungen abgespeichert. Beim Berichtspooler muss das nur auf dem PC gemacht werden auf dem der Berichtspooler läuft. Beim direkten Druck muss das auf jedem Fat-Client einzeln erfolgen, für Thin-Clients auf den entsprechenden Terminal-Servern.

Mit der App Verwaltung - Berichtkonfiguration werden die Konfigurationen für den Berichtspooler erstellt und den verschiedenen Zonen zugeordnet:


Der Schlüssel jeder Konfiguration wird automatisch vergeben und hier lediglich als Hilfsinformation angezeigt. Er erlaubt die Identifikation der Druckereinstellungen die in den BPS Einstellungen unter Local Installation Settings / Report Configurations abgespeichert werden. Damit die Druckereinstellungen dort generiert werden ist es erforderlich bei jeder Berichtkonfiguration einmal einen Konfigurationsdruck durchzuführen:


Über den Schlüssel finden Sie ggf. auch die mittels des Konfigurationsdrucks gespeicherten Einstellungen:


Die ID wird zusammen mit dem Namen in den Programmen zur Identifikation angezeigt:


Die ID kann alfanumerisch oder numerisch sein und dient auch dazu die Liste in der Anwendung zu sortieren. Praktischerweise schreibt man die verschiedenen Drucker im Betrieb mit dieser ID an um den Benutzern die Auswahl zu vereinfachen.

Bei gewissen Voice Anwendungen wird der Drucker durch sprechen der Drucker-Nummer ausgewählt; in diesen Zonen ist es natürlich erforderlich ausschliesslich numerische ID's zu verwenden.

Bei Typ wird die Verwendung der Konfiguration festgelegt. Der Typ wird durch die Anwendung als zusätzliches Filterkriterium verwendet. Im Drucker-Auswahlbild der Kommissionierung im vorangehenden Abschnitt werden beispielsweise ausschliesslich Berichtkonfigurationen für die Zone «Allgemein» und vom Typ «LU Etikette» aufgelistet.

Bei Bericht wird der gewünschte Bericht eingestellt.

Bei Titel kann ein Titel eingegeben werden welcher im Bericht verwendet werden kann. Verwenden Ihre Berichte den Titel nicht, so können Sie das Feld natürlich auch für allgemeine Kommentare verwenden.

Der Berichtspooler ist in zwei Ausprägungen vorhanden. Einerseits als App innerhalb des BPS Arbeitsplatzes, und anderseits als Standalone-Programm reportspooler.exe.

Die App innerhalb des Arbeitsplatzes ist eher für Tests oder sehr kleine Installationen sinnvoll, z.B. wenn der Spooler ausschliesslich für eine Abteilung erforderlich ist. Der Abteilungsleiter kann dann z.B. den Bericht-Spooler auf seinem Arbeitsplatz-PC ausführen statt dass ein separater PC für diese Aufgabe eingerichtet wird.

Die App eignet sich auch z.B. für Administratoren die die Warteschlange inspizieren wollen ohne auf den Spooler-PC zuzugreifen. Allerdings darf dann die Ausführung nicht im Arbeitsplatz-Modul aktiviert werden, wenn 2 verschiedene PC die Warteschlange gleichzeitig bearbeiten führt das zu Konflikten.

Bei Start des Standalone-Programms ist die Anmeldung erforderlich. Analog des Arbeitsplatzes kann die Anmeldung auch bei diesem Programm automatisiert werden.


Durch Setzen des Hakens bei «Ausführen im Intervall» wird die Abarbeitung der Warteschlange gestartet. Der Status des Hakens bleibt gespeichert, im Zusammenspiel mit der automatischen Anmeldung kann der Bericht-Spooler also automatisiert angemeldet und auch gestartet werden.

«Intervall» definiert die Periode in der die Warteschlange abgefragt wird. Für maximale Geschwindigkeit kann diese bis auf eine Sekunde reduziert werden, entsprechend häuffiger erfolgt dann natürlich die Abfrage beim Datenbankserver.

Um fehlgeschlagene Aufträge neu freizugeben oder zu löschen muss die Ausführung durch Entfernen des Hakens bei «Ausführen im Intervall» unterbrochen werden. Danach können die entsprechenden Funktionen verwendet werden, und anschliessend kann die Ausführung durch Setzen des Hakens wieder fortgesetzt werden.

Der Berichtspooler muss in einer GUI Umgebung auf dem Windows Desktop ausgeführt werden, da die für die Aufbereitung des Berichts verwendeten Funktionen des Qt Frameworks auf dieser Umgebung basieren.

  • dok/berichte.txt
  • Zuletzt geändert: 29.03.2021 14:17
  • von ibk