Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Funktion

Kontext

Rückgabetyp

Beschreibung

ams_repeatsparte(formel)

Vertrag

Numerisch

Führt mit Vertragssparten-Kontext die übergebene Formel aus, sofern der Vertrag einen zulässigen Tarif besitzt

ams_repeatsparte(formel, tarif)

Vertrag

Numerisch

Führt mit Vertragssparten-Kontext die übergebene Formel aus, sofern der Vertrag dem übergebenen Tarif entspricht

inkgessteuernr(position)

RW

Baustein

inksteuerinfo(x)

inksteuerinfo(x, y)

ams_splitsparte(betrag)

Vertrag

Numerisch

Der übergebene Betrag wird gleichmäßig anteilig für eine Vertragssparte ausgegeben und auf 2 Nachkommastellen gerundet

ams_splitsparte(betrag, anzahlNachkommastellen)

Vertrag

Numerisch

Der übergebene Betrag wird gleichmäßig anteilig für eine Vertragssparte ausgegeben und auf die übergebene Anzahl Nachkommastellen gerundet

ams_checktarif(text)

Vertrag

Wahrheitswert

Prüft, ob der übergebene Tarif im Vertrag vorhanden ist

ams_n2txt(Ganzzahl)

Text

Wandelt die übergebene Zahl in den textlichen Wert der enthaltenen Ziffern um

ams_exp(betrag, anzahlNachkomma, tausenderTrennzeichen)

Text

Wandelt einen numerischen Wert in eine Zeichenkette um und berücksichtigt, dabei die gewünschte Anzahl Nachkommastellen und ob Tausendertrennzeichen gesetzt werden sollen

z.B.
[ams_exp (4000)] => 4.000,00
[ams_exp (4000,1)] => 4.000,0
[ams_exp (4000, 2, 1)] => 4.000,00
[ams_exp (4000, 2, 0)] => 4000,00
[ams_exp(4000,0)] => 4.000

ams_exp_strict(betrag, anzahlNachkomma, tausenderTrennzeichen

Text

Siehe ams_exp.
Tritt bei der Umwandlung ein Fehler auf, wird dieser in das Dokument ausgegeben

dateizeile(dateipfad)

Text

Liefert den Inhalt der übergebenen Datei zurück

dateizeile(dateipfad, zeile)

Text

Liefert den Inhalt der übergebenen Zeile aus der übergebenen Datei zurück

amsspartenname(sparte)
ams_sparte(sparte)

Text

Gibt den Beschreibungstext der übergebenen Sparte zurück

amsbibadresseoptimal

secureiban(iban)

Text

Sorgt für eine Teil-Maskierung der übergebenen IBAN, sodass diese nicht vollständig in Klarschrift angedruckt wird

f_amszahl(zaehlername, formatierung)

Text

Der übergebene Zähler wird um eins erhöht und der neue Wert im übergebenen Format zurückgeliefert. Siehe F_AMSZAHL.

f_amsmandantzahl(zaehlername, formatierung, mandantMatchcode)

Text

Der übergebene Zähler wird um eins erhöht und der neue Wert im übergebenen Format zurückgeliefert. Hierbei wird je Mandant im System eine separater Zähler verwendet. Siehe F_AMSZAHL.

dc(objektName, ArtDesObjekts)

Als Objektname kommt hier eine Variable (Feldvariable oder Standardtextvariable), oder ein Textbaustein (exakter Name) in Frage.

Anstelle von ArtDesObjekts kann man fünf Zahlencodes einfügen, welche jeweils eine unterschiedliche Funktion haben:

2 = Zugriff auf Feldvariablen (ohne @)
5 = Zugriff auf Textformeln (ohne @)
6 = Zugriff auf Textbausteine mit abschließendem Zeilenumbruch
9 = Zugriff auf Feldvariablen zum Rechnen (ohne @)
16 = Zugriff auf Textbaustein ohne abschließenden Zeilenumbruch
26 = Zugriff auf Textbaustein ohne abschließenden Zeilenumbruch. Wird der übergebene Bausteinname nicht gefunden, erfolgt eine Fehlerausgabe im Dokument.

amszahlweisefaktor(zahlweise)

Ganzzahl

Anhand der Zahlweise wird der passende Faktor zurückgeliefert (Monatlich -> 12).

amstab(Typ, Baustein, Filter)

ADRESSE

Baustein

Typ:

SCHADEN, VERTRAG oder KUNDE

Baustein:

Ein beliebiger Bausteinname, der die notwendigen Ausgabevariablen

enthält

Filter:

Bezeichnung der Referenzrolle

Falls eine Prüfung notwendig ist, kann dies mit folgender SQL-Abfrage durchgeführt werden:

Codeblock
select SADRESS.* from SADRESS, LINKADR 
where SADRESS.AMSIDNR = LINKADR.ADRID 
and LINKADR."KEY" = 'AMSIdNr vom Typ'  
and LINKADR.VERWENDUNG = 'Filtertext';

Ablauf:

  • Der SADRESS-Kontext wird ermittelt und geprüft

  • Wenn die Referenzadresse existiert, wird die AMSIdNr der vorhandenen Adresse geholt oder eine neue Adresse angelegt

  • Der Parser verarbeitet die Kombination aus Typ und AMSIdNr

  • Wenn die Verarbeitung erfolgreich war, wird die Hauptobjekt-ID dem Adressobjekt zugewiesen, sonst erfolgt der Funktionsabbruch

  • Es wird die Verwendung aus der LINKADR für den Typ ermittelt

  • Anschließend wird intern der Modus Typ + _BRIEF_REF zum Parser hinzugefügt

  • Alle selektierten Adressen werden iteriert und der Baustein für diese aufgerufen

  • Im Baustein selbst können die notwendigen Variablen auf konventionell Weise hinterlegt werden.

Beispiele:

Codeblock
[amstab("SCHADEN", "BAUSTEINNAME", "ROLLENNAME")]
Codeblock
[amstab("VERTRAG", "BAUSTEINNAME", "ROLLENNAME")]
Codeblock
[amstab("KUNDE", "BAUSTEINNAME", "ROLLENNAME")]

amsmemotext(text)

Text

Umbrüche des übergebenen Texts werden für die Textverarbeitung konvertiert, damit diese korrekt dargestellt werden.

amsanmerkung2rtf(hauptobjektID)

Text

Zu dem übergebenen Fachobjekt wird die Anmerkung zurückgeliefert

amssql2rtf(sql)

RTF

Die Ergebnismenge wird in RTF umgewandelt. Wenn mehrere Spalten selektiert werden, sind diese mittels Tabulator getrennt

vertragberatunginfo

RTF

vertragberatunginfoplain

rtftrim(rtf)

RTF

Umbrüche, Leerzeichen, Leerzeilen werden am Ende eines Textbausteins entfernt.

removeparagraph

amssqlsingle(sql)

Variant

amsbeteil2rtf

RTF

amskik2rtf

RTF

amsink2rtf

RTF

amskalkulation2rtf

RTF

amsschaeden2rtf

RTF

amstermine2rtf

RTF

amsreferenzen2rtf

RTF

amsrtfgruppenpersonen

repeatrisiko(BausteinName)

VERTRAG

Baustein

Für die zum Vertrag gehörigen Vertragskalkulationen wird je Eintrag der übergebene Baustein aufgerufen.

amsschaeden2rtf(Baustein, Offene, Erledigte)

RTF

amstermine2rtf(AmsIdNr)

RTF

amsreferenzen2rtf(AmsIdNr)

RTF

amsrtfgruppenpersonen(Sparte, VertragsAmsidnr)

RTF

amsmatrixload

amsmatrix

ba_allgbuchungabgerechnet2rtf

ba_allgbuchungoffen2rtf

ba_allgbuchungsonstige2rtf

ba_allgbuchungstornoreserve2rtf

ba_vertragshistorien2rtf

ba_provisionen2rtf

ba_sonstbuchungen2rtf

ba_sonststornoreserven2rtf

ba_summeabgerechnet2rtf

ba_summebuchungen2rtf

ba_summeoffen2rtf

ba_summesonstige2rtf

ba_summestornoreserve2rtf

ba_vertragsbuchungen2rtf

ba_vshbeitrag2rtf

ba_vtbuchungabgerechnet2rtf

ba_vtbuchungabschlussp2rtf

ba_vtbuchungdynamik2rtf

ba_vtbuchungfolgebestand2rtf

ba_vtbuchungoffen2rtf

ba_vtsummeprovvm2rtf

ba_vtsummestornoresvm2rtf

ba_vtsummegutschriftvm2rtf

repeat(Container, Textbaustein)

Baustein

Der übergebene Container wird iteriert und ruft für jeden Eintrag den übergebenen Textbaustein auf

repeatsqlquery(sqlCommandText, Textbaustein, Containername)

Baustein

Das übergebene SQL-Statement wird iteriert und ruft für jede Zeile den Textbaustein auf. Innerhalb des Bausteins kann auf die Inhalte aus dem Query anhand des übergebenen Containernamens zugegriffen werden.

repeatabrgesellpraemien

repeatabrgesellschaden

repeatabrgesellsonder

repeatbeteiligung

repeatvxx

RTF

Grundsätzliches für die repeatvxx-Funktionen:

Intern erfolgt der Funktionsaufruf von repeatabrpositionanlage mit dem Viewnamen, auf den via SQL zugegriffen wird.

repeatvmap(Textbaustein, Containername)

RTF

Neuer Abrechnungsdruck Abschlussprovision

repeatabrpositionanlage(ABR_VM_AP, Textbaustein, Containername)

repeatvmdy(Textbaustein, Containername)

RTF

Neuer Abrechnungsdruck Vermittlerprovision

repeatabrpositionanlage(ABR_VM_DY, Textbaustein, Containername)

repeatvmfp(Textbaustein, Containername)

RTF

Neuer Abrechnungsdruck Folgeprovision

repeatabrpositionanlage(ABR_VM_FP, Textbaustein, Containername)

repeatvmhon(Textbaustein, Containername)

RTF

Neuer Abrechnungsdruck Honorare

repeatabrpositionanlage(ABR_VM_HON, Textbaustein, Containername)

repeatvmregul(Textbaustein, Containername)

RTF

Neuer Abrechnungsdruck Vermittlerregulierung

repeatabrpositionanlage(ABR_VM_REGUL, Textbaustein, Containername)

repeatvmsonst(Textbaustein, Containername)

RTF

Neuer Abrechnungsdruck Sonstige

repeatabrpositionanlage(ABR_VM_SONST, Textbaustein, Containername)

Zusatzinfo - Kein Aufruf via Textformel, sondern nur intern von AMS:

repeatabrpositionanlage(ViewName, Textbaustein, Containername)

Text

Ablauf:

  • Der Abrechnungskontext wird als Objekt geholt

  • Die Abrechnungs-ID wird als Filter für die SQL-Abfrage gesetzt

  • Im Code wird geprüft, welcher Viewname vorliegt (Viewname “beginnt mit” als Textvergleich)

  • Anschließend werden je nach View die Felder ermittelt, die nicht als RTF ausgegeben werden (Sog. Skipfields) und die Sortierreihenfolge der SQL-Abfrage

  • Die Sortierreihenfolge kann für ABR_GESELL_PRAEMIEN, ABR_VM (ABR_VM_SONST, ABR_VM_HON und weitere ABR_VM-Views in der Registry hinterlegt werden)

  • ABR_GESELL_PRAEMIEN: INKASSO/GESELLSCHAFTSABRECHNUNG => ORDERBY

  • ABR_VM_SONST: INKASSO/VERMITTLERABRECHNUNG/SONST=> ORDERBY

  • ABR_VM_HON: INKASSO/VERMITTLERABRECHNUNG/HON=> ORDERBY

  • Sonstige ABR_VM-Views: INKASSO/VERMITTLERABRECHNUNG=> ORDERBY

  • Die Selektion anhand des Viewnamen erfolgt anhand folgender Logik:

  • Erste Prüfung: ABR_GESELL_PRAEMIEN

  • Zweite Prüfung ABR_VM (ABR_VM_SONST, ABR_VM_HON oder anderer Key)

  • Dritte Prüfung: ABR_KUNDE

  • Vierte Prüfung: Sonstige Views

Finale Schritte: Aufruf von repeatsqlquery(SQL, Textbaustein, Containername, ÜberspringeFelder);

Die Funktion repeatsqlquery erzeugt die RTF-Daten anhand der intern zusammengestellten SQL-Abfrage mit dessen Filtern und Skipfields.

xpath(xpathPfad)

Text

Der erste gefundene Eintrag am übergebenen Pfad wird aus der XML-Struktur zurückgegeben

xrepeat(xpathPfad, Textbaustein)

RTF

In der XML-Struktur wird für den übergebenen Pfad iteriert und der übergebene Textbaustein aufgerufen.

xrepeatgroupby(xpathPfad, GroupBy, Delimiter, Textbaustein, TextbausteinHeader, TextbausteinFooter)

RTF

xrepeatgroupbysorted(xpathPfad, GroupBy, Delimiter, Sorted, Textbaustein, TextbausteinHeader, TextbausteinFooter)

RTF

xminvalue(xpathPfad, Datentyp)

Text

Datentyp = S, D, N, I

Liefert den kleinsten Wert für den übergebenen Suchpfad innerhalb der XML-Struktur zurück.

xmaxvalue(xpathPfad, Datentyp)

Text

Datentyp = S, D, N, I

Liefert den größten Wert für den übergebenen Suchpfad innerhalb der XML-Struktur zurück.

hyperlink(hyperlink, linktext)

RTF

Ein übergebener Link wird als Hyperlink im Dokument dargestellt

ams2excel(Titel)

Text

Via Titelparameter werden aus der Tabelle ABR_ANLAGE Daten für den Excelexport selektiert.

abrview2excel(Titel)

Text

Via Titelparameter werden aus der Tabelle ABR_ANLAGE Daten für den Excelexport selektiert.

ams2csv(Titel)

Text

Funktionalität analog zu ams2excel - Die Daten werden stattdessen im CSV-Format exportiert. Intern wird ams2excel aufgerufen, der Parameter ExportAsCSV wird auf aktiv gesetzt.

abrview2csv(Titel)

Text

Funktionalität analog zu abrview2excel - Die Daten werden stattdessen im CSV-Format exportiert. Intern wird abrview2excel aufgerufen, der Parameter ExportAsCSV wird auf aktiv gesetzt.

xrepeat2excel

xsaldo

xsum(xpathPfad)

Text

Alle gefundenen Ergebnisse zum XPath-Pfad werden summiert zurückgeliefert

sum(ContainerName, Feldname)

Text

Das übergebene Feld aus dem Container wird summiert zurückgeliefert

xsteuer(Path, Inkasso, Single)

RW

Text

Inkasso = Leer / IN
Single = Leer / S
Berechnet den Steuer-Wert für den angebenen Pfad

strcmp

xcalc(FormelName)

Text

xpathexists(xpathFormel)

Wahrheitswert

Es wird geprüft, ob der übergebene Pfad in der XML-Struktur vorhanden ist

statusgrund(Typ)

Text

Der Abrechnungstyp wird als sprechender Wert zurückgeliefert.

PR = Folgeprämie, PR_NE = Nachtrag, PR_EP = Erstprämie

roundto(Wert, AnzahlNachkommastellen)

Text

Der übergebene Wert wird auf die Anzahl Nachkommastellen gerundet.

fibubankkto

gevolang

nfibwrg

parsefloat

parsefloatstrict

parsefloat2str

amsvtfaellig

amsvtftermin

rtfbild

abrgespositionkdrgnr

abrspartenfeld

multispartenfeld

datenverarbeitung(AdressId, Kanal, Art)

Text

Kanal = HAUPTKANAL, ZUSTIMMUNG_ERTEILT, ZUSTIMMUNG_QUELLE, ZUSTIMMUNG_BEMERKUNG, ZUSTIMMUNG_DATUM, GRUENDE

Art = 1, 2

htmltortf(html)

RTF

HTML-Inhalte werden nach RTF umformatiert

monatsanfang(Datum)

Text

Liefert den Monatsbeginn zum übergebenen Datum zurück

Beispiel:

Heute ist der 06.11.2024.

Die Funktion DATE() liefert das Tagedatum zurück.

Codeblock
[monatsanfang(DATE())]

Ergebnis: 01.11.2024

monatsende(Datum)

Text

Liefert das Monatsende zum übergebenen Datum zurück

Beispiel:

Heute ist der 06.11.2024.

Codeblock
[monatsende(DATE())]

Ergebnis: 30.11.2024

kalenderwoche(Datum)

Text

Liefert die Kalenderwoche zum übergebenen Datum zurück

Beispiel:

Heute ist der 06.11.2024.

Codeblock
[kalenderwoche (DATE())]

Ergebnis: 45

wochemonat(Datum)

Text

Liefert die Woche des übergebenen Monats zum übergebenen Datum zurück

Beispiel:

Heute ist der 06.11.2024.

Codeblock
[wochemonat(DATE())]

Ergebnis: 1

edatum(Datum, Monate)

Text

Info

Analoge Funktionsweise zur Excel-Formel “edatum”

Ausgehend von einem Datumswert können Vormonate oder Folgemonate mit Parameterangabe kalkuliert werden.

Beispiele:

Heute ist der 06.11.2024

Codeblock
[edatum(DATE(),1)]

Ergebnis: 06.12.2024

Codeblock
[edatum(DATE(),-1)]

Ergebnis: 06.10.2024

Codeblock
[monatsende (edatum(DATE(),-1))]

Sie können die Formel edatum auch mit obigen Datumsformeln kombinieren.

Der letzte Tag des Vormonats ausgehend vom heutigen Tagesdatum liefert als Ergebnis den 31.10.2024.

wertinauflistung(suchwert, prüfwert1, prüfwert2, ….)

Wahrheitswert

Es wird der Suchwert in den Prüfwerten gesucht - Bei Treffer erfolgt der Suchabbruch. Die Funktion kann als Alternative zur Verschachtelung von .or. verwendet werden.

Die Suche unterscheidet Groß- und Kleinschreibung.

Beispiele:

Codeblock
[if(wertinauflistung(KUNDE->VN_GESCHL, "Divers"), "Wahr", "Falsch")]
Codeblock
[if(!wertinauflistung(KUNDE->VN_GESCHL, "Divers", "Weiblich"), "Wahr", "Falsch")]
Codeblock
[if(wertinauflistung(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), "Wahr", "Falsch")]

nvl(x, y)

Text

Es wird X zurückgeliefert, sofern dieses nicht technisch NULL ist. Ansonsten wird Y zurückgeliefert.

repeatoffenevorgaengezuvertraegen(HeaderTextbaustein, ZeilenBaustein, FooterBaustein, Gruppierungsfeldname)

KUNDE / TERMIN

Baustein

Alle offenen Vorgänge zur Verträgen werden iteriert

repeatoffenevorgaengezuschaeden(HeaderTextbaustein, ZeilenBaustein, FooterBaustein, Gruppierungsfeldname)

KUNDE / TERMIN

Baustein

Alle offenen Vorgänge zur Schäden werden iteriert

repeatoffenevorgaengezukunden(HeaderTextbaustein, ZeilenBaustein, FooterBaustein, Gruppierungsfeldname)

KUNDE / TERMIN

Baustein

Alle offenen Vorgänge zu Kunde werden iteriert

sql2tortftable

Varianten:

qrcode(Text)

qrcode(Text, Parameter)

Bild als RTF-Text

Liefert einen QR-Code zurück.

Parameter:

ENCODING
QUIET ZONE
ERROR CORRECTION LEVEL
DRAWING MODE
CORNER LINE
BACKGROUNDCOLOR
FOREGROUNDCOLOR
SCALE

Mögliche Werte der Parameter:

ENCODING:

Die Kodierung des QR-Codes und dessen Inhalts.

Die Mehrzahl der QR-Reader geht vom Standard UTF-8 aus.

AUTO
NUMERIC
ALPHANUMERIC
ISO-8859-1
UTF-8 WITHOUT BOM
UTF-8 WITH BOM
URL ENCODING
WINDOWS-1251

Standard: AUTO

QUIET ZONE:

Wert zwischen 0 und 100.

Die Ruhezone ist der leere Rand oder Raum, der alle vier Seiten des QR-Codes umschließt und den Barcode von anderen Elementen im Bild trennt.

Eine Ruhezone hilft dem QR-Reader, das Vorhandensein des QR-Codes genau zu erkennen.

Sie definiert zusätzlich, an welcher Stelle der QR-Code beginnt und endet.

Standard: 1

ERROR CORRECTION LEVEL:

Bei der Erstellung von QR-Codes kann ein bestimmter Grad für Fehlerkorrektur angegeben werden, sodass der Code lesbar bleibt, auch wenn er zum Teil beschädigt oder verdeckt ist.

L (Niedrig) bis zu 7%

M (Mittel) bis zu 15%

Q (Quartil) bis zu 25%

H (Hoch) bis zu 30% dürfen beschädigt sein

Standard: L

DRAWING MODE:

BITMAP PROPORTIONAL
BITMAP NON-PROPORTIONAL
VECTOR: RECTANGLES PROPORTIONAL
VECTOR: RECTANGLES NON-PROPORTIONAL
VECTOR: REGION PROPORTIONAL
VECTOR: REGION NON-PROPORTIONAL

Standard: BITMAP PROPORTIONAL
CORNER LINE:

Die Eckendicke ist die Dicke zweier senkrechter Linien in der unteren rechten Ecke.

Standard: 0
BACKGROUNDCOLOR:

Logik:

  • Zuerst wird versucht, einen RGB-Wert zu lesen

  • Wenn kein RGB-Wert vorliegt, wird der Farbenname auf Englisch gelesen (Farben in Delphi haben den Präfix cl - Wenn dieser nicht vorhanden ist, wird dieser intern vorgehangen).

  • Sollte kein Ergebnis vorliegen, wird die deutsche Bezeichnung der Farbe gesucht. Ü wird durch UE und ß durch SS ersetzt.

Für die Ermittlung wird der Text in Großbuchstaben konvertiert.

Folgende Standardfarben werden unterstützt:

Englisch

Codeblock
'CLBLACK',
'CLMAROON',
'CLGREEN',
'CLOLIVE',
'CLNAVY',
'CLPURPLE',
'CLTEAL',
'CLGRAY',
'CLSILVER',
'CLRED',
'CLLIME',
'CLYELLOW',
'CLBLUE',
'CLFUCHSIA',
'CLAQUA',
'CLWHITE',
'CLMONEYGREEN',
'SKYBLUE',
'CLCREAM',
'CLMEDGRAY',
'CLNONE'

Deutsch

Codeblock
'SCHWARZ',
'BRAUN',
'GRUEN',
'OLIVGRUEN',
'MARINEBLAU',
'PURPUR',
'GRUENBLAU',
'GRAU',
'SILBER',
'ROT',
'LIMONENGRUEN',
'GELB',
'BLAU',
'FUCHSIA',
'AQUAMARIN',
'WEISS',
'MINTGRUEN',
'HIMMELBLAU',
'CREME',
'MITTELGRAU',
'KEINE'

Standard: clBlack / Schwarz
FOREGROUNDCOLOR:

Analog Backgroundcolor

Standard: clWhite / Weiß
SCALE:

Der Maßstab ist die Größe der Bildpunkte (Quadraten).

Der Barcode wird anhand des Parameters entsprechend vergrößert.

Empfehlung: 3 oder 4.

Standard: 3

Beispielaufruf (Möglich mit einem oder zwei Argumenten):

  1. Mit Standardwerten

Codeblock
[qrcode("Test")];
Codeblock
[qrcode("Test", "")];
  1. Mit allen Parametern

Codeblock
[qrcode("Test", "ENCODING:ISO-8859-1;QUIET ZONE: 1;ERROR CORRECTION LEVEL: M; DRAWING MODE: BITMAP PROPORTIONAL;CORNER LINE: 1;BACKGROUNDCOLOR: clWhite; FOREGROUNDCOLOR: clBlack; SCALE: 4")]

Grundsätzlich:

Parameter sind optional - Jede mögliche Kombination 1..n ist möglich.

image-20241010-131009.png

textverketten(Trennzeichen, Leertext ignorieren, Wert 1..n)

RTF

Verkettet alle Textstücke mit dem definierten Trennzeichen.

Parameter 1 ist das gewünschte Trennzeichen.

Standard: Zeilenumbruch in RTF-Notation (\par ).

Parameter 2 spezifiziert, ob eine leere Zeichenfolge ignoriert werden sollen.

Standard: “Ja”.

Für beide Parameter kann auch ““ hinterlegt werden.

Parameter 3..n sind die jeweiligen Textelemente, welche verkettet werden sollen.

Beispiele:

Codeblock
[textverketten("", "Ja", "1", "2", "3", "4", "5)]
image-20241021-081725.png
Codeblock
[textverketten(" ", "Ja", "1", "2", "3", "4", "5)]
image-20241021-081830.png

textverkettensql(Trennzeichen, Leertext ignorieren,

SQL-Abfrage)

RTF

Funktionalität analog textverketten.

Als dritter Parameter muss die SQL Abfrage angegeben werden.

Anschließend erfolgt die Ausführung und alle Ergebnisse werden intern in einen Parameteraufruf mit der jeweiligen Ergebnisanzahl transformiert.

Enthält die SQL Abfrage drei Ergebniswerte, wird aus textverkettensql folgender Formelaufruf von textverketten:

Codeblock
[textverkettensql("", "Ja", "SELECT KUNDE.VN_NAME1, KUNDE.VN_TEL, KUNDE.VN_EMAIL FROM KUNDE;")]
Codeblock
[textverketten("", "Ja", "Mustermann", "012345123456", "muster@test.de")]

Bitte beachten:

Es werden nur die Feldwerte des ersten Ergebnis verkettet.

Wenn eine Auflistung von multiplen Datensätzen benötigt wird, sollte die Funktion liste verwendet werden.

Die Funktion befindet sich aktuell im internen Test.

liste

Varianten:

  1. liste(Format, SQL-Abfrage)

  2. liste(Format, SQL-Abfrage, Präfix)

  3. liste(Format, SQL-Abfrage, Präfix, Suffix)

  4. liste(Format, SQL-Abfrage, Präfix, Suffix, Leertext ignorieren)

RTF

Die Funktion erstellt eine Liste mit Aufzählungszeichen auf Basis einer SQL-Abfrage und einem Ergebnisfeldwert.

Parameter Format:

Groß-/Kleinschreibung wird für den Parameter bei Prüfung der vordefinierten Typen ignoriert.

  • Eigendefiniert

  • Numerisch (0..9)

  • Alpha (a..z)

  • AlphaBig (A…Z)

  • Roemisch (i, ii, iii, …)

  • RoemischBig (I, II, III, …)

  • Kreis (●)

  • FettePunkt (•)

  • HohlePunkt (◦)

  • InvertiertePunkt (◘)

  • Fischauge (◉)

  • Mittelpunkt (·)

  • LangerGedankenstrich (—)

  • Gedankenstrich (–)

  • Pfeil (→)

  • Stern (*)

  • Malzeichen (×)

Parameter SQL-Abfrage:

Die Datenbankabfrage, welche die notwendigen Informationen für die Ausgabe liefert.

Bitte beachten:

Es werden nur die Feldwerte des ersten Ergebnis aufgelistet.

Parameter Suffix und Präfix:

Um für die Formel Liste() einen maximaler Grad an Flexibilität zu ermöglichen, können Präfixe und Suffixe definiert werden. Diese ermöglichen es, die Formatierung der Aufzählungszeichen zu modifizieren.

Standardmäßig wird der “. ” bei Verwendung der Funktion

liste mit zwei Parametern (Format, SQL) eingefügt.

Sie erhalten somit als Ausgabe: 1., a., A., I., usw.

Sollten Sie z.B. abweichend das Format (I.) benötigen, kann dies via Suffix und Präfix hinterlegt werden.

Codeblock
"(", ".)")]

Entsprechend Beispiele folgen.

Parameter Leertext ignorieren:

Standardmäßig werden Leerwerte bei der Listenausgabe ignoriert und in der Nummerierung übersprungen.

Ggf. liegt die Notwendigkeit vor, Leertext trotzdem auszugeben.

Verwenden Sie den Wert “Nein”.

Beispiele:

Aufruf der Funktion mit zwei Parametern:

Codeblock
[liste("Numerisch","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;")]

Ausgabe:

  1. -2000776

  2. -2000777

  3. E-2000766

  4. E-2000775

  5. E-2000778

Codeblock
[liste("Roemisch","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;")]

Ausgabe:

i. -2000776

ii. -2000777

iii. E-2000766

iv. E-2000775

v. E-2000778

Codeblock
[liste("RoemischBig","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;")]

Ausgabe:

I. -2000776

II. -2000777

III. E-2000766

IV. E-2000775

V. E-2000778

Codeblock
[liste("Alpha","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;")]

Ausgabe:

a. -2000776

b. -2000777

c. E-2000766

d. E-2000775

e. E-2000778

Codeblock
[liste("AlphaBig","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;")]

Ausgabe:

A. -2000776

B. -2000777

C. E-2000766

D. E-2000775

E. E-2000778

Aufruf der Funktion mit drei Parametern:

Codeblock
[liste("Numerisch","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;","->")]

Ausgabe:

->1-2000776

->2-2000777

->3E-2000766

->4E-2000775

->5E-2000778

Suffixe ohne Präfixkombination werden eher selten zum Einsatz kommen.

Aufruf der Funktion mit vier Parametern:

Codeblock
[liste("Numerisch","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;","",".)")]

Ausgabe:

1.)-2000776

2.)-2000777

3.)E-2000766

4.)E-2000775

5.)E-2000778

Codeblock
[liste("Numerisch","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;","(", ".)")]

Ausgabe:

(1.)-2000776

(2.)-2000777

(3.)E-2000766

(4.)E-2000775

(5.)E-2000778

Aufruf mit fünf Parametern:

Codeblock
[liste("Numerisch","SELECT FIRST 5 VNR FROM VERTRAG ORDER BY VNR;","(", ".)", "Ja")]

Ausgabe:

(1.)-2000776

(2.)-2000777

(3.)E-2000766

(4.)E-2000775

(5.)E-2000778

Die Funktion befindet sich aktuell im internen Test.

Anker
Beispiele
Beispiele
Beispiele

...