View Full Version : Useropen vs open
Hallo *all
wiedermal eine 'Grundsatzfrage'
ich habe hier Programme in RPT die häufig die Dateien mit
UC (User Controlled) definiert haben. Im Pgm wird über eine Bezugszahl abgefragt ob die Datei offen ist.
Wenn nicht, Open und Seton Bezugszahl.
M.E. ist das vielleicht früher aus Performance Gründen mal gut gewesen. Ich würde den ganzen Kram gerne rausschmeißen und die Dateien vom Pgm öffnen lassen. Auch auf die Gefahr hin, das nun ggf . 4-5 Dateien geöffnet werden, obwohl Sie in diesem Lauf nicht verwendet werden.
Was meit Ihr
Ist UC öffnen tatsächlich 'besser' ?
Danke Robi
andreaspr@aon.at
28-05-10, 10:07
Da ich ein Freund von SQL bin brauche ich mich um sowas nicht zu kümmern.
Es ist egal, wenn nur ein paar User dieses PGM benutzen und es sich nur um ein paar Files handelt.
Sinn macht das schon, wenn ein paar hundert User, viele Male das PGM aufrufen und es zig Files enthält aber je nach Ablauf nur wenige wirklich benützt werden.
Ich würde auch statt des Indikators, die BIF verwenden.
if (not %open(myFile));
Danke und ...
Ich würde auch statt des Indikators, die BIF verwenden.
if (not %open(myFile));
ja klar , in einem RPT Pgm
das geht nunmal nicht
Gruß
Robi
"Never change a running program".
Aus Performancegründen gewinnst du nichts, insbesonders, wenn das Programm mit *INLR=*ON verlassen wird.
Ja, es wird mit LR verlassen.
und die, die ich schon 'aufgeräumt' habe sind deutlich übersichtlicher.
Trotzdem brauche ich einen 'Grund' weiter aufzuräumen
never Change ... kenn ich.
Danke
Gruß
Robi
RobertMack
28-05-10, 12:00
Tipp: prüfen, ob der UC-Nebeneffekt *LOVAL SETLL nicht verloren gehen darf ;-)
Hallo Namensvetter,
ämm...
das heist ?
Robi
RobertMack
28-05-10, 12:25
UC wurde früher gerne genutzt, um bei gleichzeitigem Schreiben und Lesen der Datei die Blockung abzuschließen und "von vorne" zu lesen. Will heißen: entweder genauer hingucken was das Programm macht oder sicherheitshalber den OPEN durch FEOD und SETLL ersetzen...
ach so, nein nein.
Es dient keinerlei 'logischen' Verarbeitung
N40 exsr opn01
N40 seton 40
div. If bestimmungen die dann zu einem open führen
alles sequentiell, keine Schleife o.ä.
selbst die vorhandenen SR's werden in 80 % aller Fälle nur ein mal gerufen.
Und zum Schluß
40 exsr close01
abfrage von div. Bezugszahlen und ein entsprechender close,
seton lr
das wars
RobertMack
28-05-10, 12:49
das wars
...solange in keiner der SR ein QCMDEXC mit OVRDBF drin ist :D