[Allegro] Lock/unlock-Mechanismen (war: update.job + optsget.inc überarbeitet)

Anando Eger a.eger at aneg-dv.de
Di Jan 17 10:41:33 CET 2012


Hallo Herr Eversberg,

On 17 Jan 2012 at 8:03, Bernhard Eversberg wrote:
> Am 16.01.2012 16:29, schrieb Anando Eger:
> 
> > Es ist schon schlimm genug, dass ich kein "put" ausführen kann, ohne
> > damit den Lock-Status des Datensatzes zurückzusetzen.
> >
> Das könnte optional geändert werden, vielleicht mit "put lock".

Gute Idee. Dann dürfte auch das Laden eines nächsten Satzes
keine Freigabe bewirken (vergl. xget.rtf#get edit).

Als Diskussionsgrundlage hier mal ein einfaches, schematisches 
Beispiel:

Aufgabe: zwei Datensätze (A und B) zusammenhängend ändern

lock A
lock B      -> Fehler: unlock A, Ende
A lesen     -> Fehler: unlock B, unlock A, Ende
Inhalt A für rollback merken
A ändern   
A schreiben -> Fehler: unlock B, unlock A, Ende
B lesen     -> Fehler: A rollback, unlock B, unlock A, Ende
B ändern    
B schreiben -> Fehler: A rollback, unlock B, unlock A, Ende
unlock B   
unlock A

Für die "unlock"'s wäre dann eine Anweisung hilfreich, 
für die ich den Satz nicht erst wieder laden müßte:

Vorschlag: unlock #{satznummer}

Und:
Schön wäre es, wenn es die 'get edit'-Befehle auch im a99 gäbe ...
Den Ersatz 'first'|'next' usw. und dann set rec loc\...\var "#" i\f1nd
finde ich etwas umständlich.

Viele Grüße
Anando Eger

---------------------------------------------------------------------
Anando Eger Datenverarbeitung
Herr Dipl.-Ing. Anando Eger
Gustav-Voigt-Str. 24
01156 Dresden
Tel.: +49 (0)351 454 1236  http://www.aneg-dv.de
Fax: +49 (0)351 454 1238  mailto:a.eger at aneg-dv.de
---------------------------------------------------------------------






Mehr Informationen über die Mailingliste Allegro