Anmelden

View Full Version : RPG Routine Datum



GEA
25-11-04, 13:05
Hallo Leute,

kann mir Jemand erklären, wie ich das unter RPG lösen kann,
ich möchte ein beliebiges Datum eingeben und zurück soll
der Wochentag Montag, Dienstag, Mittwoch usw. kommen.

Vielen Dank !!!!!!

Fuerchau
25-11-04, 13:11
RPG liefert das leider so nicht, aber SQL:

d MyDate s d
d MyDay s 3 0

/exec sql set :MyDay = DAYOFWEEK(:MyDate)
/end-exec

1=Sonntag, 2=Montag....

B.Hauser
25-11-04, 13:58
Falls Du bereits unter Release V5R3M0 arbeitest, kannst Du mit embedded SQL auch direkt den Namen des Wochentags ermittel.

C/EXEC SQL Set :MyDayName = DayName(:MyDate)
C/END-EXEC

Ansonsten würde ich die Scalare Funktion DAYOFWEEK_ISO der scalaren Funktion DAYOFWEEK vorziehen.
DAYOFWEEK_ISO ermittelt den Wochentag nach ISO-Richtlinien, also Montag ist der 1. Wochentag und Sonntag der 7.

Birgitta

BenderD
25-11-04, 14:13
Hallo,

bringt natürlich alles nicht den Wochentag auf deutsch zurück und die Datenbank zu bemühen, will oder kann auch nicht jeder (Lizenzproblematik).
Geht ntürlich auch zu Fuss mit eigener Procedure (habe ich mal in Midrange Magazin zu geschrieben), schöne Fingerübung für Procedure programmieren.
- Differenz zu Referenz Sonntag berechnen
- Division modulo 7
- entsprechendes Element einer Feldgruppe mit den Wochentagen in Landessprache z.B.: Samstag, Sonnabend, Samstägle oder Sommsdaag, je nachdem.

mfg

Dieter Bender


Falls Du bereits unter Release V5R3M0 arbeitest, kannst Du mit embedded SQL auch direkt den Namen des Wochentags ermittel.

C/EXEC SQL Set :MyDayName = DayName(:MyDate)
C/END-EXEC

Ansonsten würde ich die Scalare Funktion DAYOFWEEK_ISO der scalaren Funktion DAYOFWEEK vorziehen.
DAYOFWEEK_ISO ermittelt den Wochentag nach ISO-Richtlinien, also Montag ist der 1. Wochentag und Sonntag der 7.

Birgitta

B.Hauser
25-11-04, 14:19
bringt natürlich alles nicht den Wochentag auf deutsch zurück


Wer behauptet denn, dass der Wochentag nicht auf Deutsch zurückkommt?

Wenn in meiner Message-File QCPFMSG in der Message-Id CPX9034 die Wochentage auf deutsch hinterlegt sind, werden sie auch auf Deutsch ermittelt werden!

Birgitta

BenderD
25-11-04, 14:30
@Birgitta,

wusste ich nicht, ist allerdings m.E. undokumentiert, sprich: kann sich ohne Ankündigung ändern - eine Brücke über die ich eher nicht gehen würde.

mfg

Dieter


Wer behauptet denn, dass der Wochentag nicht auf Deutsch zurückkommt?

Wenn in meiner Message-File QCPFMSG in der Message-Id CPX9034 die Wochentage auf deutsch hinterlegt sind, werden sie auch auf Deutsch ermittelt werden!

Birgitta

B.Hauser
25-11-04, 15:07
@Birgitta,

wusste ich nicht, ist allerdings m.E. undokumentiert, sprich: kann sich ohne Ankündigung ändern - eine Brücke über die ich eher nicht gehen würde.

mfg

Dieter

@Dieter

Steht gross und breit als "Note: National Language Considerations" in der
<a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r3/ic2924/info/db2/rbafzmst.pdf" target="_Blank">SQL-Reference</a> für Release V5R3M0.

Birgitta

GEA
25-11-04, 16:32
Vielen Dank für alle Anworten!!!

Hat mir sehr weitergeholfen !!