[Allegro] Record-Locking unter a99

Anando Eger a.eger at aneg-dv.de
Fr Aug 30 10:11:16 CEST 2013


Lieber Herr Eversberg,

ich möchte meine Frage noch einmal präzisieren, es ist wichtig, weil 
ich sonst die a99-Versionen > V31.10 nicht einsetzen kann:

Wie stelle ich unter a99 ab Version V32 sicher, dass 
- ein zu bearbeitender Datensatz in der Datenbank verriegelt
  ('gelockt') ist
- und der geladene Datensatz mit dem in der Datenbank übereinstimmt?

Viele Grüße
Anando Eger


On 27 Aug 2013 at 17:42, Anando Eger wrote:

> Liebe Listenleserinnen und -leser,
> 
> bis A99 V31 funktionierte das Neuladen eines verriegelten 
> Datensatzes noch:
> 
> set rec lock\var "#" i\find oder
> set rec lock\var "#" i\f1nd
> 
> Der Lock-Zustand blieb erhalten. Mit der aktuellen Version (33.3) 
> wird der Satz jedoch bei var "#" i\find #nnn bzw. f1nd #nnn 
> freigegeben.
> 
> Dadurch läßt sich aber nicht mehr sicherstellen, dass der gerade 
> geladene Satz mit dem in der Datenbank befindlichen übereinstimmt.
> 
> Denn:
> 
> Zwischen
> 
>    find .... first 
> 
> o.ä. und einem folgenden
> 
>    set rec lock 
> 
> kann der Satz in der Datenbank ja schon wieder verändert worden 
> sein.
> 
> In der xset.rtf steht jedoch:
> 
>         ... Automatisch, etwa vor dem Laden des nächsten Satzes oder am Ende des Jobs, wieder 
>         freigegeben wird der Satz nur in avanti, aber in a99 nicht, d.h. da muß man das mit  set 
>         unlock  selber tun. ...
> 
> Das scheint nicht zu stimmen, wie man mit diesem Einzeiler leicht 
> prüfen kann:
> 
> x set rec lock\var "#" i\f1nd\if Lock mes Locked;set rec free
> 
> Ob find oder f1nd verwendet wird, scheint in diesem Zusammenhang 
> unerheblich zu sein.
> 
> Habe ich hier noch irgend ein neues Feature übersehen, mit dessen 
> Hilfe ich eine Übereinstimmung den Recordversionen in der Datenbank 
> und im Speicher wieder sicherstellen kann?
> 
> 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
> -------------------------------------------------------------------
> == Wir sprechen deutsch. ==
> 
> 
> 
> 





Mehr Informationen über die Mailingliste Allegro