[Allegro] Problem mit Schleife
Thomas Fischer
fischer at sub.uni-goettingen.de
Do Aug 13 16:28:01 CEST 2009
Liebe KollegInnen,
neben dem eben erwähnten Absturz-Problem hat mich eine kleine Besonderheit
von Avanti Zeit gekostet.
Ich habe ein einfaches Unterprogramm in meiner SUTRS-Anzeige für Z39.50, das
mir die einzelnen Einträge eines Feldes (getrennt durch "; ") zeilenweise
ausgeben soll:
#(W Zeilenweise Ausgabe
#cc =fk #zz 0
#nr p'MSC: !' e'!' =na Tag benennen
#-w
#una <<<<<<<<<< um diese Zeile geht es
#ufk e';' 1. Teil von <fk> eintragen, Zeile
beenden
#ufk +w b'; ' =fk #zz 0 Wenn noch mehr Einträge: 1. Teil
abschneiden, weiter bei -w
#nr dna dfk e0 #zz 0 Variable <na> und <fk> löschen
#)W
Das funktioniert soweit, nur bekomme ich damit
MSC:
05-XX
MSC:
06Axx
MSC:
51Axx
...
Ich muss also den Kategorie-Endecode unterdrücken:
#una #zz 0
Das liefert aber:
MSC:
also überhaupt keine Ausgabe!
Weiß jemand warum?
Die Lösung, die ich nach einigem Probieren gefunden habe, sieht so aus:
Oben:
#nr p'MSC!' e'!' =na
und in der Schleife:
#una P{': '} #zz 0
Ergebnis:
MSC: 05-XX
MSC: 06Axx
MSC: 51Axx
...
wie gewünscht.
Trotzdem würde ich das gerne verstehen!
Mit freundlichen Grüßen
Thomas Fischer
PS.: Ich habe noch die obere Zeile durch
#cc Lna #zz 0
ersetzt, das funktioniert auch und verallgemeinert die Anwendbarkeit.
Mehr Informationen über die Mailingliste Allegro