Skip to main content

XML-Kostenschablone

Eine Schablone ist ein XML-Script, das den Inhalt der Kostentabelle zeilenweise beschreibt. Dabei ist der Inhalt explizit als Text oder implizit als Formel beziehungsweise Parameter definiert. Sie können zwar die Schablone manuell erstellen und editieren, jedoch wird aufgrund der internen Verknüpfungen davon abgeraten und stattdessen empfohlen, den in KorFin® integrierten Editor zu verwenden.

Prinzipieller Aufbau einer Kostenschablone:

CODE
<?xml version="1.0" encoding="iso-8859-1"?>
<asdatafile>
  <table title="Kostenschätzung">
    <definitions>
      <classes/>
      <parameters/>
    </definitions>
    <cellstyles/>
    <columns/>
    <rows/>
    <cells/>
  </table>
</asdatafile>

Der Kopf ist obligatorisch und leitet die Definition der Kostentabelle ein. Sie können mit title die Überschriftszeile definieren. Die Sektionen definitions, cellstyles, columns beziehungsweise rows und cells werden nachfolgend erklärt.

Definitionen (Parameterklassen und Parameter)

Im Definitionsteil legen Sie die in der Kostenschablone verwendbaren Parameter der Tabelle fest. Dazu werden die einzelnen Parameter jeweils genau einer Parameterklasse zugeordnet.

Syntax:

CODE
<definitions>
  <classes>
    <parameterclass type="TSplineCostParametersClass" id="..." name="..."/>
    ...
  </classes>
  <parameters>
    <parameter type="TSplineCostParameterText|TSplineCostParameterFloat" class="id" name="..." info="..." value="..." />
    ...
  </parameters>
</definitions>

Die Parameterklasse enthält folgende Attribute:

Name

Inhalt

Beschreibung

type

Interne Typdeklaration

Zurzeit immer TSplineCostParametersClass.

id

GUID

Identifikation der Parameterklasse.

Es muss sich hierbei um einen "globally unique identifier" in der Form "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}" handeln.

name

Text

Bezeichnungstext der Parameterklasse.

backgroundcolor

Wert

Angezeigte Hintergrundfarbe der Parameterklasse im Parameterbereich.

Jede Definition eines Parameters findet in genau einem XML-Tag "parameter" statt. Sie können folgendermaßen parametrisieren:

Name

Inhalt

Beschreibung

type

Interner Typ

Es existieren folgende Parametertypen:

TSplineCostParameterText

Textparameter, beliebig festlegbar.

TSplineCostParameterFloat

Zahlparameter, beliebig festlegbar.

TSplineCostParameterTextConstraint

Textparameter, dessen Wert sich in Abhängigkeit einer festgelegten Formel ergibt.

TSplineCostParameterFloatConstraint

Zahlparameter, dessen Wert sich in Abhängigkeit einer festgelegten Formel ergibt.

class

GUID

ID der zugeordneten Parameterklasse.

Wird keine oder eine ungültige Parameterklasse verknüpft, ist der Parameter automatisch ein interner Parameter, der zwar in der Schablone verwendet werden kann, jedoch nicht durch den Benutzer einstellbar ist.

name

Bezeichner

Name des Parameters. Der Name muss hierbei in "$"-Zeichen eingeschlossen werden.

Wird der Umschluss mit "$"-Zeichen nicht korrekt angegeben, kann der Parameter nicht verwendet werden.

info

Text

Bezeichnung des Parameters zur Anzeige im Parameterbereich des Kostenmoduls.

value

Text oder Zahl

Vordefinierter Inhalt des Parameters.

formular

Formel

Formelausdruck zur Bestimmung des Inhalts eines bedingten Parameters.

XML: Darstellungseigenschaften der Zellen (Zellstile)

Zellen können ein spezifisches Aussehen erhalten. Die Stile werden wie folgt definiert:

CODE
<cellstyles>
  <style id="..." name="..." justify="left|middle|right" formatstyle="..." fontstyle="..."/>
  ...
</cellstyles>

Mit folgenden Eigenschaften:

Name

Inhalt

Beschreibung

id

Ganzzahl

Eindeutige Nummer des Zellenstils.

name

Text

Bezeichnung des Zellenstils.

justify

Zellenausrichtung

Textausrichtung des Zelleninhalts. Folgende Einstellungsmöglichkeiten bestehen:

left

linksbündig

right

rechtsbündig

middle

mittig

Erfolgt keine Angabe, wird die Textausrichtung standardmäßig auf linksbündig gesetzt.

formatstyle

Zahlenformat

Bei Zellen, die eine Zahl enthalten, können Sie die Anzahl der Nachkommastellen definieren und optional die Verwendung eines Trennzeichens (T) an jeder Tausenderstelle vorgeben

Zu verwendende Syntax: Nachkommastellen[:T]

fontstyle

Schriftformat

Textstil des Zelleninhalts. Folgende Einstellungsmöglichkeiten bestehen:

fett

bold

kursiv

italics

unterstrichen

underline

strikeout

durchgestrichen

Es können auch mehrere Textstile miteinander kombiniert werden: Beispielsyntax fett und kursiv: bold,italics (ohne Leerzeichen!)

XML: Eigenschaften der Spalten und Zeilen

Bevor die Zellen der Kostentabelle "gefüllt" werden können, müssen Spalten und Zeilen angemeldet werden. Spalten und Zeilen besitzen jeweils eigene spezifische Eigenschaften, die festgelegt werden müssen:

CODE
<columns>
  <column id="..." [visible="true|false"] name="..." size="..." [ownstyle="id"] style="id"/>
  ...
</columns>
<rows>
  <row id="..." [active="true|false"] [visible="true|false"] [content="..."] linebefore="..." spacebefore="..." linebehind="..." spacebehind="..." backgroundcolor="..."/>
  ...
</rows>

Pro Tabellenspalte definieren Sie genau einen XML-Tag "column". Für jede Spalte lassen folgende spezifische Eigenschaften festlegen:

Name

Inhalt

Beschreibung

id

Ganzzahl

Eindeutiger Index der Spalte.

visible

Boolean

Angabe, ob die Spalte sichtbar ist oder nicht.

Die Angabe ist optional. Erfolgt keine Angabe, wird die Spalte auf sichtbar gesetzt.

name

Text

Spaltenüberschrift.

size

Ganzzahl

Breite der Spalte in ganzzahligen Prozent.

Die Summe aller Breiten sollte demnach 100 % ergeben.

ownstyle

Ganzzahl

Verweis auf Zellenstil für die Überschrift. Die Nummer wird mit der ID des Zellenstils verbunden.

Wenn keine Angabe erfolgt, wird der Stil automatisch auf „normal“ gesetzt.

style

Ganzzahl

Notwendiger Verweis auf einen Zellenstil. Die Nummer wird mit der ID des Zellenstils verbunden.

Die Reihenfolge der Zeilen in der Kostenschablone ergibt sich aus der Reihenfolge der column-Tags im XML-Quelltext, nicht anhand der ID!

Wie Spalten müssen auch die Zeilen vor dem Befüllen mit Zellen angemeldet werden. Für jede Zeile lassen sich folgende spezifische Eigenschaften festlegen:

Name

Inhalt

Beschreibung

active

Boolean

Angabe, ob die Zeile aktiv ist oder nicht.

Die Angabe ist optional. Erfolgt keine Angabe, wird die Zeile auf aktiv gesetzt.

visible

Boolean

Angabe, ob die Spalte aktiv ist oder nicht.

Die Angabe ist optional. Erfolgt keine Angabe, wird die Zeile auf sichtbar gesetzt.

content

Ganzzahl

Kennzeichnung als Masterzeile (Zeile mit speziellem Inhalt). Folgende Werte können Sie vergeben:

1

Tunnel

2

Brücke

4

Stützwand

8

Lärmschutzwand

16

Einhausung

Wenn die Zeile keinen speziellen Inhalt hat, können Sie das Attribut content im XML-Quelltext weglassen.

spacebefore

Zahl

Abstand [dots] vor der Zeile.

Wenn keine Angabe erfolgt, wird der Wert automatisch auf “0” gesetzt.

spacebehind

Zahl

Abstand [dots] nach der Zeile.

Wenn keine Angabe erfolgt, wird der Wert automatisch auf “0” gesetzt.

linebefore

Zahl

Höhe einer durchgezogenen Linie [dots] vor der Zeile.

Wenn keine Angabe erfolgt, wird der Wert automatisch auf “0” gesetzt.

linebehind

Zahl

Höhe einer durchgezogenen Linie [dots] nach der Zeile.

Wenn keine Angabe erfolgt, wird der Wert automatisch auf “0” gesetzt.

backgroundcolor

Wert

Hintergrundfarbe der Zeile.

Wenn keine Angabe erfolgt, erhält die Zeile einen weißen Hintergrund.

Die Reihenfolge der Zeilen in der Kostenschablone ergibt sich aus der Reihenfolge der row-Tags im XML-Quelltext, nicht anhand der ID!

XML: Zellen

Im Zeilenteil wird die Tabelle zeilenweise definiert. Dazu wird jede Zelle mit der Angabe der Spalte und Zeile lokalisiert.

CODE
<cells>
  <cell type="TSplineCostCellSimple|TSplineCostCellEvalText|TSplineCostCellEvalFloat" col="id" row="id" text="..." [style="id"] [name="..." format="..."]/>
  ...
</cells>

Die Zellen der Liste werden wie folgt parametrisiert:

Name

Inhalt

Beschreibung

type

Interne Typdeklaration

Jede Zelle entspricht genau einem Zellentyp, der die jeweiligen Fähigkeiten der Zelle aktiviert. Es existieren drei Zellentypen:

TSplineCostCellSimple

Einfache Zelle mit konstantem Text.

TSplineCostCellEvalText

Textzelle mit der Fähigkeit, Textparameter zu verwenden.

Andere Zellen können auf den Inhalt dieser Zelle referenzieren (Zellverweis).

TSplineCostCellEvalFloat

Zahlzelle mit der Fähigkeit, Zahlparameter zu verwenden. Zur Bestimmung des Zelleninhalts können Formelausdrücke verwendet werden.

Andere Zellen können auf den Inhalt dieser Zelle referenzieren (Zellverweis).

col

Ganzzahl

Zuordnung der Zelle zu einer Spalte, Positionsangabe über Spaltenindex (id).

row

Ganzzahl

Zuordnung der Zelle zu einer Zeile über Zeilenindex (id)

text

Zellenausdruck

Zelleninhalt als Text oder Formelausdruck.

style

Zellenformat

Verweis auf einen spezifischen Zellenstil.

Die Angabe ist optional. Erfolgt keine Angabe, wird der Zellenstil der Spalte übernommen.

name

Bezeichner

Bezeichner zum Speichern des Ergebnisses des Zellinhalts in einen Verweisparameter. Der Name muss hierbei in "$"-Zeichen eingeschlossen werden.

Die Angabe nur erforderlich, wenn Sie einen Zellverweis erstellen wollen.

Wird der Umschluss mit "$"-Zeichen nicht korrekt angegeben, kann der Parameter nicht verwendet werden.

format

float|text

Format des erstellten Verweisparameters zur Zelle.

Die Angabe ist nur erforderlich, wenn Sie einen Zellverweis erstellen wollen.

Die Reihenfolge der cell-Tags im XML-Quelltext ist irrelevant, die Positionierung der Zelle ergibt sich implizit aus der Positionierung von Zeile und Spalte.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.