[Allegro] Alle Datens"atze entsperren

Bernhard Eversberg ev at biblio.tu-bs.de
Mo Mai 21 13:14:49 CEST 2007


Heinrich Allers schrieb:
> 
>      ich habe mal auf Flexbasis die Entsperrung aller Datensaätze 
> programmiert: 
> 
> first #
> :anfang\if cancel jump ende
> if no jump naechst\if deleted jump naechst
> if Lock jump entsperr\jump naechst
> :entsperr\set unlock
> :naechst\next #\jump anfang
> :ende\mes Alle Saetze sind entsperrt worden!
> 
> 
> Scheint zwar zu funktionieren, aber dauert zu lange. Drum die Frage: 
> Kann man den Menüpunkt unter EXTRAS, der alle Datensätze entsperrt, 
> irgendwie aus dem festverdrahteten a99.exe herausbrechen und als 
> eigenes Modul (Flexdatei?) anbieten?
> 
VIEL schneller würde das auch nicht gehen! Signifikante Beschleunigung
wäre nur zu erzielen, wenn die Sätze nicht, wie es auch die eingebaute
Funktion tut, in aufsteigender Nummernfolge hernimmt, sondern wenn die
ALD-Dateien sequentiell gelesen würden (wie es die neue Volltextsucht 
tut!). Das aber wäre erst zu programmieren...
Und "herausbrechen" - das wäre denn doch zu brachial! Die Funktion
würde schon noch da bleiben, nur zusätzlich per FLEX aufrufbar gemacht.

Man _könnte_ folgendes versuchen: ftr.inc hernehmen, srx herausbrechen
und an der Stelle die Prüfung des ersten Bytes einbauen: ist es 8, dann
Ersatz durch 1.
Aber ich meine, für die seltenen Fälle, wo man das braucht, genügt
die Menüfunktion.


MfG B.E.

Hinweis (für die, die es noch nicht wissen): Sperrung eines Satzes
bedeutet, daß sein erstes Byte in der ALD-Datei auf 8 gesetzt wird.
Normalerweise ist es 1, bei Löschung 9. Andere Dateien, z.B. vor
allem auch die TBL oder ADX, haben mit der Sperrung nichts zu tun.



Mehr Informationen über die Mailingliste Allegro