Complete
Complete fügt rechts neue Spalten hinzu. Zur Ermittlung des Inhaltes der hinzugefügt wird, kann ein SQL-Statement dienen, ein fester String oder eine in den OrgaMon integrierte Funktion. Im Rahmen des complete Blocks können mehrere Zeilen formuliert werden, in dieser Reihenfolge werden auch Spalten angefügt. Grundsätzlicher Aufbau des Statements:
'complete'|'replace' { <FunktionsName> '(' ParameterListe ')' | '"' fester String '"' | OLAP.Dim."DateiName".txt ) [ '||' ] } [ ' ' <BezeichnungDerNeuenSpalte1> [ { ';' <BezeichnungDerNeuenSpalteN> } ] ] ... weitere Zeilen ... "-"
ParameterListe: In den runden Klammern kann sich im Moment nur ein Parameter befinden. Der 2. Parameter wird weggelassen und dafür wird implizit die folgende Spalte als Parameterwert verwendet.
FunktionsName: Name der in den OrgaMon eingebauten Funktion.
DateiName: Name der externen Datei in der sich ein SQL-Statement befindet.
BezeichnungDerNeuenSpalte*: (optional) Gibt die Spaltenüberschrift an der neu entstandenen Spalte. Ohne explizite Angabe wird der Funktionsname als Spaltenüberschrift benutzt.
"20" ZWANZIG : Ausgabe einer Konstanten Spalte
SQL("") Direktes SQL-Statement
schreiben Sie direktes SQL zur Ermittlung eines einzelnen Feldes. Dieses wird dann in die Tabelle mit aufgenommen. Es kann auf jede Spalte der Haupttabelle über $Spaltenüberschrift
zugegriffen werden.
SQL("select TITEL from ARTIKEL where RID=$ARTIKEL_R") Bezeichnung
Komponist(MUSIKER_R) KOMPONIST
KomponistN(MUSIKER_R) KOMPONIST_NACHNAME
Arrangeur(MUSIKER_R) ARRANGEUR
ArrangeurN(MUSIKER_R) ARRANGEUR_NACHNAME
Verlag(VERLAG_R) VERLAG
Fax(PERSON_R) FAX
Person(PERSON_R) PERSON
Preis(ARTIKEL_R) PREIS
Lieferzeit(ARTIKEL_R) LIEFERZEIT
Bemerkung(ARTIKEL_R) BEMERKUNG
Anschrift(PERSON_R) Adressat1;Adressat2;Adressat3;Adressat4;Strasse;Ort
Rabattiert(PREIS) RABATTIERTER_PREIS
PREIS wird um den Rabatt, der in der auf PREIS folgenden Spalte stehen muss vermindert.
Umsatz(POSTEN_R) UMSATZ
liefert eCommerce::e_r_Umsatz(POSTEN_R) dieser Postenzeile.
Beleg(BELEG_R)
Beleg-Teillieferung;NETTO1;NETTO2;NETTO3;MWST1;MWST2;MWST3
Preis(ARTIKEL_R) PREIS_BRUTTO
Kategorie(ARTIKEL_R) KATEGORIE
Bild(ARTIKEL_R) BILD
Vorschau(ARTIKEL_R) VORSCHAU
Musik(ARTIKEL_R) WEBLINK
Kontext(ARTIKEL_R) KONTEXT
Plural(SPALTE_ANZAHL,"Einzahl","Mehrzahl")
Zeit(SEKUNDEN) HHH:MM:SS
Umwandlung eines ganzzahligen Sekundenwertes in einen Zeit-String mit der Formatierung HHH:MM:SS
limit32 GANZZAHL
Beschränkung auf eine Ganzzahl
Lohn(BETRAG) ARBEITSZEIT
$MonatJahr muss im Script definiert sein. Anhand dieser Zeitangabe wird die entsprechende Arbeitszeit geladen.
SQL-Statement-Datei [SPALTENBEZEICHNUNG]
Es wird die Datei OLAP.Dim."SQL-Statement-Datei".txt im OLAP-Pfad gesucht und geladen. Die Datei wird als SQL-Statement interprätiert, die genau einen Wert als Ergebnis liefert (in der ersten Zeile, den Wert der ersten Spalte). Inerhalb des OLAP.Dim.Statements kann auf alle Spalten des bisherigen Ergebnisses mit Hilfe der Spaltenüberschriften zugeriffen werden. Dabei muss ein "$" Symbol vorangestellt werden. Auch auf "globale" Parameter des aufrufenden Statements kann wie gewohnt zugegriffen werden.
select count(RID) from MUSIKER where (PERSON_R=$RID) and (MOMENT=$Moment)
$RID wird aus dem bisherigen Ergebnis gelesen. $Moment
Plural(ANKER,"Einzahl-Text","Mehrzahl-Text")
Je nachdem, ob in einer Spalte nichts/"1" steht oder ein wert >"1" wird der Einzahl-Text oder der mehrzahl-Text ausbelichtet.
Plural(ANZAHL,"das_Kaninchen","die_Kaninchen") KANINCHEN_ANREDE
Protokoll(AUFTRAG_R) L5;L6
Die rechts angegebenen Protokollfelder werden ausgegeben. Bei:INT wird die wandelung in einen Integer vorgenommen.
Syntax
Protokoll(~AUFTRAG_R-Spaltenüberschrift~) ~Protkollparametername~[":INT"]
Kategorie(AUFTRAG_R)
bisher nicht dokumentiert
Auftrag(AUFTRAG_R)
Alle Datenfelder eines Auftrages
Beispiel
- OLAP Statement
complete PosNo(0) POSNO Bild(RID) BILD Vorschau(RID) VORSCHAU Preis(RID) PREIS as Betrag "("||Komponist(KOMPONIST_R)||"/"||Arrangeur(ARRANGEUR_R)||")" KOMPONIST_ARRANGEUR -
- Datei "OLAP.Dim.PosNo.txt"
select MAX(POSNO) from ARTIKEL_MITGLIED where (ARTIKEL_R=$RID) and (MASTER_R=$MASTER_R)