[Allegro] Vb.284 Vorabdruck : u.a. Neuer Diagnose-Job für Exportparameter

Bernhard Eversberg b-eversberg at gmx.de
Fr Nov 18 09:46:51 CET 2016


Das neue GP V36.4 soll Anfang nächster Woche kommen.
Wer momentan keine Probleme hat, braucht noch nichts zu tun, nur bei Interesse lesen.
Vorab liegen aber schon zum Ausprobieren die wesentlichen Programme hier:

  http://www.allegro-b.de/download

und zwar:
a99.zip, acon.zip, alcarta.zip, index.zip, srch.zip, import.zip, expdiag.job
(in a99.zip ist auch a99a.exe mit drin)
Für Linux:  allegro-prog.tar.gz   darin v.a. acon und expdiag.job

************************************************************************

Verlautbarung 284 zur allegro-Entwicklung                    2016-11-18

Neue Export-Diagnose und kleinere Verbesserungen
================================================


V36.4 ist da
------------
Veraendert wurden oder neu hinzu kamen nur ein paar wenige FLEXe, 
Parameterdateien und Dokumentationsdateien (.rtf und .vw) sowie ein 
neuer expdiag.job (s.u.).


RDA-Codes : FLEX verbessert
---------------------------
Es kann so kommen, dass mal die Codelisten aktualisiert werden muessen.
Dann brauchen wir im Prinzip nur den FLEX  rdacodes.flx  zu erneuern,
der Anwender holt sich die neue Fassung mit  X gf rdacodes.flx  und
gibt in a99 den Befehl:

  X rdacodes

und schwupp, sind die Listen aktualisiert.
Das waere also total unproblematisch. Der FLEX wurde trotzdem noch in
einigen Punkten verbessert: Es wird bei jeder der vier Listen zuerst
geprueft, ob sie schon vorhanden ist, und wenn ja, gefragt, ob sie
aktualisiert werden soll.
Am Ende wird der Index wieder zurückgesetzt auf den Punkt vor dem
X-Befehl. Sonst ist man naemlich mit Alt+i ploetzlich in der Datei
cat.azx, wo man ja bewusst gar nicht hin wollte. Solcherlei
Irritation macht immer einen schlechten Eindruck ...


DNB-FLEX verbessert
-------------------
Es kam zu einer Endlosschleife, wenn in einem DNB-Satz zwei MARC-Felder
mit der Nummer 490 (= Serientitel) vorkamen. Das wurde behoben, daraus 
werden dann zwei oder mehr Felder der Kategorie #85.

dnb.flx und srugbv.flx uebernehmen jetzt die ZDB-Nummer in #89Z. Das
kann nuetzlich sein bei Migrationen oder Datentausch.


Neuer FLEX ftsu.flx = Volltextsuche in den geloeschten Saetzen
-------------------
Es kommt schon mal vor, dass man einen Satz irrtuemlich geloescht hat.
Dabei können drei Situationen auftreten:

A.
Wenn man das sofort merkt - kein Problem: Mit Alt+q die Liste der
"Daten in Bearb." aufmachen, da steht der Satz drin, am Ende. 
1. Balken drauf - der Satz erscheint mit rosa Hintergrund
2. mit Esc Liste zumachen 
3. auf dem Menue oben die Funkton "Aktivieren" klicken
4. Die Frage bejahen, ob der Satz neu gespeichert werden soll.
Fertig.

B.
Wenn man es erst später merkt, nach dem Ende der Sitzung:
Dann kommt der neue FLEX zur Geltung:
1. X ftsu
2. Suchwort eingeben - irgendein charakteristisches Wort aus dem Titel
   oder einen Namen oder sonstwas, ganz egal.
3. Die geloeschten Saetze werden nicht im Index (da stehen sie nicht
   mehr) gesucht, sondern sie werden zuerst im Reg. 1 zu einer
   Ergebnismenge zusammengefasst: Dazu dienen die Schluessel mit //
   am Anfang.
4. Diese Saetze sind in der Datenbank durchaus noch vorhanden, nur
   eben ungueltig gemacht. Trotzdem kann das Programm auf diese
   Ergebnismenge die Prozedur der "Volltextsuche in der Erg.Menge"
   anwenden.
5. Ein oder mehrere Datensaetze erscheinen, alle mit rosa Hintergrund,
   in denen der Suchbegriff vorkommt.
6. Balken auf den richtigen
7. mit Esc Liste zumachen 
8. auf dem Menue oben die Funkton "Aktivieren" klicken
9. Die Frage bejahen, ob der Satz neu gespeichert werden soll.

C.
EIN Problem kann auftreten, wenn einem erst nach Tagen auffaellt,
dass man da einen Satz faelschlich geloescht hat! Der ungueltig
gemachte Datensatz kann in der Zwischenzeit von einem anderen
ueberschrieben worden sein. Auch dann besteht noch eine Chance:
Eine Kopie des geloeschten Satzes steht in der Log-Datei, da kann
man ihn wieder herausfischen:. Die Funktion steht auf dem Menue
h super
Klicken Sie auf LOG, oder zuerst auf HILFE..HILFE..HILFE, um die
Sache genauer erklärt zu bekommen. Weiter geht es dann wie im
Fall B, sobald man den Satz auf dem Schirm hat.


cat.api : Nicht mehr zwei Varianten
-----------------------------------
Es gab lange Zeit eine grosse und eine kleine Variante der Standard-
Indexparameter cat.api. Die kleine lag auf dem ProgDir, die grosse in
demo und demo2. Das war nicht extrem sinnvoll und inzwischen eher
überflüssig. Es kann ruhig jeder mit der groesseren arbeiten, auch wenn
z.B. die Ausleih- oder Erwerbungsfunktionen nicht genutzt werden.
Deshalb ist jetzt nur noch die groessere Version im GP, und zwar
im ProgDir, nicht mehr in demo und demo2.
Schauen Sie mal, von welchem Datum Ihre Fassung ist, wenn Sie eine
in Ihrem Datenordner haben! Sind Sie zufrieden mit der Indexierung?
Sind bei Ihnen keine Besonderheiten eingebaut worden, etwas fuer die
Signaturen o.ae.? Dann mal die aeltere Fassung woanders hin verschieben
und den Index neu aufbauen; das Programm nimmt dafuer dann die neue
Fassung vom ProgDir. Schauen Sie sich dann in allen Registern kritisch
um. Bemerken Sie unerfreulich andersartige Eintraege im Vergleich zu
vorher? Dann die alte Datei wieder zurueckkopieren in den Datenordner
und nochmal den Index erneuern, dann ist wieder alles wie vorher.
Unerklaerliche Auffaelligkeiten bitte melden, nicht sich murrend
damit abfinden!


Hilfe A-Z : quick.vw
--------------------
Die Datei quick.vw im HELP-Ordner steckt hinter dem Button "Hilfe A-Z",
kann aber auch mit dem Befehl  v quick  abgerufen werden.
Sie wurde erweitert um etliche Eintraege, die sich auf die "Tricks"
beziehen. Diese sind zwar z.T. nur fuer FLEXperten interessant und
daher in flex.vw eingebaut, aber viele Themen könnten auch jemanden
interessieren oder von ihm gesucht werden, der nur die quick.vw
per Button aufruft und mit FLEX nichts am Hut hat.


Platz fuer interne Hilfsvariablen erweitert
-------------------------------------------
Beim Verarbeiten von groesseren Textdateien mit FLEX konnte es
zum Absturz kommen, z.B. bei Befehlen wie  var (b"xyz"), wenn
in dem Moment der Inhalt der iV jenseits 250000 Byte lang war.
Das wurde behoben. Ganz beliebige Laengen sind aber weiterhin
nicht moeglich! Der dynamische Umgang mit langen Textvariablen
ist in C++ leider nicht so einfach bzw. ist in den Programmen
suboptimal geloest. Dies zu aendern ist im Nachhinein nicht
mehr moeglich, ausserdem wuerde wohl das Laufzeitverhalten
sich verschlechtern. Hier ist definitiv ein Manko von allegro
zu erblicken, jedoch ist es fuer Normalanwender nicht relevant.
Hinweis: Wenn man beliebig lange Textdateien zeilenweise verarbeitet,
entsteht kein Problem. Nur wenn man eine Textdatei komplett einliest
mit  var Fdateiname  und dann diesen Inhalt in eine $-Variable
kopiert und diese mit Manipulationsbefehlen  b"..." und e"..."
abarbeitet. 
Davon profitieren a99, alcarta und acon.


FLEX-Hilfetexte HTM-Version aktualisiert
----------------------------------------

  http://www.allegro-b-de/download/doku/flex


var sk klappte nicht  (Absturz)
--------------------
Dieser Befehl entspricht der Funktion F7 von a99: die Registereintraege
des aktuellen Satzes werden in die iV geschrieben.
Behoben


Parameterdateien
----------------
Wer sich mit Export- und Indexparametern beschaeftigt, kann schon mal
ein schwierig aufzudeckendes Problem erleben:
1. Eine Sprungmarke ist nicht vorhanden
2. Eine Sprungmarke kommt doppelt vor
3. Eine Feldnummer ist ungueltig
4. Ein Unterprogr. existiert nicht oder hat keinen Abschluss
u.v.m.
Sowas ist leichter rauszukriegen mit einem hilfreichen Werkzeug. Es
gibt sogar zwei:
A. Das Allers-Programm jumps.exe   - leider 16bit
B. Das Berger-Programm analyze.pl  - braucht leider Perl

Ein Jobscript expdiag.job wurde nun geschrieben (Export-Diagnose).
Mit acon kann man damit beide Probleme schnell loesen.
Die Datei enthaelt ausreichend Kommentar, in engj. Sprache.
Aufruf: acon -jexpdiag -fdateiname -dDbDir -bDbName -kKonf
  z.B.: acon -jexpdiag -fcat.api -ddemo2 -bcat -ka  
Voraussetzung ist das neue acon, auch fuer Linux!



a99 und acon Export: Kleine Ungenauigkeit mit #b~x
--------------------------------------------------
Bestimmte Grundwerte der betr. Parameter wurden rueckgesetzt, z.B.
Zeilenlaenge und Einrueckung, Auswirkung also vor allem bei Textexport.
(Aufgefallen war das einem Anwender mit seinen Anzeigeparametern.)
Behoben


Export : Maskierungszeichen bei Ersetzungen 
-------------------------------------------
 (Handbuch 10.2.6.3, S. 202 unten)
Bis jetzt war es so, dass nur das ? als Maskierungszeichen in den
Ersetzungsbefehlen verwendet werden konnte. Deshalb konnte man nicht
z.B. sagen

#90 ,"_x?_x!_"

um die Zeichenfolge x? in #90 in x! zu wandeln, auch wenn man

?=!

gesetzt hatte, denn dies wirkte sich nur in Manipulationsbefehlen aus,
z.B. in b"x?y"
Dies wurde geaendert, und zwar in a99, a99a, alcarta, acon und Quadriga
nicht in PRESTO.
 

Kalender-FLEX repariert
-----------------------
Mit der Datei kalender.flx war etwas passiert, wodurch der Klick auf 
die Monate in der obersten Zeile nicht mehr klappte, ausser FEB.
Das wurde repariert.





Mehr Informationen über die Mailingliste Allegro