[Allegro] Avanti: if #nnn und Befehlsfolge

Sibylle Koczian Sibylle.Koczian at t-online.de
Mi Apr 28 18:18:00 CEST 2010


Liebe Liste,

jetzt hänge ich an einem ganz elementaren Punkt fest: Laut 
Flex-Dokumentation müssten auch in Avanti bzw. acon schon seit längerer 
Zeit auf "if #nnn" mehrere Befehle folgen können, getrennt durch 
Semikolon, und wenn "if #nnn" erfüllt ist, müssten die alle ausgeführt 
werden.

Also habe ich in meinen Job diese Schleife gesetzt:

first
:loop
if #20 write #20$t n; jump wtr
if #81 write "*** " #81 " ***" n; jump wtr
write "*** Weder Titel noch Bemerkung ***"
:wtr
next
if yes jump loop

Tatsächlich bekomme ich:

Don Giovanni
1w8380*** Kein Titel und keine Bemerkung! ***

bei einer Ergebnismenge, die nur aus einem Element besteht (bei dem #20 
belegt ist), und entsprechend mehrere derartige Ausgaben bei 
Ergebnismengen mit mehreren Elementen. Das "1w8380" taucht dabei bei 
jedem einzelnen Satz auf, immer die gleiche Zeichenkette, egal, was ich 
suche. Wenn im Satz #20 und #81 belegt sind, werden beide ausgegeben und 
anschließend die Ersatzausgabe.

Und jetzt kommt der dickste Hund von allen: ich ändere einfach nur die 
Bezeichnung des Labels von :wtr auf :weiter und passe die Sprungbefehle 
an. Jetzt bekomme ich bei einer Ergebnismenge mit vier Elementen das hier:

94+1
*** Verworfene Aufnahme ***
1w1835t1836t1837t40201*** Kein Titel und keine Bemerkung! ***
94+2
¼Eine¼ Stunde mit Dir
1w1835t1836t1837t40202*** 2 kurze Aussetzer ***
1w1835t1836t1837t40202*** Kein Titel und keine Bemerkung! ***
94+3
Politik und F³hrerschein
1w1835t1836t1837t40203*** Kein Titel und keine Bemerkung! ***
94+4
Um vier Uhr im Sommer, die Hoffnung
1w1835t1836t1837t40204*** Kein Titel und keine Bemerkung! ***

Da wird doch die Marke falsch interpretiert, und/oder der Sprungbefehl. 
Oder was kann es noch sein?

Kann jemand das reproduzieren? Ich habe es noch nicht mit der 
Demo-Datenbank versucht. Mit Flex statt Avanti alles korrekt.

Beste Grüße,
Koczian




Mehr Informationen über die Mailingliste Allegro