Summenfunktion

Top  Previous  Next

Die Summenfunktion erlaubt die Berechnung von Spaltensummen.

Summen werden derzeit für die Datenfeldtypen Datum, Währung oder Zahl unterstützt, beim Datenfeldtyp Datum wird ein Datumsbereich berechnet.

 

Um die Summenfunktion zu nutzen, muss diese in der Tabellendefinition zuerst aktiviert werden:

<main-table sum-function="1">

 

Danach müssen Startwerte ({\var{DEF_SUM}{col}{value}}) festgelegt werden:

a) Entweder im Tabellenkopf im Textfeld:

<table>

   <header>

       <text>{\var{DEF_SUM}{3}{1000}} {\var{DEF_SUM}{2}{2000-01-01}}HEADER</text>

 

b) Oder  bei den Elementen vom Typ <r>, <column-header>, <header>, <footer>, <footer-end> mit dem Attribut init-sum:

<r init-sum="3,100000">

Dabei können mehrere Spalten gleichzeitig initialisiert, die Einträge müssen dann durch ein Semikolon getrennt werden:

<r init-sum="3,100000;4,0">

   

Der erste Wert ist dabei der Datenfeldindex (1-Anzahl Datenfelder), d.h. nicht die Nummer der Anzeigespalte, die auf ein Datenfeld verweist, sondern der reale Index zu den Daten.

Der zweite Wert ist der Startwert, je nach Datentyp eine Zahl oder ein Datumswert.

 

Die Ausgabe der Summe ({\var{SUM}{col}}) kann z.B. in den Elementen <d>, <text>, <header>, <footer> erfolgen :

<table>

   <footer>

       <text>SUMME: {\var{SUM}{3}} DATUMSBEREICH: {\var{SUM}{2}}</text>

 

Oder alternativ auch in den Elementen <ctext>, <dtext> ohne Angabe einer Spaltennummer, in diesem Fall wird der Wert der aktuellen Spalte verwendet:

<table>

<footer>

       <r autospan="1">

           <dtext>{\var{SUM}}</dtext>

           <dtext>{\var{SUM}}</dtext>

           <dtext>{\var{SUM}}</dtext>

       </r>

 

Um die Summe in einem Summen-Datenfeld auszugeben kann auch alternativ ein entsprechendes Datenfeld festgelegt werden (Typ: SUM, das Attribut refpos muss den Index des Datenfeldes beinhalten, aus dem die Summe gebildet werden soll), in diesem Fall muss in dem Summenfeld keine Variable eintragen werden, das Programm trägt die Summe dort automatisch ein.

 

 

Beispiel (ohne Summendatenfeld):

<table>

   <column-header/>

   <header>

       <r><text>{\var{DEF_SUM}{3}{1000}}{\var{DEF_SUM}{2}{2000-01-01}}HEADER</text></r>

   </header>

   <footer>

       <r><text>SUMME: {\var{SUM}{3}} DATUMSBEREICH: {\var{SUM}{2}}</text></r>

   </footer>

   <r>

       <d>Zeile 1</d>

       <d>2000-01-01</d>

       <d>5727.4</d>

       <d>{\var{SUM}{3}}</d>

   </r>

   <r>

       <d>Zeile 2</d>

       <d>2000-01-02</d>

       <d>553.211</d>

       <d>{\var{SUM}{3}}</d>

   </r>

   <r>

       <d>Zeile 3</d>

       <d>2000-01-03</d>

       <d>9333.91</d>

       <d>{\var{SUM}{3}}</d>

   </r>

   <r>

       <d>Zeile 4</d>

       <d>2000-01-04</d>

       <d>8396.83</d>

       <d>{\var{SUM}{3}}</d>

   </r>

<footer-end/>

</table>