13. Juli 2012 13:50
13. Juli 2012 14:10
TransferDate(pDate : Date;pLanguageCode : Code[20]) : Text[30]
IF ((pDate = 0D) OR (pLanguageCode = '')) THEN
EXIT(FORMAT(pDate));
// lcArrDate[1] - Day
// lcArrDate[2] - Month
// lcArrDate[3] - Year
FOR i := 1 TO 3 DO BEGIN
lcArrDate[i] := FORMAT(DATE2DMY(pDate, i));
END;
CASE pLanguageCode OF
'ENU':
EXIT(lcArrDate[3] + '/' + lcArrDate[2] + '/' + lcArrDate[1]);
'DEU':
EXIT(lcArrDate[1] + '.' + lcArrDate[2] + '.' + lcArrDate[3]);
ELSE // as default use ENU
EXIT(lcArrDate[3] + '/' + lcArrDate[2] + '/' + lcArrDate[1]);
END;
13. Juli 2012 14:29
WoF hat geschrieben:Berücksichtigt FORMAT die Sprache des Reports nicht?
Zusatz: Ich meine mich zu erinnern mal eine Tabelle gesehen zu haben wo das Datumsformat abgelegt war wie z. B. '<day>.<month>.<year>'. Erinnert ihr euch zufällig wo?
USDatumsText := FORMAT(DeinDatum,0,3);
USDatumsText := FORMAT(DeinDatum,0,'<Closing><Year>/<Month,2>/<Day,2>');
13. Juli 2012 15:09
Eine solche Tabelle habe ich bisher noch nicht gesehen, aber die Idee ist gut.WoF hat geschrieben:Ich meine mich zu erinnern mal eine Tabelle gesehen zu haben wo das Datumsformat abgelegt war wie z. B. '<day>.<month>.<year>'.
13. Juli 2012 15:17
13. Juli 2012 16:19
17. Juli 2023 08:32
Christoph hat geschrieben:Hallo WoF,
auf die Gefahr hin das ich mich jetzt furchtbar irre (in diesem Fall möge man mich korrigieren), aber soweit ich weiß wird das Datumsformat (genau wie z.B. Dezimaltrenner) durch die Systemsprache (Regional & Language Settings) vorgegeben und können nicht übersteuert werden. Ich habe dafür mal eine Funktion geschrieben, die aus einem beliebigen Datum mit Übergabe des Sparchcodes einen String erzeugt, der dann auf Reports gedruckt werden kann.
Vielleicht hilft dir die ja:
- Code:
TransferDate(pDate : Date;pLanguageCode : Code[20]) : Text[30]
IF ((pDate = 0D) OR (pLanguageCode = '')) THEN
EXIT(FORMAT(pDate));
// lcArrDate[1] - Day
// lcArrDate[2] - Month
// lcArrDate[3] - Year
FOR i := 1 TO 3 DO BEGIN
lcArrDate[i] := FORMAT(DATE2DMY(pDate, i));
END;
CASE pLanguageCode OF
'ENU':
EXIT(lcArrDate[3] + '/' + lcArrDate[2] + '/' + lcArrDate[1]);
'DEU':
EXIT(lcArrDate[1] + '.' + lcArrDate[2] + '.' + lcArrDate[3]);
ELSE // as default use ENU
EXIT(lcArrDate[3] + '/' + lcArrDate[2] + '/' + lcArrDate[1]);
END;
Gruß,
Christoph
17. Juli 2023 08:44
19. Juli 2023 11:28