-
Feldgruppen / Tabellen Problem
Ich habe folgendes Problem:
D Z S 2 0 inz(*zeros)
D X S 2 0 inz(*zeros)
* Anwesenheitstage
D DS
D FgAnwTg 1 42 Dim(21)
D Mo1 1 2
D Di1 3 4
D Mi1 5 6
D Do1 7 8
D Fr1 9 10
D Sa1 11 12
D So1 13 14
D Mo2 15 16
D Di2 17 18
D Mi2 19 20
D Do2 21 22
D Fr2 23 24
D Sa2 25 26
D So2 27 28
D Mo3 29 30
D Di3 31 32
D Mi3 33 34
:
:
* Trainer & Tage - elektrisch
D DS
D FgTraTgE 21 Dim(10)
D ETrainer 17a
D ETage 4s 1 inz(*zeros)
:
:
C Do 21 Z
C If FgAnwTg(Z) <> *blanks
C Eval GesEle = GesEle + %dec(FgAnwTg(Z):2:1)
C If %Lookup($KlGrMix(NName):FgTraTgE) = *zeros
C Eval X = X + 1
C Eval %subst(FgTraTgE(X): 1:17) = $KlGrMix(NName)
C EndIf
C EndIf
C EndDo
"$KlGrMix" ist ein "Proc" welche den Wert im Feld "NName" auf klein bzw. Groß-Schirft umstellt!
In der "Do"-Schleife wird geprüft, ob in der Feldgruppe FgTraTgE" der "NName" schon vorhanden ist.
Ist das der Fall wird dieser nicht neu in die Feldgruppe geschreiben, sondern es soll dann nur der Wert, welcher in "FgAnwTg" als ",0" o. ",5" o. "1," o. " " steht, in das zugehörige Feld "ETage" (als num. Wert) addiert werden!
Ist das nicht der Fall wird der Wert im Feld "NName" ins entsprechende Feldgruppenelement übertragen und es soll der zugehöhrige Wert in "FgAnwTg" ins Feld "ETage" addiert bzw. übertragen werden
Ist das irgendwie möglich bzw. was muß ich machen damit dieses so funkt?
-
Frage: Wie kommen die Daten hierein?
Hallo,
kommen die Daten aus einer Datei?, wenn ja hört sich dies an
wie eine Lösung über Gruppenwechsel-Programmierung.
Oder sagte mir mal ein Dozent:
eine Tabelle verhält sich wie ein Gruppenwechsel, allerdings
sind die Eingabedaten unsortiert.
Das müssen sie ja für einen Gruppenwechsel ja sein.
Bin ich da mit meinem Lösungsansatz auf der richtigen Spur?
Gruss Thomas
-
ja, die Daten kommen aus einer Datei:
will/muß eine Excel-Tabelle auf die As400 übernehmen d.h. das was
die User bisher mit Excel machten soll jetzt auf der AS400 angezeigt und ausgewertet werden!
In dieser Datei stehen Namen und Tage:
(NName) Mo1 Di1 Mi1 Do1
Meier 1, 1, ,5 ,0
Müller
Huber
Mustermann
Meier 1, ,5
Schmidt
Huber
Meier ,0
in der Feldgruppe sollte jetzt folgende stehen:
Meier 4,0
Müller 0,0
Huber 0,0
:
Ist das überhaupt machbar, wie muß ich die Feldgruppe / Tabelle definieren damit ich das in den "C"-Bestimmungen so realisieren kann?
PS: Mo1, Di1, Mi1, Do1 Alpha-Felder
diese habe ich mir gedacht, benutze ich dann mit der bif %dec
%dec(FgAnwTg(Z):2:1)
-
? Vielleicht so?
Hallo,
ich bin leider noch nicht so fit in RPGIV, da 90 % unseres
WWS in RPG III noch ist.
Um es anders zu formulieren .
die Datei hat pro Mitarbeiter einen Datensatz.
Der Datensatz beinhaltet die Felder: (DDS-Beschreibung)1) Name
2) Wert für MO1
3) Wert für MO2
bis es 42 Felder sind.
Die Datei wird nach Key sortiert eingelesen.
Entweder prüfst Du dann einzeln auf jedes Feld
(Wert nicht gleich null oder blank) und errechnest Du die
Anzahl.
Oder diese Felder in eine Tabelle moven und dann
diese Tabelle per Schleife auslesen (index 1-42)
Wäre der Ansatz von mir korrekt?
Gruss Thomas
-
Wenn du die Datei mit den 43 Feldern (1.=NAme 42 x Tag) hast, mach es einfach per SQL:
Definiere eine 2. Datei mit gleichen Feldern und kopiere die Daten
insert in datei2
select upper(name), sum(mo1), sum(mo2) .... from datei1
group by upper(name)
-
Das mit SQL hatte ich mir auch schon überlegt!
Das Problem ist dabei, das vorher noch Prüfungen auf andere Felder in der Datei sind!
Die Felder mit den Tagen (Mo1, Di1, etc.) stehen eigentlich in einer
eigenen Feldgruppe! (siehe Source-Code)
Habe das ganze hier nur mit den Mo1, Di1, etc. beschrieben, um es leichter erklären zu können!
Similar Threads
-
By Stoeberl in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 10-01-07, 10:58
-
By e_sichert in forum IBM i Hauptforum
Antworten: 21
Letzter Beitrag: 28-11-06, 19:43
-
By remo2010 in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 24-11-06, 15:24
-
By Flappes in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 06-10-06, 08:39
-
By neuling_ in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 18-05-04, 09:35
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