Anmelden

View Full Version : Aktivierungsgruppen



Seiten : 1 [2]

Martin
23-04-04, 18:51
Hallo Dieter,


@Martin
Auf die Gefahr mich heute nochmal unbeliebt zu machen:


Wieso nochmal? Ist das heute denn schon passiert?

Ich dachte an Anwendungen wie die folgende: Die Stücklistenpositionen eines Artikels werden angezeigt. Einige Positionen sind Rohwaren, andere sind Zwischenprodukte. Mit z.B. Auswahl "S" zeigt man die Stücklistenpositionen eines Zwischenproduktes an und landet somit wieder in demselben Subfileprogramm aber anderen Daten.

Bei uns sind solche Subfiles generell nur anzeigende Dialoge, die keine Daten fortschreiben. Aber selbst wenn man auf diese Weise einen bereits zur Bearbeitung geladenen Datensatz ein zweites Mal öffnen möchte, ist das doch im Grunde dasselbe Problem, das man bei konkurrierendem Zugriff im Mehrbenutzerbetrieb ohnehin über geeignete Lockingmechanismen lösen muß.

Gruss,
Martin

BenderD
23-04-04, 19:08
@Baldur,

ACTGRP *NEW wird bei Rückgabe der Steuerung eins hoch automatisch reclamed, da passiert also nix und *eligible kann nix löschen, was mit *NEW erstellt wurde (ist schon weg, oder noch im aktiven Callstack).
Heisst auch, dass bei erneuten Aufruf neu aktiviert wird.

@Martin,

In eurem Fall ist das reine Anzeige, die sich nix merkt, aber um den Preis, dass bei hin und herspringen zwischen den beiden Anzeigen immer wieder neu gelesen werden muss und man muss im Programm irgendwie verwalten, dass man sich nicht hochschraubt.

Sobald jemand zum Beispiel zweimal in denselben Satz mit ändern reinkäme wird es kraus. Die spätere Version wird gespeichert und wenn man jetzt mit F12 sukzessive raus geht, taucht die alte Version wieder auf.

Grundproblem von ILE ist, dass man (fast) nicht steuern kann dasselbe Modul mehr als einmal zu aktivieren; in Java z.B. würde man dasselbe Problem niemals rekursiv lösen wollen, weil man da exakt steuern kann, wieviele Objekte einer Klasse man gerade haben will.

mfg

Dieter Bender

Fuerchau
23-04-04, 19:12
Wie wars jedoch ehedem
mit OPM doch so bequem !

Wer erinnert sich noch daran, das Rekursiv-Aufrufe in RPG abgelehnt in COBOL jedoch zugelassen wurden ? Wobei in COBOL dann aber der PERFORM-Stack kaputt war !

@Dieter

was macht das System bei *NEW wenn ich *INLR aus lasse ?!
(hab keine Lust zu testen)

BenderD
23-04-04, 20:26
Hallo Baldur,

das mit dem ILE ist nicht so unbequem, wenn man es sich leicht macht, siehe oben.
*INLR hat bei ACTGRP *NEW keinerlei Einfluss und ansonsten lässt man am Besten die Finger von *INLR, arbeitet mit benamten ACTGRP und macht dann eben einen RCLACTGRP, wenn man bereinigen will.
Ich glaube ich muss doch mal einen Artikel über Activation Groups schreiben und wie man sich mit ILE Probleme vom Hals hält, die keiner brauchen kann (aus meiner Kiste RPG für Java Programmierer).

mfg und schönes Wochenende für *ALL

Dieter Bender



Wie wars jedoch ehedem
mit OPM doch so bequem !

Wer erinnert sich noch daran, das Rekursiv-Aufrufe in RPG abgelehnt in COBOL jedoch zugelassen wurden ? Wobei in COBOL dann aber der PERFORM-Stack kaputt war !

@Dieter

was macht das System bei *NEW wenn ich *INLR aus lasse ?!
(hab keine Lust zu testen)

Brownie
23-04-04, 20:58
woooooooooow

nur wow, und nix weiter


sokrates