PDA

View Full Version : Dateifreigabe bei SQLRPG



Wiezorek
16-10-01, 08:34
Ich habe in einem RPG Programm eine Datei über SQl mit Werten gefüllt. Dies funktionierte erst nach der Anlage eines Journals für die Datei. Nach beendigung des Programms kann der Inhalt der Datei nicht gelöscht werden.
Fehlermeldung die Datei wird benutzt?

Frage1 wie kann ich in RPG commit * none erreichen um ohne Journal auszukommen.

Frage2 wie kann ich die datei nach ende des SQL teils oder des Programm freigeben.

Als Batch funktioniert das Programm nicht.

Hier noch der SOL Teil:

/EXEC SQL
+ INSERT INTO SERMN (SMNR)
+ SELECT DISTINCT(MTGL) FROM NETDATA/MAILBW
+ WHERE WEGIHD = 'A' AND AGIHD = 0 AND EGIHD = :HEUTE
/END-EXEC

Rukober
16-10-01, 09:04
Bei Uwandlung mit Cmd CRTSQLRPGI den Parameter COMMIT(*NONE) angeben.
Programm mit *INLR beenden.
Das sollte helfen.
Gruss
Frank

Wiezorek
16-10-01, 09:22
Hat geklappt danke!

rmittag
16-10-01, 11:49
<BLOCKQUOTE><font size="1" face="Verdana, Arial">Zitat:</font><HR>... CRTSQLRPGI den Parameter COMMIT(*NONE) ...[/quote]

Alternativ (besser http://www.as400-forum.de/ubb/wink.gif) ist es m.E. COMMIT zu nutzen und im Programm am Ende ein COMMIT/ROLLBACK zu setzen :



c if errorHappened
c/Exec Sql
c+ rollBack
c/End-Exec
c else
c/Exec Sql
c+ commit
c/End-Exec
c endIf

Wiezorek
16-10-01, 12:03
Ich werde diese Lösung für ein anderes projekt mit updates ausprobieren. In deisem Fall brruchte ich aber kweine fehlerabfngroutine da nur eineige nummern aus der datei extrahiert werden.