...
Der Wert der Variable «Art.Vk0.Preis» wird von der Leitwährung 1 in Leitwährung 2 umgerechnet.
$Calc()
Mit der Funktion $Calc() können Sie die verschiedensten Berechnungen durchführen.
$CALC(<Formel>,<Formatanweisung>,<Nachkommastellen>,<Dezimal Seperator>,<Tausender Seperator>)
Tip | ||
---|---|---|
| ||
Über die nachfolgende Formel können Sie sich den aktuellen Kurs für 1,-€ (welcher in den Parametern eingetragen ist) ausgeben: $BetToWaehr("1,00",<den gewünschten FremdwährungsISO>,EUR) Beispiel: $BetToWaehr("1,00",USD,EUR) |
$Calc(<Formel>,<Formatanweisung>,<Nachkommastellen>,<Dezimal Separator>,<Tausender Separator>)
Mit der Funktion $Calc() können Sie die verschiedensten Berechnungen durchführen.
Es ergeben ich folgenden mögliche Werte:Es ergeben ich folgenden mögliche Werte:
- <Formel>: String Ausdruck von Werten die
...
- berechnet werden +-*/ (Punkt-vor
...
- -Strich)
- <Formatanweisung>: ohne Angabe: 'Betrag' ansonsten 'Menge',
...
- 'Gewicht' oder 'Format'
- <Nachkommastellen>: Anzahl, wie viele Nachkommastellen verwendet werden, maximal
...
- : 9
- <Dezimal
...
- Separator>: nur wirksam bei Formatanweisung: 'Format'. Hier wird der Dezimal Separator angegeben
...
- (
...
- nur ein Zeichen)
...
- .
- <Tausender
...
- Separator>: nur wirksam bei Formatanweisung: 'Format'. Hier wird der Tausender
...
- Separator angegeben
...
- (nur ein Zeichen)
...
- .
Wird der Parameter Format ohne den Parameter <Tausender Seperator> Separator> verwendet, erfolgt die Ausgabe ohne Tausender Trennzeichen.
Beispiele:
...
- $Calc(«Vsd.Gew»*3,'',0)
...
- In diesem Beispiel wird das im Versanddatensatz angegebene Gewicht mit der Zahl 3 multipliziert. Das Ergebnis wird kaufmännisch gerundet und ohne Nachkommastellen dargestellt.
...
- $Calc
Freie Formatierung ohne Tausender Seperator:
...
- («Variable»+1.55,Format,4,
...
- .) = 1234.1234
...
- Freie Formatierung
...
- ohne Tausender Separator.
- $Calc
...
- («Variable»+1.55,Format,5,
...
- .,",") = 1,234
...
- .12345
Freie Formatierung mit Tausender Separator.
Note title Bitte beachten Sie: Im letzten Beispiel ist der letzte Parameter ein , (Komma) womit es eigentlich einen weiteren Parameter darstellen würde. Um dennoch ein , (Komma) als Parameter übergeben zu können, wurde das , (Komma) durch zwei " (Anführungszeichen oben) separiert = ","
...
$Center(string,anzahl,fillchar)
der Der "string" wird zentriert auf die Länge "anzahl" mit dem Füllzeichen "fillchar" aufgefüllt. Wenn das Füllzeichen nicht angegeben ist, wird ein Leerzeichen verwendet.
...
Mit Hilfe der DB-Info-Formeln kann ein Wert aus einer Datentabelle unter Verwendung eines Primärindex abgefragt werden. Es soll beispielsweise
- Beispiel:
- $DBInfo(Vorgang,«Vsd.BelegNr»,AuftrNr)
- Hier soll die Auftragsnummer des Vorgangs beim Export der Versanddaten im Versandmodul mit ausgegeben werden.
Diese steht als Variable im Versandmodul nicht zur Verfügung
...
- , deshalb wird die obige Formel hierfür verwendet.
- Weitere Informationen finden Sie hier: DBInfo-Formeln beim Export
$DeleteChar(delstring,string)
$Delete(delstring, string) in "string" wird "delstring" gelöscht
In "string" werden Einzelzeichen von "delstring" gelöscht
Beispiel: $DeleteChar(".,", "123.456,78") gibt "12345678" zurück
Beispiel: $Delete("123","123.456,78") gibt ".456,78" zurück
$FormatDateTime(<Format-Zeichenkette>,<Datumsvariable>)
Mit der Formel $FormatDateTime(<Format-Zeichenkette>,<Datumsvariable>) kann innerhalb eines Exportes oder einer Tabellenansicht das Datum in verschiedenen Formaten ausgegeben werden.
FormatDateTime formatiert ein Datum. Dabei wird die im ersten Teil angegebene Zeichenkette zur Umformatierung verwendet.
Informationen über die unterstützten Format-Möglichkeiten:
- c
- Zeigt das Datum in dem in Windows angegebenen Format an. Dahinter wird die Uhrzeit dargestellt. Die Uhrzeit erscheint nicht, wenn der Datums-/Zeitwert exakt Mitternacht ergibt.
- d
- Zeigt den Tag als Zahl ohne führende Null an (1-31).
- dd
- Zeigt den Tag als Zahl mit führender Null an (01-31).
- ddd
- Zeigt den Wochentag als Abkürzung (Son-Sam) an.
- dddd
- Zeigt den ausgeschriebenen Wochentag (Sonntag-Samstag) an.
- ddddd
- Zeigt das Datum in dem in Windows hinterlegten Kurzen Datumsformat an.
- dddddd
- Zeigt das Datum in dem in Windows hinterlegten Langen Datumsformat an.
- w
- Zeigt die Kalenderwoche an (1-52).
- m
- Zeigt den Monat als Zahl ohne führende Null an (1-12). Wenn auf den Bezeichner m unmittelbar der Bezeichner h oder hh folgt, werden an Stelle des Monats die Minuten angezeigt.
- mm
- Zeigt den Monat als Zahl mit führender Null an (01-12). Wenn auf den Bezeichner mm unmittelbar der Bezeichner h oder hh folgt, werden an Stelle des Monats die Minuten angezeigt.
- mmm
- Zeigt den Monatsnamen als Abkürzung (Jan-Dez) an.
- mmmm
- Zeigt den ausgeschriebenen Monatsnamen (Januar-Dezember) an.
- yy
- Zeigt das Jahr als zweistellige Zahl an (00-99).
- yyyy
- Zeigt das Jahr als vierstellige Zahl an (0000-9999).
- h
- Zeigt die Stunde ohne führende Null an (0-23).
- hh
- Zeigt die Stunde mit führender Null an (00-23).
- n
- Zeigt die Minute ohne führende Null an (0-59).
- nn
- Zeigt die Minute mit führender Null an (00-59).
- s
- Zeigt die Sekunde ohne führende Null an (0-59).
- ss
- Zeigt die Sekunde mit führender Null an (00-59).
- t
- Zeigt die Uhrzeit in dem in Windows angegebenen Format an.
- tt
- Zeigt die Uhrzeit in einem langen Zeitformat an.
- am/pm
- Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem String 'am' und alle Stunden nach Mittag mit dem String 'pm' an.
Der Bezeichner am/pm kann in Großbuchstaben, in Kleinbuchstaben oder in gemischter Schreibweise eingegeben werden. Die Ausgabe wird entsprechend angepasst.
- Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem String 'am' und alle Stunden nach Mittag mit dem String 'pm' an.
- ampm
- Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem String aus der in Windows hinterlegten Formatierung an.
- a/p
- Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem Zeichen 'a' und alle Stunden nach Mittag mit dem Zeichen 'p' an.
Der Bezeichner a/p kann in Großbuchstaben, in Kleinbuchstaben oder in gemischter Schreibweise eingegeben werden. Die Ausgabe wird entsprechend angepasst.
- Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem Zeichen 'a' und alle Stunden nach Mittag mit dem Zeichen 'p' an.
- /
- Zeigt als Datumstrennzeichen das in Windows angegebene Zeichen an.
- :
- Zeigt als Uhrzeittrennzeichen das in Windows angegebene Zeichen an.
- 'xx'
- Zeichen, die in Hochkommata (') geschrieben sind, werden exakt so ausgegeben.
Beispiel:
- $FormatDateTime(w,«VPo.LiefDat»)
- Im Export der Vorgangspositionen kann dann folgende Formel hinterlegt werden, um die Kalenderwoche aus dem Lieferdatum der einzelnen Positionen auszugeben
$GetAktBzr()
Mit dieser Funktion wird das Benutzerkürzel des aktuellen Benutzers ausgegeben.
$GetAktDate()
Mit dieser Funktion wird das aktuelle Programmdatum ausgegeben.
UI Button | ||||
---|---|---|---|---|
|
$IncDate([Datum][,+Tage][,+Monate])
Durch diese Formel können zu einem Datum sowohl Tage als auch Monate addiert werden.
Beachten Sie:
"Tage" darf auch Null und negativ sein (negative Werte werden in Abzug gebracht)
"Monate" darf auch Null und negativ sein (negative Werte werden in Abzug gebracht)
Wird nur IncDate([Datum]) angegeben, so wird genau ein Tag zum Datum addiert.
UI Button | ||||
---|---|---|---|---|
|
$DiffDate([vonDatum],[bisDatum])
DiffDate ermittelt die Anzahl der Tage zwischen zwei Daten.
UI Button | ||||
---|---|---|---|---|
|
$Left(string,anzahl,fillchar)
Der "string" wird linksbündig auf die Länge "anzahl" mit dem Füllzeichen "fillchar" aufgefüllt
Beispiel: $Left("test", 5, 0) "test0" zurück
$Left("test", 3, 0) gibt "tes" zurück
UI Button | ||||
---|---|---|---|---|
|
$Length()
Gibt die Zeilenlänge zurück.
Beispiel: Selektion1 enthält: Ich bin ein Test!
Die Funktion "$length(Sel1)" liefert den Wert 17 zurück.
UI Button | ||||
---|---|---|---|---|
|
$Mid(string,start,anzahl)
In "string" werden ab "start" "anzahl" Zeichen zurückgeliefert
Beispiel: $Mid(testen, 2, 3) gibt "est" zurück
$Right(string,anzahl,fillchar)
Der "string" wird rechtsbündig auf die Länge "anzahl" mit dem Füllzeichen "fillchar" aufgefüllt
Beispiel: $Right("test",5,0) "0test" zurück
$NurHausNr()
Bei einem Aufruf $NurHausNr() wird nur die Hausnummer zurückgegeben.
Diese Funktion kann auch je Land mit Hilfe eines RegEx (Regulären Ausdrucks) weiter spezifiziert werden.
Hier finden Sie noch weitere Informationen: Export/Regel/Layout: Reguläre Ausdrücke für Funktionen $NurStrasse() und $NurHausNr()
$NurStrasse()
Bei einem Aufruf $NurStrasse() wird nur die Strasse zurückgegeben.
Diese Funktion kann auch je Land mit Hilfe eines RegEx (Regulären Ausdrucks) weiter spezifiziert werden.
Hier finden Sie noch weitere Informationen: Export/Regel/Layout: Reguläre Ausdrücke für Funktionen $NurStrasse() und $NurHausNr()
$NurOrt()
Bei einem Aufruf $NurOrt(Bad Kreuznach ORTSTEIL Winzenheim') wird 'Bad Kreuznach' zurückgegeben. Die Groß-/Kleinschreibung wird beim Text "ORTSTEIL" nicht beachtet.
$NurOrtsteil()
Bei einem Aufruf $NurOrtsteil(Bad Kreuznach ORTSTEIL Winzenheim') wird 'Winzenheim' zurückgegeben. Die Groß-/Kleinschreibung wird beim Text "ORTSTEIL" nicht beachtet.
UI Button | ||||
---|---|---|---|---|
|
$ToDate()
Mit dieser Funktion kann ein String-Feld in ein Datumsformat gewandelt werden.
$Pos([Suchstring],[Text])
Die Funktion Pos() steht für Regeln, Filter und Exporte, Importe sowie für die Bearbeitung von E-Mail-Layouts zur Verfügung.
Der Rückgabewert der Funktion zeigt die erste Stelle im Suchstring an, an dem der Suchbegriff beginnt.
Beispiel:
- $Pos(aa,bbb) bedeutet: es wird im Text "bbb" nach "aa" gesucht; das Ergebnis = '' (leer), weil im Text nichts gefunden wurde
- $Pos(c,abc) bedeutet: es wird im Text "abc" nach "c" gesucht; das Ergebnis = 3, weil das "c" im Text an 3. Stelle steht
In verschiedenen Konstellationen kann es dazu kommen, dass die Funktion keinen Rückgabewert liefert. In diesen Fällen ist eine Variante der Funktion zu verwenden, die einen Vorgabewert beinhaltet:
$Pos(gesuchter Text,Variable,optionaler Vorgabewert)
$Replace(Text,Suchtext,Ersetzungstext)
Funktionsaufbau: $Replace(Text,Suchtext,Ersetzungstext)
Mit dieser Funktion kann beim Export in eine Textdatei ein Zeichen ersetzt werden.
Beispiel 1:
Sie möchten alle Artikel mit Artikel-Bezeichnungen exportieren. In der Artikelbezeichnung soll jedoch die Bezeichnung "Einfarbig" durch "Unifarben" ersetzt werden. Beim Export muss für die Artikelbezeichnung 1 daher folgende Formel hinterlegt werden:
$Replace(«Art.Bez1»,Einfarbig,Unifarben)
Beispiel 2:
Beim Export der Artikel sollen in der Artikelkurzbezeichnung enthaltene Kommas durch ein x ersetzt werden.
$Replace("«Art.KuBez1»",",",x)
Beachten Sie: Text und Suchtext müssen in Anführungszeichen angegeben werden.
Note | ||
---|---|---|
| ||
Die Replace-Funktion unterscheidet nicht zwischen Groß- und Kleinschreibung beim Ersetzen. Beispiel: Bei einer Replace-Funktion: $Replace(«Art.Bez1»,Ä,ae), die den Großbuchstaben "Ä" durch "ae" ersetzen soll, wird ebenfalls auch der Kleinbuchstabe "ä" durch ein "ae" ersetzt. |
UI Button | ||||
---|---|---|---|---|
|
$Hash(String-Variable)
Mit der Funktion $Hash(String-Variable) wird ein MD5-Hashwert aufgrund des String-Wertes erzeugt.
Beispiel:
Es soll für die Projektnummer ein MD5-Hashwert erstellt werden, welcher dann in einer E-Mail (aus der Datenbank Kontakte) als Link an einen Kunden gesendet wird. Der Link darf nicht im Klartext lesbar sein.
Muster-Syntax: http://www.ihre-webseite.de/umfrage.php?id=PLATZHALTER-HASH [^]
Den Syntax $Hash(«Kkt.PrjNr») platzieren Sie an der Stelle von PLATZHALTER-HASH.
Daraus ergibt sich: http://www.ihre-webseite.de/umfrage.php?id=$Hash(«Kkt.PrjNr»)
Bei der Ausgabe / dem Export ist an dieser Stelle dann der HASH-Wert zu dem Rückgabewert der Variable «Kkt.PrjNr» zu finden.
Note | ||
---|---|---|
| ||
Klammern in Strings (Texten) müssen in doppelten Anführungszeichen eingeschlossen werden. Beispiel: $Cond(«OPo.ZahlBed»='per Lastschrifteinzug "("mtl. Zahlweise")"', [...] Erklärung: Da im Datensatz des Offenen Posten in den Zahlungsbedingungen der Ausdruck 'per Lastschrifteinzug (mtl. Zahlweise)' hinterlegt ist, würden die beiden Klammern in der Cond-Bedingung dazu führen, dass diese im String ausgewertet würden. Daher müssen die Klammern () mit doppelten Anführungszeichen "(" sowie ")" auskommentiert werden. |
Nachfolgende Exportfunktionen werden häufig beim Datenaustausch mit einem Online-Shop oder mit anderen Datenbanken sowie für das Erstellen einer Hyperlink-Regel verwendet.
UI Button | ||||
---|---|---|---|---|
|
$UrlEncode()
Die Funktion URL-Encoding (auch Prozentkodierung genannt) kodiert alle Zeichen außerhalb von ASCII in das URL-Format. Die Kodierung findet unter Verwendung bestimmter Zeichen des ASCII-Zeichensatzes statt. Ohne diese Kodierung wären einige Informationen nicht in einer URL darstellbar. Beispielsweise muss das Leerzeichen in einer URL durch eine andere Zeichenfolge übergeben werden, da ein Browser sonst das Leerzeichen als Ende der URL interpretieren würde. In microtech büro+ wird z. B. als reserviertes Zeichen ein Plus ("+") für das Leerzeichen verwendet. Weitere Informationen finden Sie auch in nachfolgendem Wikipedia-Artikel: https://www.wikiwand.com/de/URL-Encoding (Externer Link).
Note | ||
---|---|---|
| ||
In microtech büro+ ist bei der Nutzung des URL-Encoding eine Besonderheit zu beachten:
Das Pipe-Zeichen erzeugen Sie durch diese Tastenkombination: Mögliche Flags sind:
Es gilt: RFC3986 entscheidet darüber, welche Zeichen gewandelt werden. NoUTF8 entscheidet über das Format. Beispiel-Aufruf, in welchem NoUTF8 und RFC3986 Anwendung finden:
In den Anführungszeichen der Funktion stehen die für die im URL-Encoding verwendeten Zeichen. Nach dem Kommazeichen folgen die Flags. |
$AnsiToUtf8()
Diese Funktion kodiert alle Zeichen von ANSI nach UTF8
Beispiele:
aus Jürgen Müller wird im URL-Format: J%FCrgen+M%FCller
aus Jürgen Müller wird im UTF8-Format: Jürgen%20Müller
Beispiel für eine Hyperlink-Regel für die Google-Suche nach einem Ansprechpartner-Datensatz mit Vorname und Name:
http://www.google.de/search?q=$UrlEncode(«Asp.VNa» «Asp.NNa»)
Dadurch wird folgende Seite aufgerufen:
http://www.google.de/search?q=J%FCrgen+M%FCller
$WortweiseGK([Variable]): Groß- und Kleinschreibung bei Formelerstellung normieren
Über die Funktion $WortweiseGK([Variable]) lässt sich der Text einer Variable formatieren. So wird der erste Buchstabe sowie ein auf Trennzeichen folgender Buchstabe jeweils groß geschrieben, alle anderen werden klein geschrieben.
Info | ||
---|---|---|
| ||
Durch diese Normierung lassen sich Formeln von der Logik her so aufbauen, dass die Groß- / Kleinschreibung im Wert der Variable erwartbar ist. |
Beispiel 1:
Ein Variablenwert "server" wird durch das Normieren zu "Server". Ein Variablenwert "SERVER" wird durch das Normieren ebenfalls zu "Server". Der erste Buchstabe wird groß ausgegeben, die folgenden Buchstaben klein.
Beispiel 2:
Ist der Wert einer Variable - z. B. der einer Artikelbezeichnung - "BaDaBum Kaugummi", so wird durch diese Funktion der Name auf "Badabum Kaugummi" normiert, da der erste Buchstabe sowie auf ein Trennzeichen folgender Buchstabe groß geschrieben werden, der Rest klein.
UI Button | ||||
---|---|---|---|---|
|
Exportregeln für den Anlagenverlauf
$AnlVerlauf()
Mit der Funktion: $AnlVerlauf() können alle Betrags-Werte des Anlagenverlaufs (Register: VERLAUF) ausgelesen und über einen Export in eine Textdatei ausgegeben werden. Der Rückgabewert erfolgt in der Mandantenwährung.
UI Expand | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
Der Formel $AnlVerlauf() sind für den Export drei Parameter mitzugeben:
- Anlagennummer
- Wirtschaftsjahr (z. B. aus einem Selektionsfeld der Anlage)
- Feldname für Rückgabewert (z. B. "Afa-Betrag", "Restwert", Sonderabschreibungsbetrag, "InvestitionsAbzugsBetrag", "Kumuliert", "sonstige AfA", etc.)
Optional kann auch ein vierter Parameter mitgegeben werden:
- Anlagennummer
- Wirtschaftsjahr (z. B. aus einem Selektionsfeld der Anlage)
- Periode
- Feldname für Rückgabewert (z. B. "Afa-Betrag", "Restwert", Sonderbetrag, "InvestitionsAbzugsBetrag", "Kumuliert", "sonstige AfA", etc.)
Gestalten Sie entsprechend das Export-Layout.
Um Ihnen den Aufbau einer Formel mit der Funktion: $AnlVerlauf() zu demonstrieren, finden Sie anbei folgendes Beispiel.
Aus den Anlagen-Datensätzen soll für das Jahr 2022 aus dem Register: VERLAUF für jeden Datensatz der AfA-Betrag, der kumulierte Betrag sowie der Restwert exportiert werden. Zusätzlich soll der Export auch die Anlagennummer und Bezeichnung sowie Anschaffungsdatum, Anschaffungskosten und Nutzungsdauer ausweisen.
UI Expand | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||
Die Werte aus dem Register: VERLAUF sehen in diesem Beispiel folgendermaßen aus.
Das Exportlayout kann nun über die verfügbaren Export-Felder aufgebaut werden und der Abfrage nach den Werten aus dem Register: VERLAUF des Datensatzes:
Legen Sie nun das Export-Layout im Bereich: BUCHHALTUNG - STAMMDATEN - Register: ANLAGEN - Schaltfläche: SCHNITTSTELLEN - "Anlagen exportieren" an. Die Bezugnahme auf das jeweilige Feld des Vorgaben-Registers ist in einfache 'Hochkommas' (Apostrophe) gesetzt. |
Das Export-Layout kann beispielsweise so aufgebaut sein
Code Block |
---|
«Anl.AnlNr»;«Anl.Bez»;«Anl.ADat»;«Anl.AKosten»;«Anl.NutzDauer»;Verlauf des Wirtschaftsjahrs 2022;$AnlVerlauf(«Anl.AnlNr»,2022,'AfABet');$AnlVerlauf(«Anl.AnlNr»,2022,'Kumuliert');$AnlVerlauf(«Anl.AnlNr»,2022,'Restwert') |
Ergebnis des Exports:
Sie erhalten die angeforderten Werte zurück. Die über die Funktion: $AnlVerlauf abgerufenen drei Werte befinden sich ebenfalls im Export.
1;TESTAnlage;31.01.2019;11.111,00;5;Verlauf des Wirtschaftsjahrs 2022;2.189,00;9.373,00;1.638,00
2;Testi Anlage2;31.01.2019;10.000,00;5;Verlauf des Wirtschaftsjahrs 2022;1.800,00;7.200,00;1.800,00
Lösung: Hier muss die Formel
$DBInfo(Vorgang,«Vsd.BelegNr»,AuftrNr)
in das Export-Layout eingetragen werden.
Erläuterung zum Aufbau der Formel:
$DBInfo(Name der Datentabelle,Schlüsselwert[e],Zielfeldname)
Name der Datentabelle: Name der Datentabelle, aus der ein Wert abgefragt werden soll.
Schlüsselwert[e]: kann beliebigen Typs sein. Sollte jedoch zum 1. Feld des Primärindex der abzufragenden Tabelle passen.
Zielfeldname: Optionaler Name des Feldes, dessen Wert zurück geliefert werden soll. Falls dieser Parameter ausgelassen wird, wird dieselbe Zeichenfolge zurückgegeben mit der der Datensatz z. B. beim Löschen bezeichnet wird.
$DeleteChar(delstring,string)
in "string" werden Einzelzeichen von "delstring" gelöscht
Beispiel: $DeleteChar(".,", "123.456,78") gibt "12345678" zurück $Delete(delstring, string) in "string" wird "delstring" gelöscht
Beispiel: $Delete("123","123.456,78") gibt ".456,78" zurück
$FormatDateTime(<Format-Zeichenkette>,<Datumsvariable>)
Mit der Formel $FormatDateTime(<Format-Zeichenkette>,<Datumsvariable>) kann innerhalb eines Exportes oder einer Tabellenansicht das Datum in verschiedenen Formaten ausgegeben werden.
FormatDateTime formatiert ein Datum. Dabei wird die im ersten Teil angegebene Zeichenkette zur Umformatierung verwendet.
Informationen über die unterstützten Formatmöglichkeiten:
c
Zeigt das Datum in dem in Windows angegebenen Format an. Dahinter wird die Uhrzeit dargestellt. Die Uhrzeit erscheint nicht, wenn der Datums-/Zeitwert exakt Mitternacht ergibt.
d
Zeigt den Tag als Zahl ohne führende Null an (1-31). dd Zeigt den Tag als Zahl mit führender Null an (01-31).
ddd
Zeigt den Wochentag als Abkürzung (Son-Sam) an. dddd Zeigt den ausgeschriebenen Wochentag (Sonntag-Samstag) an.
ddddd
Zeigt das Datum in dem in Windows hinterlegten Kurzen Datumsformat an. dddddd Zeigt das Datum in dem in Windows hinterlegten Langen Datumsformat an.
w
Zeigt die Kalenderwoche an (1-52). m Zeigt den Monat als Zahl ohne führende Null an (1-12). Wenn auf den Bezeichner m unmittelbar der Bezeichner h oder hh folgt, werden an Stelle des Monats die Minuten angezeigt.
m
Zeigt den Monat als Zahl ohne führende Null an (1-12). Wenn auf den Bezeichner m unmittelbar der Bezeichner h oder hh folgt, werden an Stelle des Monats die Minuten angezeigt.
mm
Zeigt den Monat als Zahl mit führender Null an (01-12). Wenn auf den Bezeichner mm unmittelbar der Bezeichner h oder hh folgt, werden an Stelle des Monats die Minuten angezeigt. mmm Zeigt den Monatsnamen als Abkürzung (Jan-Dez) an.
mmmm
Zeigt den ausgeschriebenen Monatsnamen (Januar-Dezember) an. yy Zeigt das Jahr als zweistellige Zahl an (00-99).
yyyy
Zeigt das Jahr als vierstellige Zahl an (0000-9999).
h
Zeigt die Stunde ohne führende Null an (0-23).
hh
Zeigt die Stunde mit führender Null an (00-23).
n
Zeigt die Minute ohne führende Null an (0-59).
nn
Zeigt die Minute mit führender Null an (00-59).
s
Zeigt die Sekunde ohne führende Null an (0-59).
ss
Zeigt die Sekunde mit führender Null an (00-59).
t
Zeigt die Uhrzeit in dem in Windows angegebenen Format an.
tt\
Zeigt die Uhrzeit in einem langen Zeitformat an. am/pm Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem String 'am' und alle Stunden nach Mittag mit dem String 'pm' an. Der Bezeichner am/pm kann in Großbuchstaben, in Kleinbuchstaben oder in gemischter Schreibweise eingegeben werden. Die Ausgabe wird entsprechend angepasst.
a/p
Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem Zeichen 'a' und alle Stunden nach Mittag mit dem Zeichen 'p' an. Der Bezeichner a/p kann in Großbuchstaben, in Kleinbuchstaben oder in gemischter Schreibweise eingegeben werden. Die Ausgabe wird entsprechend angepasst. ampm Verwendet die 12-Stunden-Zeitanzeige für den vorhergehenden Bezeichner h oder hh und zeigt alle Stunden vor Mittag mit dem String aus der in Windows hinterlegten Formatierung an.
/
Zeigt als Datumstrennzeichen das in Windows angegebene Zeichen an. : Zeigt als Uhrzeittrennzeichen das in Windows angegebene Zeichen an.
'xx'/"xx"
Zeichen, die in einfache oder doppelte Anführungszeichen
Im Export der Vorgangspositionen kann dann folgende Formel hinterlegt werden, um die Kalenderwoche aus dem Lieferdatum der einzelnen Positionen auszugeben:
$FormatDateTime(w,«VPo.LiefDat»)
$GetAktBzr()
Mit dieser Funktion wird das Benutzerkürzel des aktuellen Benutzers ausgegeben.
$GetAktDate()
Mit dieser Funktion wird das aktuelle Programmdatum ausgegeben.
UI Button | ||||
---|---|---|---|---|
|
$IncDate([Datum][,+Tage][,+Monate])
Durch diese Formel können zu einem Datum sowohl Tage als auch Monate addiert werden.
Beachten Sie:
"Tage" darf auch Null und negativ sein (negative Werte werden in Abzug gebracht)
"Monate" darf auch Null und negativ sein (negative Werte werden in Abzug gebracht)
Wird nur IncDate([Datum]) angegeben, so wird genau ein Tag zum Datum addiert.
UI Button | ||||
---|---|---|---|---|
|
$DiffDate([vonDatum],[bisDatum])
DiffDate ermittelt die Anzahl der Tage zwischen zwei Daten.
UI Button | ||||
---|---|---|---|---|
|
$Left(string,anzahl,fillchar)
der "string" wird linksbündig auf die Länge "anzahl" mit dem Füllzeichen "fillchar" aufgefüllt
Beispiel: $Left("test", 5, 0) "test0" zurück
$Left("test", 3, 0) gibt "tes" zurück
UI Button | ||||
---|---|---|---|---|
|
$Length()
Gibt die Zeilenlänge zurück.
Beispiel: Selektion1 enthält: Ich bin ein Test!
Die Funktion "$length(Sel1)" liefert den Wert 17 zurück.
UI Button | ||||
---|---|---|---|---|
|
$Mid(string,start,anzahl)
in "string" werden ab "start" "anzahl" Zeichen zurückgeliefert
Beispiel: $Mid(testen, 2, 3) gibt "est" zurück
$Right(string,anzahl,fillchar)
der "string" wird rechtsbündig auf die Länge "anzahl" mit dem Füllzeichen "fillchar" aufgefüllt
Beispiel: $Right("test",5,0) "0test" zurück
$NurHausNr()
Bei einem Aufruf $NurHausNr() wird nur die Hausnummer zurückgegeben.
$NurStrasse()
Bei einem Aufruf $NurStrasse() wird nur die Strasse zurückgegeben.
$NurOrt()
Bei einem Aufruf $NurOrt(Bad Kreuznach ORTSTEIL Winzenheim') wird 'Bad Kreuznach' zurückgegeben. Die Groß-/Kleinschreibung wird beim Text "ORTSTEIL" nicht beachtet.
$NurOrtsteil()
...
UI Button | |||
---|---|---|---|
|
...
$ToDate()
Mit dieser Funktion kann ein String-Feld in ein Datumsformat gewandelt werden.
$Pos([Suchstring],[Text])
...
|
Lohnbuchhaltung: Spezielle Exportfunktionen
Als Exportfunktion und bei Bedingungen (nicht im Druck) stehen die Funktion $MitBvh(), $MitBvg(), $MitFehlTage() für eine Ausgabe in eine Textdatei zur Verfügung.
Der Rückgabewert der Funktion zeigt die erste Stelle im Suchstring an, an dem der Suchbegriff beginnt.
Beispiel:
- $Pos(aa,bbb) bedeutet: es wird im Text "bbb" nach "aa" gesucht; das Ergebnis = '' (leer), weil im Text nichts gefunden wurde
- $Pos(c,abc) bedeutet: es wird im Text "abc" nach "c" gesucht; das Ergebnis = 3, weil das "c" im Text an 3. Stelle steht
In verschiedenen Konstellationen kann es dazu kommen, dass die Funktion keinen Rückgabewert liefert. In diesen Fällen ist eine Variante der Funktion zu verwenden, die einen Vorgabewert beinhaltet:
$Pos(gesuchter Text,Variable,optionaler Vorgabewert)
$Replace(Text,Suchtext,Ersetzungstext)
Funktionsaufbau: $Replace(Text,Suchtext,Ersetzungstext)
Mit dieser Funktion kann beim Export in eine Textdatei ein Zeichen ersetzt werden.
Beispiel 1:
Sie möchten alle Artikel mit Artikel-Bezeichnungen exportieren. In der Artikelbezeichnung soll jedoch die Bezeichnung "Einfarbig" durch "Unifarben" ersetzt werden. Beim Export muss für die Artikelbezeichnung 1 daher folgende Formel hinterlegt werden:
$Replace(«Art.Bez1»,Einfarbig,Unifarben)
Beispiel 2:
Beim Export der Artikel sollen in der Artikelkurzbezeichnung enthaltene Kommas durch ein x ersetzt werden.
$Replace("«Art.KuBez1»",",",x)
Beachten Sie: Text und Suchtext müssen in Anführungszeichen angegeben werden.
UI Button | ||||
---|---|---|---|---|
|
$Hash(String-Variable)
Mit der Funktion $Hash(String-Variable) wird ein MD5-Hashwert aufgrund des String-Wertes erzeugt.
Beispiel:
Es soll für die Projektnummer ein MD5-Hashwert erstellt werden, welcher dann in einer E-Mail (aus der Datenbank Kontakte) als Link an einen Kunden gesendet wird. Der Link darf nicht im Klartext lesbar sein.
Muster-Syntax: http://www.ihre-webseite.de/umfrage.php?id=PLATZHALTER-HASH [^]
Den Syntax $Hash(«Kkt.PrjNr») platzieren Sie an der Stelle von PLATZHALTER-HASH.
Daraus ergibt sich: http://www.ihre-webseite.de/umfrage.php?id=$Hash(«Kkt.PrjNr»)
Bei der Ausgabe / dem Export ist an dieser Stelle dann der HASH-Wert zu dem Rückgabewert der Variable «Kkt.PrjNr» zu finden.
Note | ||
---|---|---|
| ||
Klammern in Strings (Texten) müssen in doppelten Anführungszeichen eingeschlossen werden. Beispiel: $Cond(«OPo.ZahlBed»='per Lastschrifteinzug "("mtl. Zahlweise")"', [...] Erklärung: Da im Datensatz des Offenen Posten in den Zahlungsbedingungen der Ausdruck 'per Lastschrifteinzug (mtl. Zahlweise)' hinterlegt ist, würden die beiden Klammern in der Cond-Bedingung dazu führen, dass diese im String ausgewertet würden. Daher müssen die Klammern () mit doppelten Anführungszeichen "(" sowie ")" auskommentiert werden. |
Nachfolgende Exportfunktionen werden häufig beim Datenaustausch mit einem Online-Shop oder mit anderen Datenbanken sowie für das Erstellen einer Hyperlink-Regel verwendet.
UI Button | ||||
---|---|---|---|---|
|
UrlEncode()
Die Funktion URL-Encoding (auch Prozentkodierung genannt) kodiert alle Zeichen außerhalb von ASCII in das URL-Format. Die Kodierung findet unter Verwendung bestimmter Zeichen des ASCII-Zeichensatzes statt. Ohne diese Kodierung wären einige Informationen nicht in einer URL darstellbar. Beispielsweise muss das Leerzeichen in einer URL durch eine andere Zeichenfolge übergeben werden, da ein Browser sonst das Leerzeichen als Ende der URL interpretieren würde. In microtech büro+ wird z. B. als reserviertes Zeichen ein Plus ("+") für das Leerzeichen verwendet. Weitere Informationen finden Sie auch in nachfolgendem Wikipedia-Artikel: https://www.wikiwand.com/de/URL-Encoding (Externer Link).
...
title | Beachten Sie: |
---|
In microtech büro+ ist bei der Nutzung des URL-Encoding eine Besonderheit zu beachten:
- Die Funktion erwartet als ersten Parameter den umzuwandelnden String
- Als zweiter Parameter können Flags angegeben werden. Bei mehreren Parametern sind diese durch Pipes zu trennen: "|" - dabei sind die Reihenfolge sowie Groß-/Kleinschreibung nicht von Belang
Das Pipe-Zeichen erzeugen Sie durch diese Tastenkombination:
Mögliche Flags sind:
- NoUTF8: Nutzt als Encoding "Windows 1252", vgl.: https://www.wikiwand.com/de/Windows-1252 (Externer Link). Wird das Flagg "NoUTF8" nicht gesetzt, wird UTF8 genutzt
- RFC3986: Mit diesem Flag werden die reservierten Zeichen (:/?#[]@!$&'()*+,;=) in "%20" gewandelt
- Ohne das Flag RFC 3986 entspricht die Implementierung RFC 1738 → Leerzeichen werden zu "+" (https://datatracker.ietf.org/doc/html/rfc1738 - Externer Link)
- Mit dem Flag RFC 3986 entsprechend dem RFC 3986-Standard verarbeitet → Leerzeichen werden zu "%20" (https://datatracker.ietf.org/doc/html/rfc3986 - Externer Link)
Es gilt:
RFC3986 entscheidet darüber, welche Zeichen gewandelt werden. NoUTF8 entscheidet über das Format.
Beispiel-Aufruf, in welchem NoUTF8 und RFC3986 Anwendung finden:
Code Block |
---|
$UrlEncode("John's $m@rt*Software",RFC3986|NoUTF8) |
In den Anführungszeichen der Funktion stehen die für die im URL-Encoding verwendeten Zeichen. Nach dem Kommazeichen folgen die Flags.
Funktion | Info | Beispiel | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$MitBvh"MitBvh" ist das Mitarbeiterbeschäftigungsverhältnis | Beschäftigungsverhältnis: "MitBvh" greift auf folgenden Bereich zu: Über $MitBvh können Sie alle exportierbaren Felder des Beschäftigungsverhältnis aufgrund eines Datums auslesen.
Aufbau der Formel: Parameter für $MitBvh([Mitarbeiternummer],[Datum für den Stand],[Feldname für Rückgabewert], [Optional: Rückgabewert wenn Wert = Leer-String] ) | Hinweis zur Nutzung: $MitBvh([Mitarbeiternummer],[Datum für den Stand],['Feldname für Rückgabewert' ]) Beispiel: «Mit.MitNr»;«Mit.VNa»;«Mit.NNa»;Gehalt;$MitBvh(«Mit.MitNr»,01.01.2023,' Gehalt '); | |||||||||||
$MitBvg"MitBvg" ist die Mitarbeiterbeschäftigungsvorgabe | Beschäftigungsvorgabe: Über $MitBvg können Sie alle exportierbaren Felder der Beschäftigungsvorgabe aufgrund eines Datums auslesen. "MitBvg" greift auf folgenden Bereich und Register zu:
Aufbau der Formel: Parameter für $MitBvg([Mitarbeiternummer],[Datum für den Stand],[Feldname für Rückgabewert], [Optional: Rückgabewert wenn Wert = Leer-String] ) | Hinweis zur Nutzung: $MitBvg([Mitarbeiternummer],[Datum für den Stand],['Feldname für Rückgabewert']) Beispiel: «Mit.MitNr»;«Mit.VNa»;«Mit.NNa»;Gehalt;$MitBvg(«Mit.MitNr»,01.01.2023,' Gehalt '); | |||||||||||
$MitFehlTage | Über $MitFehlTage können Sie die Summe der Fehltage über die Fehlzeiten eines Mitarbeiters aufgrund eines Datums auslesen. Parameter für $MitFehlTage([Mitarbeiternummer],[Datum für den Stand],[Optional: Semikolon separierte Fehlzeiten, die nicht beachtet werden sollen], [Optional: Semikolon separierte Fehlzeiten, die beachtet werden sollen]) | Hinweis zur Nutzung: $MitFehlTage([Mitarbeiternummer],[Datum für den Stand]) Hinweis zur Mitgabe der Parameter: $MitFehlTage( 1 ,'1.10.2023') liefert die Summer der Fehltage über alle Fehlzeiten des Mitarbeiter 1 für den Monat Oktober 2023
|
Beispiel zur Ausgabe des Gehalts in Exporten:
Es wird ein Export-eingerichtet mit folgenden Ausgaben
- Mitarbeiternummer [Mit.MitNr]
- Vorname [Mit.VNa]
- Nachname [Mit.NNa]
- Gehalt: Diese Ausgabe soll rein als textliche Hervorhebung im Export dienen
- $MitBvg( «Mit.MitNr» , 01.01.2023 , 'Gehalt' ): Über diese Funktion soll das Feld: "Gehalt" der Beschäftigungsvorgabe aufgrund des Datums ausgegeben werden. Die Bezugnahme auf das Feld: 'Gehalt' ist in einfache 'Hochkommas' (Apostrophe) gesetzt.
Der Export kann folgendermaßen aufgebaut sein:
Code Block |
---|
«Mit.MitNr»;«Mit.VNa»;«Mit.NNa»;Gehalt;$MitBvg(«Mit.MitNr»,01.01.2023,'Gehalt'); |
Mit Durchführen des Datenexportes werden die Mitarbeiter nach Nummern mit Vorname, Nachname, dem Wort "Gehalt" und der Summe, die aufgrund der Beschäftigungsvorgabe zu diesem Datum gilt, herangezogen.
AnsiToUtf8()
Diese Funktion kodiert alle Zeichen von ANSI nach UTF8
Beispiele:
aus Jürgen Müller wird im URL-Format: J%FCrgen+M%FCller
aus Jürgen Müller wird im UTF8-Format: Jürgen%20Müller
Beispiel für eine Hyperlink-Regel für die Google-Suche nach einem Ansprechpartner-Datensatz mit Vorname und Name:
http://www.google.de/search?q=$UrlEncode(«Asp.VNa» «Asp.NNa»)
Dadurch wird folgende Seite aufgerufen:
http://www.google.de/search?q=J%FCrgen+M%FCller
$WortweiseGK([Variable]): Groß- und Kleinschreibung bei Formelerstellung normieren
...