-
Datum + 10 Tage in RPG
Hallo,
hat jemand vielleicht schonmal einen kurzen COde geschrieben, das ein Datum(gezont Länge 6) + 10 Tage berechnet.
Es werde Kalendertage benötigt.
Beispiel: Ich habe das Datum 01.08.2001 in der Form 010801 und möchte gerne das Datum + 10 Tage haben = 11.08.2001.
Vielleicht gibt es dann noch ne Möglichkeit, wenn es am Wochenende ist, es auf den nächsten MONTAG zu legen.
Danke
Bye
HoScHiE
-
Versuchen Sie es z.B. mit ILE-RPG. Definieren Sie eine Variable vom Typ Datum und verwenden Sie die Befehle ADDDUR oder SUBDUR (nachzulesen im RPG-Handbuch).
Die 2. Möglichkeit ist SQL !
Formatieren Sie das Datum in ein gültiges Format (z.B. *ISO) und mittels:
/EXEC-SQL
+ SET :Ziel = DATE(DAYS(:Quelle) + :Tage)
+ SET :WTag = WEEKDAY(:Ziel)
/END-EXEC
können Sie alle benötigten Berechnungen durchführen (nachzulesen im SQL-Handbuch).
Die handbücher finden Sie auf der Buch-CD.
-
Das ist alles sehr lieb und nett gemeint aber ich brauche es in RPG.Mit ILE wüßte ich es auch aber ich kann es nicht in ILE umstellen(darf es nicht).
Ich brauche also den Code für RPG, only.
Danke für Deine Hilfe.
Bye
HoScHiE
-
Warum machst Du nicht ein kleines ILE-RPG, dass du aus deinem RPG mit dem Datum als Parameter aufrufst, welches dann nur die Datumsberechnung macht ??
Must ja nicht das ganze Programm auf RPG/IV umstellen.
Jörg
-
Das habe ich mir auch gedacht aber geht so was net einfacher ?
ein kleiner simpler code ?
Bye
HoScHiE
-
Also was ist einfacher, als ein paar RPG/IV Zeilen zu schreiben ??? Gut, wenn die Ermittlung des Wochentages dazu kommt, sind's eben ein paar mehr. Aber immer noch einfacher, als sich in RPG/III einen abzubrechen.
Klar geht's auch in RPG/III, aber das sind bestimmt 5 mal so viele Statements wie in IV.
Jörg
-
-
Hier noch eine Möglichkeit
Verwende ein CL Programm mit CVTDAT.
Mache dein Datum Julianich. Addiere 10 Tage und lass es zurückwandel. Sicherheitshalber kannst du in der Programminitialisierung ja den 31.12 abfragen und so den höchsten Tag des Jahres im Programm abfragen (365 oder 366) damit ist dann auch der Jahreswechsel zu bewerkstelligen.
Wie mann sieht
viele Wegen führen nach Rom (oder zum Datum ;-)
Gruß Klaus
Programmierung
-
Hallo Hoschie,
ich kann Ihnen folgendes anbieten:
a) Programm zum Erstellen eines Kalenders
natürlich incl. Berücksichtigung von
Schaltjahren
b) Routine, die mit /COPY ins
RPGIII oder RPGIV - Programm einkopiert
wird und mit der alle Umdrehungen eines
Datums, Tage hinzuzählen, abziehen
(Werktage, Kalendertage) und vieles
mehr erledigt werden kann.
c) Beschreibung, wie die Routine
eingesetzt wird.
Diese Modul ist bereits einige Zeit im Einsatz und deckt alle mir bis dahin erforderlich gewordenen Datums-Modifikationen ab.
Für einen gewissen Preis könnte ich es zur Verfügung stellen.
Zusätzlich beinhaltet dieses Modul auch
das Erweitern des Kalenders, das Eintragen von Feiertagen und das Anzeigen der Kalenderdatei.
bei Interesse: mail@muhmann.de
-
Erstmal vielen Dank an alle.
Ich habe mich jetzt für die xxterne ILE Variante entschlossen und es auch schon ausprobiert.
Danke Jörg.
Kaufen möchte und kann ich auch nix.
Wir habe einige Programme im Einsatz, die das Konvertieren und Umrechnen und Berechnen,etc. von Tagen/Wochen,etc. beinhalten und das anhand unseres Kalenders.
Nur dieses Tool kann nicht per Parameter gesteuert werden, so daß es die 10 Tage addiert.Dieses Standprogramm sollte ungerne angepasst werden, da ca. 1000 Programme darauf zugreifen.
So das wars...
Danke,
HoScHiE
Bye
HoScHiE
-
Ich weiß, meine Antwort kommt schon zu spät, möchte sie aber trotzdem los werden. Vielleicht dient sie jemand anderem als Idee.
Ich habe dieses Problem folgendermaßen gelöst:
1. Einen Fabrikskalender erstellt:
Datei FBRKLD
Felder: JAHR JJJJ
Monat MM
Tag TT
Woche JJWW
Wochentag T (1-7)
Feiertag F (J/N)
2. Dazu habe ich ein Programm geschrieben, welches mit diese Datei automatisch aufbaut, wobei das besondere Problem die generierung der Kalenderwoche war.
3. Weiter logische Dateien nach Woche, JMT, JM erstellt
Diese Datei verwende ich nun zur Datumberechnung. In Ihrem Fall CHAIN mit heutigem Datum in den Kalender dann
Do 10
Read FBRKLD
end
Sollen Samstage, Son- und Feiertage übersprungen werde, so ist das ebenfalls leicht realisierbar. Ebenso kann ich mit dieser Datei leicht den ersten bzw. letzten Tag einer Kalenderwoche feststellen.
Dazu braucht man außerdem keine Zeile in einem ILE-RPG (ist meine Meinung nach nur für Vielschreiber).
Das RPG-Programm zum Erstellen der Fabrikskalender-Datei veröffentliche ich gerne auf Wunsch.
Interesse: zehetner@ins.at
-
So so.. für Vielschreiber..
Dann programmier doch mal in RPG/III Substring- oder Trim-Funktionen, die man in RPG/IV mit einer Zeile abhandelt.
Da wirst Du Dir in RPG/III wohl einen Wolf schreiben..
Jörg
[Dieser Beitrag wurde von JoergZ am 06. August 2001 editiert.]
Similar Threads
-
By mk in forum NEWSboard Java
Antworten: 8
Letzter Beitrag: 21-04-11, 21:51
-
By Stoeberl in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 10-01-07, 10:58
-
By heini in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 30-09-06, 10:10
-
By jjagi in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 07-07-06, 08:29
-
By GEA in forum NEWSboard Programmierung
Antworten: 7
Letzter Beitrag: 25-11-04, 16:32
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