Table of Contents

FillTemplateText

Informationen

  • Kategorien: Kernel | Klassenformeln
  • Version: 12.1.0.1636
  • Veröffentlichungsdatum: Donnerstag, 25. März 2010
  • Entwickler: Schulze
  • Benötigt Datenbankänderung: Nein
  • Betreff: FillTemplateText

Beschreibung

Die Funktion nimmt einen Text mit Attribut-Platzhaltern und ein Entity entgegen und füllt diesen Platzhaltertext mit den entsprechenden Werten des Entities und gibt diesen Text zurück.

Parameter: «sTemplateText» ein Formatstring mit der Syntax "...beliebiger Text... «AttributName1» ...beliebiger Text... «AttributName2» ..."

«sPlaceholderStartString» und «sPlaceholderEndString» (optional) Überschreibung der vordefinierten Platzhalterzeichen "«" und "»"

«nFormatOperation» (optional) legt die Formatierung der Ausgabewerte fest, muss einer der folgenden numerischen Werte sein: ValueToDisplayString = 0 (default) ValueToString = 1

«nTextType» (optional) legt den Typ des übergebenen Templatetextes fest, muss einer der folgenden numerischen Werte sein: eUnknown = 0 (default) ePlainText = 1 eRtf = 2

«sErrorValueString» (optional) Hiermit kann der Default-String "???" bei fehlerhaften Attributnamen überschrieben werden

Hinweise:

  • als Attributnamen können auch Entitylisten angegeben werden

  • Entitylisten können verschachtelt werden

  • wenn der Attributname eine Entityliste ist, muss ein passender Close-Tag angegeben werden (Zeichen "/") z.B. «EL_Kontakte»...«/EL_Kontakte»

  • folgende optionale Eigenschaften können Attribut-Platzhaltern mitgegeben werden:

    • Unit = <Name der Einheit, Groß-/Kleinschreibung beachten!>
    • NullValue = <Text, wenn Attributwert NULL ist>
    • Function = die Funktion muss folgenden Syntax haben: string function FuncName( entity $e, string $sAttributename, string $sKeys[], string $sValues[]) const
  • folgende optionale Eigenschaften können Entitylist-Platzhaltern mitgegeben werden:

    • Sorting = <Attributname 1> [DESC], ..., [DESC]
    • Function = die Funktion muss folgenden Syntax haben: entitylist function FuncName( entity $e, string $sAttributename, string $sKeys[], string $sValues[]) const

Beispielcode

Beispiele für Entity der Klasse Mitarbeiter:

sValue = FillTemplateText( this, "«Name», «Surname»" );
// Ausgabe:
Mustermann, Hans

sValue = FillTemplateText( this, "Stundenlohn von «Name», «Surname» ist «Hourly_wage»" );
// Ausgabe:
Stundenlohn von Mustermann, Hans ist 10,0000

sValue = FillTemplateText( this, "Stundenlohn von «Name», «Surname» ist «Hourly_wage|Unit=EURO» €" );
// Ausgabe:
Stundenlohn von Mustermann, Hans ist 10,00 €

sValue = FillTemplateText( this, "Mitarbeitertyp: «Typ»", 0 );
// Ausgabe:
Mitarbeitertyp: Festanstellung

sValue = FillTemplateText( this, "Mitarbeitertyp: «Typ»", 1 );
// Ausgabe:
Mitarbeitertyp: 3

// this is an user defined none entity function
function string GetEmployeeType( byval entity $e, byval string $attributename, byval string $keys[], byval string $values[] ) const
{
	return "Geheim";
}

sValue = FillTemplateText( this, "Mitarbeitertyp: «Typ | Function = GetEmployeeType»", 0 );
// Ausgabe:
Mitarbeitertyp: Geheim

sValue = FillTemplateText( this, "Kontakte:\n«EL_Kontakte | Sorting=Number»\nNr.:«Number»\n«/EL_Kontakte»" );
// Ausgabe:
Kontakte:
Nr.:3
Nr.:4
Nr.:5

sValue = FillTemplateText( this, "Kontakte:\n«EL_Kontakte | Sorting=Number DESC»\nNr.:«Number»\n«/EL_Kontakte»" );
// Ausgabe:
Kontakte:
Nr.:5
Nr.:4
Nr.:3