[Allegro] Verknüpfte Speicherung von Datensätzen --- Löschkontrolle?
Bernhard Eversberg
b-eversberg at gmx.de
Sa Jun 8 08:07:01 CEST 2019
> Gesendet: Freitag, 07. Juni 2019 um 13:56 Uhr
> Von: "Bernhard Eversberg" <b-eversberg at gmx.de>
> >
> Lars Raap:
> > Abgesehen von einigen kleinen Darstellungs"anomalien" ist mir da
> > aufgefallen, dass man den Hauptdatensatz löschen kann, auch wenn noch
> > abhängige Unter(?)datensätze vorhanden sind.
>
> Dieser Fall muß noch im C-Quellcode untersucht werden, das geht nicht so schnell.
>
Die Funktion "Löschkontrolle" ist keineswegs entfallen oder kaputt, ganz im Gegenteil:
(Nur mir war der wahre Sachverhalt entfallen, sorry)
Quellcode-Inspektion ergab schnell, daß es mit der Berechtigungsstufe zusammenhängt:
(Für Programmierer: Die Funktion AwDel() in abasew.cpp ist zuständig)
Wenn man in seiner .ini/.ina die Zeile hat
access=4 oder gar =9
dann wird ohne Kontrolle gelöscht! Die Löschkontrolle erfolgt, anders gesagt, nur mit
access=3 oder kleiner.
Warum ist das so? Nun, die mit den hohen Berechtigungen (4 oder 9), das dürften verantwortungsbewußte
Nutzer sein, was auch heißt, sie wissen, was sie tun und warum, und was die Folgen sind.
Der Sachverhalt ist ordnungsgemäß dokumentiert, und zwar im Hilfetext zu den Berechtigungen:
h npw#38
und dieser Text entstand schon im Jahre 2001, zuerst beschrieben wurde die Sache in vb149.
Befriedigend ist das womöglich aber doch nicht, weil offenkundig "unintuitiv".
Was also tun? Immer kontrollieren? Oder nur bei Stufe 9 nicht?
Was meint die Anwenderschaft?
B.E.
Mehr Informationen über die Mailingliste Allegro