-
 Zitat von Squall
...ich hoffe ich nerve euch nicht zu sehr mit meinen Fragen....
Ach, nicht wirklich.
Im Gegenteil.
Ich persönlich bin absolut froh über jeden Neueinsteiger in diesem Bereich.
Um so mehr um so besser.
Jede weitere Ressource im AS/400-Bereich (oder I5 oder wie se nun auch immer gerade heisst) sichert ja im Endeffekt meinen Arbeitsplatz evtl.
Wenns umgekehrt wäre, würde es ja schlecht aussehen für solche Dinos wie mich.
Allerdings würde ich mir von einigen Firmen mehr Einsatz z.B. im Bereich Schulung usw. wünschen.
Wenn ich was zu sagen hätte, würde ich jeden auf jede Schulung schicken die es gibt.
Und dann regelmässig nachbessern lassen.
Leider siehts ja meistens genau andersrum aus.
k.
-
 Zitat von kuempi von stein
Ach, nicht wirklich.
Im Gegenteil.
Ich persönlich bin absolut froh über jeden Neueinsteiger in diesem Bereich.
Um so mehr um so besser.
Jede weitere Ressource im AS/400-Bereich (oder I5 oder wie se nun auch immer gerade heisst) sichert ja im Endeffekt meinen Arbeitsplatz evtl.
Wenns umgekehrt wäre, würde es ja schlecht aussehen für solche Dinos wie mich.
Allerdings würde ich mir von einigen Firmen mehr Einsatz z.B. im Bereich Schulung usw. wünschen.
Wenn ich was zu sagen hätte, würde ich jeden auf jede Schulung schicken die es gibt.
Und dann regelmässig nachbessern lassen.
Leider siehts ja meistens genau andersrum aus.
k.
Ich hatte bisher wenig mit der AS400/i5(sowie deren Programmierung CL, RPG, VARPG) zu tun und arbeite mich zz selbstständig ein. Was mich angeht bin ich ein wirklicher Frischling, gerade mit der Ausbildung fertig geworden und jetzt im Berufsalltag. 
Und die As400 kann man irgendwie mit kaum bzw mit keinem anderen System vergleichen.
-
Na Gott-sei-Dank gibts keinen Vergleich, sonst könnte ich wohl nicht bis zur Rente durchhalten.
-
 Zitat von Fuerchau
Na Gott-sei-Dank gibts keinen Vergleich, sonst könnte ich wohl nicht bis zur Rente durchhalten.
Wenn man wirklich gut und erfahren ist und sich auf der As400/i5 gut auskennt hat man bestimmt einen sicheren Arbeitsplatz bzw genug Aufträge. 
Aber bis dahin ists ein langer steiniger Weg.
-
Genau das ist das Problem:
Gut wird zu teuer und Erfahrung ist halt zu alt 
und AS/400 ?
Nur bei Kenntnis von Java/Internet/Mail/....
RPG ? machen wir nicht mehr
-
 Zitat von Fuerchau
Genau das ist das Problem:
Gut wird zu teuer und Erfahrung ist halt zu alt
und AS/400 ?
Nur bei Kenntnis von Java/Internet/Mail/....
RPG ? machen wir nicht mehr 
Java hatte ich 2 Jahre und Internet/Mail kenn ich mich auch halbwegs aus nur geholfen hat mir das bisher 0. 
Naja jetzt gibts ja VA-RPG, schöne Windoof Oberflächen.
-
Ich hätte noch einen Frage, rein Interessehalber. Könnte ich SRCDAT bzw SRCSEQ auch einen String mit der Länge 6 übergeben?
-
Übergeben kannst du was du willst, Hauptsache in der Datei stehts dann numerisch.
-
Ok danke .
Ich habe jedoch noch eine andere Frage.
Und zwar musste ich das Programm so umschreiben das es die Daten aus einer Datei liest. Die Werte sind korrekt:
zb:
SRCSEQ = 000100
SRCDAT = 060919
SRCDTA = ' A CCSID(273)'
Jedoch bekomme ich die Meldung wenn ich mir die erstellte Datei anschaue das die Folgenummern nicht korrekt angeordnet sind und sie neu angeordnet werden(Doppelte oder nicht aufsteigende Folgenummer. Sätze wurden neu angeordnet.). Das Änderungsdatum wird garnicht eingetragen. (000000)
Werden die führenden '0' bei einem Move weggelassen? (Move weil ich die als Char vorliegenden Zahlen wieder in P umwandeln will)
Beim Schreiben in die Datei gibt es keine Fehlermeldung, ein CRTPF ist jedoch nicht möglich bis ich manuell in die Datei gehe, wobei laut meldung SRCSEQ neu geordnet wird, und etwas ändere um SRCDAT zu setzen.
Der Write sieht so aus:
PHP-Code:
DCMDREC DS 92 DSRCSEQ 6P 2 DSRCDAT 6P 0 DSRCDTA 80A
C move seq srcseq C move dat srcdat C eval srcdta = dta
C write dds cmdrec
-
MOVE überträgt rechtsbündig genau so viele Stellen wie das Quellfeld lang ist, maximal jedoch so viele Stellen wie das Zielfeld lang ist.
Bei einer kürzeren Übertragung bleibt der Rest des Feldes stehen.
Für numerische Übertragung nimmt man Z-ADD oder EVAL, was dann auch Kommagerecht passiert.
Desweiteren sind deine Felder falsch definert:
SRCSEQ/SRCDAT sind vom Typ S (gezont).
Es wird deswegen kein Fehler ausgelöst, weil das Schreiben der Datei ungeprüft akzeptiert wird.
-
 Zitat von Fuerchau
MOVE überträgt rechtsbündig genau so viele Stellen wie das Quellfeld lang ist, maximal jedoch so viele Stellen wie das Zielfeld lang ist.
Bei einer kürzeren Übertragung bleibt der Rest des Feldes stehen.
Für numerische Übertragung nimmt man Z-ADD oder EVAL, was dann auch Kommagerecht passiert.
Desweiteren sind deine Felder falsch definert:
SRCSEQ/SRCDAT sind vom Typ S (gezont).
Es wird deswegen kein Fehler ausgelöst, weil das Schreiben der Datei ungeprüft akzeptiert wird.
Z-Add hatte ich schon probiert. Also nach meinem Move einen z-add.
Ich habe gerade versucht die Datei per Hand umzuwandeln und mir dann das SF angeschaut. Anscheinend wird weder SRCSEQ noch SRCDAT korrekt geschrieben:
PHP-Code:
- A CCSID(273) . .j¤
Ist meine Übergabe SRCSEQ SRCDAT SRCDTA dann in der Reihenfolge überhaupt richtig? Weil es bei dem SF ja SRCSEQ SRCDTA und dann SRCDAT ist.
EDIT: Geschafft es geht. Habe die Datei aus der gelesen wird neu definiert, P durch S ersetzt(sowohl in der Datei als auch im Programm) und jetzt geht es. 
Vielen Danke für die Hilfe!
-
Hallo,
diesmal geht es nicht um das Schreiben einer DDS Datei sondern das Lesen einer solchen.
Ich habe den Namen eines Feldes auf das Referiert wird und will nun aus der referenzierten Datei die Länge, die Dezimalstellen und die Art dieses Feldes wissens. Sobald ich die SRCDTA habe kann ich dies ja über Substring herausfinden.
Dazu hätte ich aber ein paar Fragen:
1. Kann ich über einen einfachen read aus dieser Datei lesen und die Daten in SRCSEQ SRCDTA und SRCDAT schreiben lassen? Wie müsste dieser read aussehen? (Ein Beispiel wäre sehr freundlich)
2. Brauche ich dann in meinem CL Programm 2 OVRDBF?
Gruß Martin
EDIT:
Tut mir Leid bin schon über was gestolpert, sollte jetzt funktionieren.(Kann ich erst morgen testen)
PHP-Code:
C open reftab C read REFTAB cmdrec C dow NOT %eof(reftab) C eval name2 = %subst(srcdta:19:10) C if name=name2 C eval laenge = %subst(srcdta:30:4) C eval art = %subst(srcdta:35:1) C eval dec = %subst(srcdta:36:2) C endif C read REFTAB cmdrec C enddo C close reftab
Similar Threads
-
By homue in forum NEWSboard Programmierung
Antworten: 5
Letzter Beitrag: 18-07-07, 16:47
-
By Stoeberl in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 10-01-07, 10:58
-
By Squall in forum NEWSboard Programmierung
Antworten: 9
Letzter Beitrag: 10-10-06, 08:53
-
By Squall in forum IBM i Hauptforum
Antworten: 31
Letzter Beitrag: 28-09-06, 17:53
-
By Angela in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 22-08-06, 10:11
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