README V14b ------------ (1996.01.08) Diese Diskette ist eine Update-Disk, sie enthaelt kein vollst„ndiges System! Sie k”nnen also nur etwas damit anfangen, wenn Sie schon eine "allegro"-Installation haben. Siehe unter "Installation". (Als Neu-Anwender erhalten Sie eine Diskette "Kernsystem", die aber kein vollst„ndiges System mehr enthaelt, sondern durch diese Diskette erg„nzt wird.) Als "offiziell" gelten ab sofort nur noch Kernprogramme mit dem Datum 8.1.1996, Uhrzeit 14:02 oder sp„ter. (14:02 deshalb, damit man unmittelbar die Zugeh”rigkeit zu 14b erkennt) Inhalt: (Empfehlung: Zeit nehmen fr die Lektre, es lohnt sich) ------- -- Installation - Neu-Installation siehe --> README auf der Diskette 14a - Update-Installation. Es wird nichts bergebgelt! - Bisherige Dateien und Programme in Reserve - Netz-Installation siehe --> README auf Disk. 14a -- Tabellen o.apt und d.apt fr ASCII -> ANSI (UNIX, Windows) -- Tabelle ansiasci.apt : ANSI -> ASCII mit OSTWEST.FON -- Parameterdatei D-FLIP.APR mit Beispielen fr Flips -- Letzte Neuerungen: u.a. neue Option -I fr PRESTO [sehr wichtig] und neue Manipulationsbefehle v und V und: PRESTO toleriert jetzt Unordnung -- Letzte Korrekturen [wichtig bei 3- oder 4-stelligen Kategorien] Installation: ------------- 1. NEU-INSTALLATION: [wenn noch kein "allegro" auf dem Rechner ist] -------------------- Dazu brauchen Sie die Diskette "Kernsystem". Darauf steht gleichfalls eine Datei README mit den n”tigen Anweisungen. Anschliessend nehmen Sie diese Diskette und fuehren 2. aus: 2. UPDATE-Installation: (wenn Sie schon eine frhere Version haben) ----------------------- im CockPit die Routine "Neue Version installieren" anw„hlen, dann 'u' fr "Update" drcken. Dazu brauchen Sie dann NUR die "Update-Disk" ! Es wird nichts bergebgelt: Bisherige Dateien und Programme werden in Reserve gehalten! Die alten Programme und die wichtigsten Parameter- und Stapeldateien werden auf ein Verzeichnis V14 kopiert, bevor sie berschrieben werden! Die neuen Dateien werden zus„tzlich auf ein Verzeichnis 14b kopiert. Im CockPit-Men "Routinen" gibt es einen neuen Punkt "X : Extern". Dieser macht bei V14a folgendes: es kommt ein kleines Men, auf dem Sie w„hlen k”nnen, eine alte Datei zurckzuholen oder eine der neuen Dateien (wieder) zu aktivieren. Es wird jeweils eine Liste gezeigt, welche Dateien dazu bereitstehen. Wenn also z.B. Ihre Bildschirmanzeige bei 14a nicht mehr so aussieht wie frher, dann holen Sie die alte Datei D-1.APR zurck. Die neuen Versionen der Parameterdateien haben das Datum 8.1.96. (Das letzte Bearbeitungsdatum steht in der Datei in der dritten Zeile.) Tabelle o.apt ------------- Mit doppeltem Boden : Zeichenkonvertierung fr das Editieren Die Tabelle o.apt wandelt ASCII in ANSI um, damit man unter UNIX die richtigen Zeichen sieht, wenn man auf eine DOS-Datenbank zugreift. Fr jeden Code, der nicht identisch ist, muss eine Zeile dieser Form vorkommen: o .ASC ANS Wobei ASC der dezimale ASCII-Code, ANS der dezimale ANSI.Code ist. Beispiel: o .132 228 das kleine ae Nur diejenigen Codes, die ver„ndert werden muessen, brauchen mit einem o-Befehl angegeben zu werden. Kurz: standardmaessig ist o .x x fr jedes Zeichen voreingestellt. Beim Befehl E bzw. beim Abspeichern findet die Umwandlung automatisch statt. Kurz: Was man zu sehen bekommt, ist immer der zweite Code des o-Befehls, gespeichert wird aber der erste. Es ist klar, dass die Tabelle ein-eindeutig sein muss, sonst wuerden Fehler bei der Rck-Umwandlung auftreten. Kurz: Es darf keine zwei Zeilen mit unterschiedlichen ASC-Werten, aber gleichen ANS-Werten geben. Ausserdem wird die Tabelle o.apt fr die Kurzanzeige und fuer die Kategorieanzeige benutzt. Die Dateien o.apt und d.apt sind so angelegt, dass keine Sonderzeichen in den Kommentaren vorkommen, auch keine Umlaute. Es gibt dann keine Probleme mit der Lesbarkeit unter UNIX und Windows. Wenn man VP oder das "presto" des X-Systems per telnet benutzt, sind die Umlaute meistens problematisch, d.h. kommen nicht korrekt an, Dafuer gibt es noch zwei Tabellen: opac.apt statt o.apt, macht z.B. aus '„' ein 'a' dpac.apt statt d.apt, ersetzt z.B. '„' durch "ae" Obacht: Die opac.apt ist nicht ein-eindeutig! D.h. man darf bei ihrer Benutzung nicht editieren, sonst gibt es beim Speichern Verf„lschungen. Man muss also fuer telnet-Zug„nge eigene Versionen der Parameter vorhalten, oder jeweils vor dem presto-Aufruf die eine oder andere Tabelle auf den Namen o.apt kopieren! Bei einem telnet-Dialog aus Netscape heraus hat man wunderbarerweise eine 8-bit-šbertragung, d.h. dabei k”nnen o.apt und d.apt verwendet werden, und man sieht alle Sonderzeichen als ANSI-Zeichen innerhalb des telnet-Fensters. Ausserdem kann man in so einem Fenster auch scrollen, etwa bei Benutzung von VP. Das sind entscheidende Vorteile gegenber z.B. NCSA-telnet unter DOS. Tabelle ansiasci.apt -------------------- Wenn man Daten aus Windows- oder UNIX-8bit-Systemen hat, sind es i.d.R. ANSI-Codes. Diese koennen mit der Tabelle ANSIASCI.APT konvertiert werden. Dabei sind OSTWEST-Codes bercksichtigt. Die Tabelle ist kommentiert. Tabelle p-asci7.apt ------------------- Ausgabe ohne Umlaute und Akzente, statt dessen Grundbuchstaben. Wenn Ihre Liste als Datei z.B. fr Primitiv-UNIX ausgegeben werden soll, benutzen Sie diesen "Treiber". OSTWEST-Codes bercksichtigt. D-FLIP.APR ---------- Starten Sie die Demodatenbank per CockPit, dann w„hlen Sie per F2 F2 F2 die D-FLIP aus und Sie werden schon sehen, was Sie dann sehen. In der Datei sind natrlich die relevanten Dinge kommentiert. Weiteres zum Thema FLIP unter Punkt 9) ganz am Ende dieser Datei. Letzte Neuerungen [siehe "allegro news" Nr. 40 fr alles andere] 1) Neue Option -I fr PRESTO (auch APAC usw.) ---------------------------- Mit dieser Option kann man eine andere Index-Parameterdatei laden lassen. Das ist besonders fr APAC interessant: Der Opac-Benutzer braucht nicht den vollen Umfang der .API. Erstens geht dann der Programmstart schneller, zweitens wird weniger Parameterspeicher gebraucht, d.h. man koennte den mX-Wert in der Opac-CFG reduzieren (wenn man eine solche hat). Man gibt also ganz schlicht: PRESTO ... -Iopac ... bzw. entspr. fuer APAC oder ALFA dann wird OPAC.API statt der zur Datenbank geh”rigen API geladen. Es versteht sich, dass man da bei PRESTO sehr aufpassen muss: Wenn Bearbeitungen durchgefhrt werden, sollen ja keine falschen oder ganz anderen Schlssel entstehen. Was muss eine OPAC.API mindestens enthalten: -- die Basisparameter (fl=0, i4=1 usw.) -- den Abschnitt #-@ fr den Prim„rschluessel -- die Abschnitte #-1 ... #-9, #-: fr die Umcodierung der Benutzereingabe (Abschnitt #-0 fuer die Kurzanzeige wird nicht gebraucht) -- alle Bestandteile (Unterprogramme, Zwischenteile etc.), die evtl. aus diesen Abschnitten heraus aufgerufen oder darin gebraucht werden. -- die p- und q-Befehle, da notwendig fuer die Umcodierung -- Wenn man Option -I bei aLFA einsetzt, muessen ausserdem die Teile fr die Indexierung der Ausleihangaben vorhanden sein. 2) Manipulationsbefehle v und V (Vergleichsbefehle) ------------------------------- Jetzt kann man prfen, ob ein Zeichen groesser oder kleiner als ein bestimmter Wert ist: vk,x ist das Zeichen auf Position k kleiner als x? Dann weiter Vk,x ist das Zeichen auf Position k groesser als x? Dann weiter Gilt die betr. Bedingung nicht: Abbruch. Das Verhalten entspricht dem der Befehle i und I. Die zwei Befehle lassen sich natuerlich kombinieren, z.B. #40 V4,@ v4,[ d.h. #40 wird nur ausgegeben, wenn es mit einem Grossbuchstaben beginnt (@=64, A=65, ... , Z=90, [=91) Die Vergleiche beziehen sich immer, wie bei i und I, auf die Original- kategorie, nicht die dur Manipulation evtl. ver„nderte. Das kann man umgehen, indem man die manipulierte Kategorie zuerst in eine #u-Variable speichert und dann diese exportiert. 3) PRESTO toleriert jetzt auch Unordnung ---------------------------------------- Was den anderen Programmen recht ist (news S.9), gilt jetzt auch fr PRESTO. Das bedeutet: man kann bedenkenlos in der CFG mal die Reihenfolge der Kategorien „ndern. Zu sehen bekommt man die Daten dann immer in der Reihenfolge, die der CFG entspricht, und beim Bearbeiten und Abspeichern wird diese Ordnung dann auch gespeichert. Beim Neuindexieren (mit -f7 oder -fn) wird alles neu geordnet, beim Exportieren per SRCH auch. VP hat uebrigens auch diese Eigenschaft! SNIFFER findet falsche Anordnungen, wenn man eine CFG als Option eingestellt hat. Jetzt kann man solche Meldungen ignorieren. Letzte Korrekturen (29.12.95 bis 4.1.96) ---------------------------------------- 1) Die Abfrageliste hatte ein Problem mit dem Kopieren aus dem Hintergrundspeicher: Wenn man nnnn " xxxx: ". setzte, kam nicht die richtige Kategorie. Das trat bei 3- und mehr- stelligen Systemen auf. Korrigiert. 2) Noch andere Korrekturen wurden durchgefhrt im Bereich der Abfrage- listen-Abarbeitung. Es gab da gewisse Irritationen, z.B. bei dem I-Befehl oder bei F9. 3) Kategorie #u2 liess sich bei 3- und mehrstelligen Systemen nicht exportieren, d.h. nur mit dem Trick, einen Punkt hinter #u2 zu setzen. Jetzt funktioniert es richtig. 4) Nur als Hinweis: Wenn man eine PV-Routine hat, darf dort nach dem Sprungverteiler nicht #+- stehen, es muss #+# sein. Sonst klappt die Umcodierung der Benutzereingabe nicht. 5) IMPORT konnte h„ngenbleiben, wenn ein Datenfeld im Fremdsatz zwar existierte, aber nur Leerzeichen enthielt. 6) In PRESTO kann man seit alters mit und die zuvor bearbeiteten Datensaetze durchbl„ttern. Bei Umschaltung auf andere Datenbanken konnten Fehler passieren: Es wurde der Satz mit gleicher Nummer aus der anderen Datenbank geladen. Jetzt merkt sich PRESTO neben der Satznummer auch die Datenbank, dann klappt es. Insbesondere wird beim Speichern eines Satzes dessen Nummer gemerkt, so dass man auf korrigierte und kopierte Saetze in jedem Fall wieder zuverlaessig zurueckspringen kann. 7) Tip fuer Flip Will man das ach so umstaendliche und kryptische Alt+a vermeiden, programmiere man sich diesen Flip in die Anzeigeparameter: #t{ C "[" t71 "u" t76 "] umschalten" } #uxb p"<0|" dZa aZa #uxa AZa Dann erscheint [a] umschalten in der Anzeige (das a in rot) und es entsteht #uZa<0|iregzeil wobei i die Nummer des zuletzt benutzten Registers ist, "regzeil" die Zeile, von der aus zugegriffen wurde. Auf genau die entsprechende Zeile in der zyklisch naechsten Datenbank (1->2->3->1) wird dann umgeschaltet. 8) Programm QRIX hatte Macken. Mal konnte es eine Indexdatei nicht zusammen- mischen (aus den i$-Dateien), mal konnte es eine schreibgeschuetzte Indexdatei nicht lesen. Jetzt geht alles. 9) Zu guter Letzt wurde noch eine neue FLIP-Methode zusaetzlich eingebaut: Flips die Zweite ---------------- Die erste Methode, Flips zu programmieren, setzt voraus, daá man u.U. viele Anwendervariablen zu berwachen hat. Wenn die Zahl der Flips von Datensatztyp zu Datensatztyp sehr stark schwankt, oder wenn man sich z.B. aufgrund der Datenstruktur einen Automatismus berlegen kann, der alle ben”tigten Flips in einer Schleife programmieren kann, geht man am besten einen anderen Weg: Man ben”tigt nur eine Anwendervariable, in der die Flips nach folgendem Muster aneinandergereiht sind: #uFl 1FLIP12FLIP23FL... Der Name dieser Anwendervariablen ist beliebig. Jeder Flipeintrag beginnt mit einem Trennzeichen und einem Kennbuchstaben. Der Kennbuchstabe ist auch beliebig. Als Trennzeichen schlagen wir das Teilfeldtrennzeichen '' vor, die Parametrierung, welche bei dieser Methode notwendig ist, vereinfacht sich dadurch. Man ben”tigt einen Abschnitt #-` (` = ASCII 96) in der Anzeigeparameterdatei, in dem die Auswertung der Tasten erfolgen muá. Die Sprungmarke ist fest und ab jetzt fr diesen Flipmechanismus reserviert. Man ben”tigt hier keine ak-Zeile, denn der Abschnitt wird programmintern angesprungen („hnlich wie #+@). In diesem Abschnitt steht einem in der Sondervariablen #u1 sowohl die Taste, als auch die Nummer der gerade aktiven Datenbank zur Verfgung. Z.B.: #u1 30 D.h. Taste [3] wurde gedrckt und aktiv ist Datenbank Nr. 0. Die Datenbanken sind von 0 bis 2 durchnummeriert, wobei die erste Datenbank die Nummer 0 hat. In diesem Abschnitt wertet man die Taste (und bei Bedarf auch die Datenbanknummer) aus. Man extrahiert aus obiger Anwendervariable den Flip-Befehl, der zu dieser Taste geh”rt. Dieser Befehl ist das Ergebnis dieses Abschnittes. Das Programm wertet das Ergebnis aus und reagiert entsprechend. Ein Beispiel: In dem Teil fr die Anzeige eines Titels findet man diese Befehle: ... Erzeugen der Flip-Anwendervariablen, (#utz in diesem Fall): #31c p"c?|3" Atz Umschalten auf Reg. 3 K”rperschaftsschlagwort (Ort) #31p p"p?|3" Atz Umschalten auf Reg. 3 Personenschlagwort #31m p"p?|3" Atz Umschalten auf Reg. 3 Musikschlagwort ... Erzeugen des Hinweises in der Anzeige: #31c { " [" t71 "1" t76 "] mehr zu: " } #31p { " [" t71 "2" t76 "] mehr zu: " } #31m { " [" t71 "3" t76 "] mehr zu: " } ... Auswertung der Tasten: Kernprogramm springt automatisch nach #-`, wenn eine nicht definierte Buchstaben- oder Zifferntaste gedrueckt wird. (Programmieren Sie hier einen kompakten Sprungverteiler, damit das Programm bei Tasten, die zu keiner Reaktion fhren sollen, schnell weitermachen kann) #-` #u1 +c i4,1 e0 #zz 0 Taste steht auf erster Stelle im Kategorietext! #u1 +p i4,2 e0 #zz 0 bei mehr als zweistelligem Schema muá der i-Befehl #u1 +m i4,3 e0 #zz 0 angepaát werden: z.B. i5,1 im dreistelligen Schema #u1 e0 #zz 0 Alle anderen Tasten drfen hier keine Reaktion l”sen #+# Extraktion des entsprechenden Flipbefehls: (hier zeigt sich der Vorteil der Verwendung von '' als Trennzeichen!) Es entsteht als Ergebnis praktisch der Befehl fuer das Kernprogramm, wohin es flippen soll: #-c #utz c Ergsbnis #+# Rueckkehr zum Kernprogramm #-p #utz p #+# #-m #utz m #+# Erfolg mit V14b wnscht die "allegro"-Entwicklungsabteilung der Universit„tsbibliothek Braunschweig. 1996/01/08