Ich eröffne hier ein entsprechendes Thema dazu. Bitte benutzt dieses Thema nur für Veröffentlichungen von funktionierenden Beispielen. Für allfällige Diskussionen und Fragen zum FORMAT-Befehl bitte ich euch, jeweils ein eigenes Thema im entsprechenden Forum zu eröffnen. Daraus resultierende, funktionsfähige Beispiele können dann hier angefügt werden.
Besten Dank fĂĽr eure Mithilfe.
Beispiele:
In den FormatString kann man auch Textbausteine einbauen. Als Anwendungsbeispiel ein kleiner Test ob im System die normale DE- Datumsformatierung eingestellt ist.
- Code: Alles auswählen
OBJECT Codeunit 50055 Datumsformat DE
{
OBJECT-PROPERTIES
{
Date=20.10.11;
Time=15:39:47;
Modified=Yes;
Version List=;
}
PROPERTIES
{
OnRun=BEGIN
MESSAGE(FORMAT(TODAY,0,STRSUBSTNO('%1 <Standard Format,0> %2 <Day,2>.<Month,2>.<Year>',Text001,Text002)));
END;
}
CODE
{
VAR
Text001@1000000000 : TextConst 'DEU=Diese Datumsformatierung:;ENU=This date format:';
Text002@1000000001 : TextConst 'DEU=sollte mit dieser identisch sein:;ENU=should be identical to this one:';
BEGIN
END.
}
}
Das Datum im Format TT.MMM ausgeben:
- Code: Alles auswählen
FORMAT(TODAY, 0, '<Day,2>.<Month Text,3>');
Datum/Zeit Stempel im Format YYYYMMDD_HHMMSS (z.B. bei Verwendung als Datei-Suffix):
- Code: Alles auswählen
FORMAT(CURRENTDATETIME, 0, '<Year4><Month,2><Day,2>_<Hour,2><Minute,2><Second,2>')
Ausgabe des Integer-Wertes bei Options-Feldern:
- Code: Alles auswählen
FORMAT(OptionField, 0, '<Number>')
Das Datum 4-Stellig ausgeben:
- Code: Alles auswählen
FORMAT(Buchungsdatum,0,'<Day,2>.<Month,2>.<Year4,4>')
Eine Decimal Zahl mit beliebigen "Tausender-Trennzeichen" ausgeben:
HinweiĂź: Bei einem Hochkomma mĂĽssen 2 Hochkommas geschrieben werden, alle anderen Zeichen einfach!
- Code: Alles auswählen
FORMAT(Preis,0,'<Integer><1000Character,''><Decimal,3><Comma,.>')
Kovertieren in Text und FĂĽllzeichen einfĂĽgen z.B. 000000001.000
- Code: Alles auswählen
FORMAT(Item.Inventory,0,'<Integer,9><Filler Character,0><Decimals,3><Comma,.><Precision,3:3>')
Decimalwert mit 5 Nachkommastellen, trotz DecimalPlaces 2:2:
- Code: Alles auswählen
FORMAT("Standard Cost",0,'<Precision,2:2><Standard Format,0>')
Wenn in einem Export ĂĽber einen Dataport Betragsfelder ausgegeben werden, schneidet der Export die letzten Nullen ab. Aus 50.50 wird 50.5, aus 50.00 nur 50.
Für die weitere Verwendung in einem Serienbrief z.B. ist dies sehr unschön. Abhilfe schafft da folgende Formatierung mit FORMAT:
- Code: Alles auswählen
FORMAT(Rec.Betrag,0,'<Precision,2:2><Standard Format,0>');