Mit External$ werden im Druckdesigner Funktionen aufgerufen, die nicht originär vom Layoutgenerator zur Verfügung gestellt werden. Diese externen Funktionen lassen sich zum Beispiel für Rundungen, für Umrechnungen oder auch für die Abfrage von Feldinhalten aus anderen Datenbanken verwenden. 

Die folgende Erläuterung richtet sich an den erfahrenen Benutzer mit entsprechenden Vorkenntnissen in der Gestaltung der Layouts mit Hilfe des Druckdesigners. 

In allen Druckdesigner Layouts wird eine Funktion namens "External$" unterstützt. Diese Funktion nimmt immer eine Zeichenfolge als Parameter entgegen und gibt eine Zeichenfolge zurück. 

Die übergebene Zeichenfolge ist immer nach dem folgenden Schema aufgebaut: 

Funktionsname(Parameter1|Parameter2|ParameterX..) 

Die so genannte Pipe "|", die die einzelnen Parameter trennt, können Sie über folgende Tastenkombination eingeben: AltGr + "<" oder alternativ über die Tastenkombination Strg + Alt+ "<". 

AuftBetrag(), Betrag(), WaehrBetrag() 

Diese Funktionen runden den übergebenen Wert entsprechend der im Programm eingestellten Nachkommastellen in den Parametern. Falls der 2. und 3. Parameter angegeben wurde, wird eine Währungsumrechnung durchgeführt. Wenn ein „L" an den Funktionsnamen angehängt wird, wird eine leere Zeichenfolge zurückgegeben, falls der Wert nach dem Runden „0“ ist. 

Aufruf: Funktionsname( Wert [ | Währung1 | Währung2 ] ) 

wobei Wert = beliebige Nummern-Variable oder Formel mit numerischem Ergebnis 

Währung1, Währung2 = Zeichenfolge mit ISO Währungsbezeichner 

Beispiele: 

External$("WaehrBetrag(13.5831)") 

Rundet den Wert 13.5831 entsprechend der im Programm für Währungsbeträge hinterlegten Anzahl von Nachkommastellen. 

External$("AuftBetrag(VPo.PrNt)") 

Rundet den Wert der Variable VPo.PrNt entsprechend der im Programm für Beträge (Auftrag) hinterlegten Anzahl von Nachkommastellen. 

External$("BetragL(BsE.Mge*BsE.MgeFak*BsE.EPreis)") 

Multipliziert die Variablen BsE.Mge, BsE.MgeFak und BsE.EPreis und rundet das Ergebnis auf die Anzahl der hinterlegten Nachkommastellen. Falls das Ergebnis 0 ist wird eine leere Zeichenfolge ausgegeben. 

External$("Betrag(VPo.PrNt|'DEM'|'EUR')") 

Rechnet die Variable VPo.PrNt von DM nach EUR um und rundet das Ergebnis auf auf die Anzahl der hinterlegten Nachkommastellen. Zu beachten ist, dass DEM und EUR als Zeichenketten übergeben werden müssen. 

External$("AuftBetragL(VPo.PrNt|AktMand.LWISO1|AktMand.LWISO2)") 

Rechnet die Variable VPo.PrNt von Leitwährung 1 nach Leitwährung 2 um und rundet das Ergebnis entsprechend der im Programm für Beträge (Auftrag) hinterlegten Anzahl von Nachkommastellen. Falls das Ergebnis „0“ ist, wird eine leere Zeichenfolge zurückgegeben. 

AuftrMenge(), Menge(), Gewicht(), FWFaktor(), SteuerSZ(), KalkSZ(), ProzSZ(), Stunden(), Tage() 

Diese Funktionen runden den übergebenen Wert entsprechend der im Programm eingestellten Nachkommastellen. Wenn ein „L" an den Funktionsnamen angehängt wird, wird eine leere Zeichenfolge zurückgegeben, falls der Wert nach dem Runden „0“ ist. 

Aufruf: Funktionsname( Wert ) 

wobei Wert = beliebige Nummern-Variable oder Formel mit numerischem Ergebnis. 

Anmerkung: Die Ausgabe dieser Funktionen hängt vom Wert der Variablen und von den im Programm eingestellten Nachkommastellen ab. 

Beispiele: 

External$("Menge(Val(VPo.Mge))") 

External$("ProzSz(VPo.ProvSz)") 

External$("Gewicht(VPo.EGew)") 

FeldInfo() 

Gibt die Beschreibung einer Variablen zurück. 

Aufruf: External$("FeldInfo('VariablenName')") 

wobei VariablenName = Name einer Variablen als Zeichenfolge. 

Beispiel: 

External$("FeldInfo('Mit.NNa')") 

Gibt die Beschreibung der Variable Mit.NNa zurück. Die Variable Mit.NNa gibt z. B. die Information "Nachname" aus. 

Zu beachten ist, dass der Variablen-Name als Zeichenfolge zu übergeben ist. Andernfalls würde versucht werden, den Inhalt der Variable als Variablenname zu interpretieren. Falls die Variable Mit.NNa z.B. den Wert Mustermann hat würde die Formel: 

External$("FeldInfo(Mit.NNa)") 

als Ergebnis nur "[Fehler]" liefern, da es keine Variable namens Mustermann gibt. 

BetragInWorte() 

Wandelt einen übergebenen numerischen Wert in Worte um. Nachkommastellen werden ignoriert. 

Aufruf: BetragInWorte( Wert ) 

wobei Wert = beliebige Nummern-Variable oder Formel mit numerischem Ergebnis. 

Beispiel: 

External$("BetragInWorte(1234,567)") 

ergibt Eins-Zwei-Drei-Vier 

FWBez(), FWKuBez() 

Gibt Bezeichner bzw. Kurzbezeichner einer Währung zurück. 

Aufruf: Funktionsname(Währung) 

wobei Währung = Zeichenfolge mit ISO Währungsbezeichner 

Beispiele: 

External$('FWBez("EUR")') ergibt z.B. „Euro" 

External$('FWBez("DEM")') ergibt z.B. „Deutsche Mark" 

External$('FWKuBez("EUR")') ergibt z.B. „EUR" 

External$('FWKuBez("DEM")') ergibt z.B. „DM" 

External$('PrEinheitToEinheit()') 

Diese Funktion rechnet den Preis einer Einheit in eine andere Einheit um.

  • PrEinheitToEinheit(Preis|AlteEinheit|NeueEinheit) oder
  • PrEinheitToEinheit(Preis|AlteEinheit|NeueEinheit|Alter Preis pro Menge|Neuer Preis pro Menge)

External$("Textbaustein('BEZ_TEXTBAUSTEIN'|'')") 

Mit dieser Funktion können Sie den Inhalt der Textbausteine (Registerkarte: START - Schaltfläche: PARAMETER - SONSTIGE - TEXTBAUSTEINE) im Layout über ein RTF-Feld ausgeben. 

Beispiel: 

External$("Textbaustein('ZB_Bar'|'')") gibt den Inhalt des Textbausteins mit der Kurzbezeichnung ZB_Bar zurück 

External$('PrMgeToPrMge()') 

Rechnet den Preis von einem Mengenpreis in einen anderen Mengenpreis um 

PrMgeToPrMge(Preis|Art.Vk0.Preis|Art.PreisMge|1)') 

Im Artikel - Seite Vk-Preise ist ein Verkaufspreis (Preisgruppe 0) Feld: Art.Vko.Preis und die Information ‚Preise gelten für Menge‘ Feld: Art.Preis.Mge hinterlegt. 

Mit der Funktion ‚PrMgeToPrMge‘ kann man den Preis für einen anderen, frei gewählten Faktor ‚Preise gelten für Menge‘ ausgeben lassen. 

Beispiele: 

Im Artikel hinterlegt: 

Preis Vk0: 200,00 

Preise gelten für Menge: 10 

External$('PrMgeToPrMge(Art.Vk0.Preis|Art.PreisMge|1)') -> 20,00 (Preis pro Stück) 

External$('PrMgeToPrMge(Art.Vk0.Preis|Art.PreisMge|5)') -> 100,00 (Preis pro 5 Stück) 

External$('PrMgeToPrMge(Art.Vk0.Preis|Art.PreisMge|100)') -> 2000,00 (Preis pro 100 Stück) 

Im Artikel hinterlegt: 

Preis Vk0: 200,00 

Preise gelten für Menge: 1 

External$('PrMgeToPrMge(Art.Vk0.Preis|Art.PreisMge|1)') -> 200,00 (Preis pro Stück) 

External$('PrMgeToPrMge(Art.Vk0.Preis|Art.PreisMge|5)') -> 1000,00 (Preis pro 5 Stück) 

External$('PrMgeToPrMge(Art.Vk0.Preis|Art.PreisMge|100)') -> 20000,00 (Preis pro 100 Stück)

External$('GetDataFieldValue("<Variable>")')

Die Funktion "GetDataFieldValue" prüft, ob die als Parameter übergebene Variable existiert. Existiert die Variable, wird der Inhalt der Variablen als String interpretiert und ausgegeben. Existiert die Variable nicht, wird ein Leerstring ausgegeben. Diese Funktion kann verwendet werden, wenn Variablen erst zur Laufzeit erzeugt werden und deshalb nicht immer vorhanden sind.

Beispiel:

External$('GetDataFieldValue("AktVog.Wgr.1.Sum.Net")')

Ist eine Warengruppe mit dem Kennzeichen "Warengruppensumme bereitstellen" vorhanden sowie in den Buchungsparametern das Kennzeichen "Warengruppensummen bilden" aktiv, kann man die entsprechende Summenvariable wie z.B. AktVog.Wgr.1.Sum.Net im Layout verwenden.

External$("SWICO(32|AktVog.SammelSteuer.GPreisSteuerBez|AktVog.SammelSteuer.GPreisNetBet)") bzw. External$("SWICO(33|AktVog.SammelSteuer.GPreisSteuerBez|AktVog.SammelSteuer.GPreisStBet)")

Mit dieser Funktionen lassen sich die Anforderungen zur Ausgabe des QR-Codes in der Schweiz erfüllen (SWICO-Code). Die External$-Funktion mit dem Namen SWICO besitzt 3 Parameter:

ParameterArtInhalt
SWICO-CodeNumerisch kann 32 oder 33 sein
SteuersatzStringInhalt der Sammelsteuer-Variable AktVog.SammelSteuer.GPreisSteuerBez
BetragString
  • bei SWICO-Code 32: Inhalt der Sammelsteuer-Variable AktVog.SammelSteuer.GPreisNetBet
  • bei SWICO-Code 33: Inhalt der Sammelsteuer-Variable AktVog.SammelSteuer.GPreisStBet

Aufruf:

  • Bei SWICO-Code 32: External$("SWICO(32|AktVog.SammelSteuer.GPreisSteuerBez|AktVog.SammelSteuer.GPreisNetBet)")
  • bei SWICO-Code 33: External$("SWICO(33|AktVog.SammelSteuer.GPreisSteuerBez|AktVog.SammelSteuer.GPreisStBet)")

Eine Hilfestellung zu dieser Funktion erhalten Sie in folgendem Bereich der Hilfe: QR-Rechnung: Steuersummenvariable für Ausweisung Steuersatz und Betrag (Schweiz).

  • No labels