Excel-Berichte

Es ist möglich, Daten aus dem Programm an Excel-Dokumente zu übergeben.

Das Programm ersetzt in der Excel-Datei Platzhalter. Es stehen die selben Platzhalter zur Verfügung wie auch in den “normalen” Formularen. Informationen zu diesen Platzhalten finden sich hier:

Konfiguration

Es sind 2 Dateien nötig um die Übergabe von Daten an ein Excel-Dokument zu ermöglichen:

  1. Eine Excel-Vorlage (.xlt-Datei)
  2. Eine XML-Konfigurationsdatei

In die Excel-Vorlage werden die Platzhalter eingetragen. Darüber hinaus kann diese Vorlage natürlich beliebige Texte, Diagramme, Formeln, Verweise enthalten.

In der XML-Datei stehen die Informationen zur Excel-Vorlage sowie über die Bereiche, in welche Daten eingefügt werden sollen.

Zusätzlich muss die Druck-Konfiguration des Programms ergänzt werden. In die Druck-Konfiguration wird ein Verweis auf die XML-Konfigurationsdatei eingetragen. Das bedeutet, die Übergabe von Daten an Excel erfolgt durch das Auslösen eines Druck-Vorganges (z.B. durch Klicken auf eine Drucken-Schaltfläche). Es wird allerdings dann kein Formular gedruckt, sondern eine neue Excel-Datei aus einer Excel-Vorlage erstellt und die Daten werden durch das Ersetzen von Platzhalten in die neue Excel-Datei eingetragen.

XML-Konfigurations-Datei

In der XML-Konfigurationsdatei wird angegeben, welche Excel-Datei (.xlt-Datei) geladen werden soll. Außerdem wird eingetragen, in welchen Bereichen nach Platzhaltern gesucht werden sollen.

Beispiel:

  <?xml version="1.0" encoding="ISO-8859-1"?>
  
  <report>
      <template>{rep}/Common/Auswertung.xlt</template>
  	
      <range>
          <name>Anlagedaten</name>
          <repeat>false</repeat>
      </range>
  
      <range>
          <name>Betriebsdaten</name>
      </range>
  	
  </report>

Die Bereiche, in welchen Platzhalter gesucht und ersetzt werden sollen, werden in range-Tags angegeben. Im untergeordneten Tag name wird der Name eines benannten Bereiches in der Excel-Datei angegeben. Es ist also notwendig, in der Excel-Datei benannte Bereiche zu definieren (siehe unten).

Excel-Datei

In der Excel-Datei werden die Bereiche, in der Platzhalter ersetzt werden sollen, folgendermaßen definiert:

  1. Zuerst werden die gewünschten Zellen markiert
  2. Mit dem Excel-Menü “Einfügen -> Namen -> Definieren” wird der Dialog zum Definieren von Namen geöffnet
  3. Im Feld “Name in der Arbeitsmappe” wird der gewünschte Name eingetragen, der mit dem Eintrag in einem der name-Tags in der XML-Konfigurationsdatei übereinstimmen muss
  4. Durch Klicken auf die Schaltfläche “Hinzufügen” wird der Bereich erstellt. Mit Klicken auf “OK” kann der Dialog wieder geschlossen werden

XML-Datei

Die Druck-Konfiguration erfolgt grundsätzlich genau so, wie es bei den “normalen” Formularen auch nötig ist. Informationen dazu finden sich hier: /docs/druck-konfiguration.html#konfigurationsdatei

Für die Konfiguration und Zuordnung der Druckvorgänge zu Formularen wird die Datei <Anwendungsname>.PrintSettings.xml verwendet. Sie finden diese Datei im Verzeichnis INSTALLATIONS_VERZEICHNIS/profiles/default/conf/

Ein normaler Eintrag in der Druck-Konfiguration sieht in etwa so aus:

  <object class="BusinessObjects.Order">
      <job name="Angezeigter Name im Druck-Button" >
          <template>
              <filename>
                  [Pfad zur Formulardatei (XML-Dokument)]
              </filename>
          </template>
      </job>
  </object>

Wenn anstelle eines Ausdrucks eine Excel-Datei erstellt werden soll, dann kann so ein Eintrag um einen zusätzlichen job-Bereich ergänzt werden:

  <object class="BusinessObjects.Order">
  
      <job name="Angezeigter Name im Druck-Button" >
          <template>
              <filename>
                  [Pfad zur Formulardatei (XML-Dokument)]
              </filename>
          </template>
      </job>
  
      <job name="Excel-Auswertung">
          <template>
              <type>MsExcel</type>
              <filename>{rep}/Common/Auswertung.xml</filename>
          </template>
      </job>
  
  </object>

Mit dem zusätzlichen type-Tag wird das Programm veranlasst, statt des normalen Druck-Moduls das MS-Excel-Modul zu verwenden.

Im Tag filename wird nun der Pfad zur oben beschriebenen XML-Konfigurationsdatei angeben.