[Allegro] Teilexport

Thomas Fischer fischer at mail.sub.uni-goettingen.de
Di Jan 31 14:41:01 CET 2006


Liebe KollegInnen,

ich möchte mit srch einen Teilexport meiner Datenbank machen, also einige ausgewählte Felder einiger Datensätze exportieren.
Da das nicht so funktioniert, wie ich erwartete, möchte ich meine Erfahrungen mitteilen, vielleicht kann man das ja besser machen.

1. Ich möchte Feldern mit allen Folgefelder exportieren und keine Schleifenkonstruktion anwenden. Daher habe ich für jedes Feld einen Kopfbefehl gesetzt: 

ak=zz+T 00+R 11.+R 12.+R 13.+R 14.+R 95+R

um etliche Felder mit allen Folgefeldern zu exportieren.
Leider erzeugt der obige Befehle mehrere Exportsätze, lieber wäre mir, es wäre nur einer.

Denn ich möchte gern mit einem Test:
#95 +- c"^SUB" e0 #zz 0 
den Export abbrechen, wenn in #95 etwas steht, das SUB nicht enthält - soweit ich sehe, wird nichts abgebrochen, sondern der nächste ak-Befehl abgearbeitet.

Gibt es einen Befehl, der mir erlauben würde, in dieser Situation gar keinen Export zu dem Datensatz zu erzeugen?
Ich sehe nur, dass ich zu jedem Kopfbefehl einen Test durchführen muss.
Erzeugt der Befehl zz+T eigentlich auch einen Exportsatz?

(Alternativ könnte ich mit so etwas wie #11.++ arbeiten. Dann wird aber nur bis zur nächsten Lücke gezählt, soweit ich sehe: von #11a,#11b,#11d kommen nur die ersten beiden an - oder täusche ich mich da?)

Ich finde die Begriffe übrigens etwas unübersichtlich: Es gibt
- Datensätze
- Exportsätze
- Ausgabesätze
- Teilsätze
- Aufnahmen
- Aufnahmegruppen
Wann ist ein Exportsatz eine Aufnahmegruppe?

2. Ich möchte gern die Felder durch Zeilenwechsel und die Datensätze (von denen jeder aus 6 oder 7 Exportsätzen besteht, wenn ich das recht verstehe) durch Lehrzeilen trennen.

Dazu habe ich

ze=13 10    (Zeilenende)
ke=C    	Kategorie-Ende
as=""  	Aufnahme-Start
ae=C  	Aufnahme-Ende

gesetzt, was mir plausibel erschien. Das Resultat ist aber:
Die Felder werden durch (ASCII-Nummern)
0d 0a 0d  (13 10 13)
und die Datensätze durch
0d 0a 0d 0d  (13 10 13 13)
getrennt. Das erste Zeichen in der Ausgabe ist ASCII 13

So will ich das nicht. Das gleiche Ergebnis bekomme ich, wenn ich 
  ze=13 10    (Zeilenende)
herauskommentiere.
 
Setze ich
ke=""    	Kategorie-Ende = Zeilenwechsel
und lasse das andere unverändert, so bekomme im das gewünschte.

Mir ist aber nicht klar, wo dann die Leerzeilen zwischen den Datensätzen herkommen (auch die erste Zeile ist eine Leerzeile).

3. Außerdem zählt Allegro bei der Bearbeitung
 22576. Datensatz bearbeitet
Was immer dort gezählt wird, Datensätze sind es nicht. Vielleicht Exportsätze? Oder Aufnahmen?

Für Hinweise immer dankbar
Thomas Fischer

PS.:
Danke an Herrn Allers, Frau Koczian und Herrn Eversberg für die Hinweise. Ich hatte tatsächlich zl=0 gesetzt. Aber ist das nicht trotzdem eine völlig unnötige und verwirrende Meldung?





Mehr Informationen über die Mailingliste Allegro