-
Update von Daten
hallo, ich habe ein Problem.
in einem ONLINE-JOB werden Daten in verschiedenen Dateien geschrieben. In einem nachfolgenden BATCH-Job werden diese Daten gelesen. Teilweise sind diese Daten dann nicht vollständig vorhanden. (auch mit einem DELAY von 30 Sec. nicht). Wo kann ich suchen.?
-
Hallo,
fehlendes commit?
Was genau bedeuted nachfolgenden BATCH-Job?
Wird der Job wirklich erst nachdem die Daten geschrieben wurden gestartet?
lg Andreas
-
Wenn die Daten in einem Programm per O-Datei geschrieben werden sind diese erst mal geblockt im Speicher.
Wenn der Block voll ist, landet dieser dann in der Datei.
Mit der Anweisung FEOD wird der Block zwangsweise ausgegeben.
In den F-Bestimmungen (ILE) kannst du auch BLOCK(*NO) angeben.
-
unsere Jobs arbeiten alle ohne COMMIT-Steuerung und es handelt sich auch nicht um SQL-Tabellen, sondern um die "alten" Dateien.
Geschrieben werden die Daten in eine PF-Datei und gelesen aus einer LF-Datei.
zwischen dem Schreiben erfolgt das SUBMIT eines JOBs in dem diese Daten aus der log.Datei gelesen werden, und nicht da sind.
Prüft man das eine Minute später, ist alles o.k.
-
Ich habe auch nicht von SQL gesprochen!
Schau dir noch mal die F-Bestimmungen an und ggf. die Umwandlungslisten.
O-Dateien werden grundsätzlich geblockt!
D.h., ein Write speichert erst mal RPG-Intern den Datensatz.
Beim Close, Block voll oder FEOD werden die Daten erst tatsächlich geschrieben.
-
hallo Herr Ferchau, das mit dem SQL bezog sich nicht auf Ihre Antwort, sondern auf die vorhergehende Frage.
Mittlerweile habe ich aufgrund der Bemerkungen in den entsprechenden Programmen gefunden, das diese mit RETURN verlassen wurden. Daher auch noch kein zurückschreiben des letzten Blockes. habe dieses jetzt auf LR geändert. und warte nun mal das Ergebnis ab.
-
Durch LR=*on werden eben alle Daten geschrieben, da ja ein Close gemacht wird.
Allerdings ist das trotzdem nicht sicher.
Wenn dein Programm (aus welchen Gründen auch immer) mal vorzeitig abschmiert, werden die offenen Datensätze auch nicht geschrieben.
Geblockte Verarbeitung ist eben immer kritisch.
-
und was kann man da anders machen ?
-
 Zitat von MR-BN
und was kann man da anders machen ?
Das steht doch in der ersten Antwort von Herrn Fuerchau.
-
Wie gesagt:
bei ILE BLOCK(*NO) in den f-bestimmungen.
Bei OPM-RPG gibt es dazu wohl eine Compileoption im CRTRPGPGM.
-
Oder aber die knallharte Lösung:
CHGPF FILE(XXX/YYY) FRCRATIO(1)
-
 Zitat von ExAzubi
Oder aber die knallharte Lösung:
CHGPF FILE(XXX/YYY) FRCRATIO(1)
Bevor ich eine Datei ändere, würde ich doch lieber mit einem OVRDBF arbeiten 
Birgitta
Similar Threads
-
By synus in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 06-10-06, 15:38
-
By wuwu in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 18-07-06, 15:31
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 09:43
-
By sim in forum NEWSboard Programmierung
Antworten: 11
Letzter Beitrag: 18-05-06, 08:00
-
By Heinz Molter in forum Archiv NEWSblibs
Antworten: 0
Letzter Beitrag: 31-08-04, 09:48
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