-
Kalenderwoche ermitteln
Hallo,
Ich weiss das ich mit
C/EXEC SQL Set :MyWeek = Week_ISO(:MyDate)
die Kalenderwoche zurückbekomme.
Ich will eine Datei erstellen, wo Beträge für Kalenderwochen abgebildet werden(Kw1-3, Kw4-6, Kw7-9, etc.) sollen.
Ist es möglich auch durch die Kalenderwoche per Sql auf Wochenbeginn und Wochenende zu ermitteln?
Oder muss ich den 1. Tag der KW ermitteln und anschließend die 21 Tage hochzählen?
Bin für jeden Input dankbar
Danke
Tarki
-
Aus der Woche gibt es keinen Rückschluss auf ein Datum, da ja nur ein Wert zwischen 1 und 53 zurückgegeben wird und somit das Jahr fehlt.
Du musst schon selber rechnen, allerdings gibt dir DAYOFWEEK_ISO(Datum) den Wochentag zwischen 1 (Montag) und 7 (Sonntag) zurück.
Also ist "Datum - (DAYOFWEEK_ISO(Datum) - 1) days" immer den Montag zurück, von dem lässt sich ja das nächste Datum errechnen.
-
Ich erstelle in nahezu jeder größeren Applikation eine Kalenderdatei.
Für jeden Tag sind alle Infos abgelegt, die interessant sein könnten (Wochentag, Wochennummer, laufende Nummer des Tages im Jahr, etc.) plus individuelle Anforderungen, z.B. Feiertage oder Tage, an denen Teile des Unternehmens nicht für normale Anforderungen verfügbar sind, z.B. Inventuren.
Meist ist es viel einfacher, diese Datei dazuzujoinen als komplizierte Funktionen aufzurufen. Und womöglich performanter.
Für Deinen Fall bräuchtest Du nur noch einen Index auf Jahr, Woche und Wochentag und kannst mit den Keys "2014 - 18 - Montag" bzw. "2014 - 18 - Sonntag" schnell herausfinden, dass der Montag der Woche 18 im Jahr 2014 das Datum 2014-04-28 hat und mit Sonntag 2014-05-04 endet.
(Statt "Montag" verwende ich in Wirklichkeit natürlich "1" usw.)
-
Danke an alle.
Ich werde es mit der Kalenderdatei probieren.
lg
Tarki
-
Hallo,
eine Frage bzg. Week_iso hätte ich da noch bitte:
Code:
SELECT DTBU, WEEK_ISO(Date(DTBU)) FROM FILE01
Als Ergebnis bekomme ich:
Code:
....+....1....+....2....+.
DTBU WEEK_ISO
2014.06.18 ++++++++++++++
2014.06.18 ++++++++++++++
Wenn DTBU 8, 0 ist wie muss mein Sqlstatement aussehen um den Datenzuordnungsfehler in Teildatei FILE01 zu beheben?
-
Die Funktion erwarten eine Zeichenfolge oder ein Datumsfeld
Date(CHAR(xx))
Wenn dein DTBU numerisch JJJJMMTT hat, reicht ein char(dtbu * 1000000).
Similar Threads
-
By sepp in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 09-07-02, 16:09
-
By Spirou in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 17-04-02, 09:54
-
By Sven Schneider in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 03-12-01, 21:17
-
By kschmidt in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 19-06-01, 17:35
-
By Burgy Zapp in forum NEWSboard Server Software
Antworten: 0
Letzter Beitrag: 09-04-01, 19:01
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks