[Allegro] Flexbefehl qrix

Robert Fischer rfb at blinx.de
Do Sep 6 11:38:52 CEST 2007


Lieber Herr Eversberg, liebe Liste,

vor einiger Zeit war ich beschäftigt mit der Frage, ob eine bestimmte
ID-Nummer belegt ist oder nicht.
Diese Frage jabe ich dann mit einem Vergleich
zwischen der gewünschten Nummer und
dem Ergebnis, das qrix mir lieferte, gelöst.

Jetzt bin ich mal wieder am Prüfen, ob es in der Datenbank eine bestimmte
Benutzernummer überhaupt gibt und ob diese gesperrt ist.

Im Index 11 gibts einen Ersetzungsschlüssel, in dem steht:


!!!!
\ = senkr. Strich (damit jeder es lesen kann)

00055=\:**Name, Vorname
** bedeutet, dass der Ausweis gesperrt ist. Damit kann man leicht gesperrte
Leser indexieren (als Idee).

Es wurde nun geprüft:
1. Gibts die eingelesene Nummer?
2. Ist sie gesperrt?

Unter anderem wurde geschrieben:
...

var #uv0(B"_" e"=")
  zwischenspeichern
ins #uaB
  suchen
var "1 \; " #uv0(B"_" e"=") "=?"
qrix


(Übrigens war hier die Schreibweise qrix 1 nicht möglich)

ins #uaD

var (e"=")

  Prüfen ob identisch, naja, das war schon mal mein Vorschlag, qrix eine
Möglichkeit beizubiegen, nichts zu liefern, wenn nicht identisch, analog zu
dem Ladebefehl, der z.B. #ux: ergibt.

if =#uaB jump identisch
mes "Kein Anschluss unter dieser Nummer"\end
:identisch
if %**% jump nrgesp

Ja, da hätte ich jetzt lange nach ** suchen können.

Irgendwann bin dahinter gestiegen, dass qrix genau soviel Zeichen
zurückliefert, wie ich trunkiert gefragt habe.
Will ich ganze Index-Zeilen haben, lasse ich also das "?" weg.

Das "?" ist also bei find und qrix zu unterschiedlichen Dingen gut:

find liefert mehr Ergebnis,
qrix liefert pro Zeile weniger Zeichen.

Bemerkt habe ich es primär nicht, da zuerst nur das was vor "=" stand,
interessierte.

Also habe ich gelernt, dass eine Trunkierung recht unterschiedliche
Ergebnisse bringen kann.

Aber vielleicht finden wir doch noch einen Weg, zu schreiben:
var "f 7 \; " #uv0(B"_" e"=")
qrix

if "" jump nonumber

Ein bisschen weiter bin ich schon gekommen!

Mit freundlichen Grüßen

Robert Fischer Berlin
rfbATblinx.de
************************************************************






Mehr Informationen über die Mailingliste Allegro