[Allegro] Vb.286 : V37.1 ist da; u.a. noch mehr RDA

Bernhard Eversberg b-eversberg at gmx.de
Di Jan 3 12:56:27 CET 2017


Verlautbarung 286 zur allegro-Entwicklung                    2017-01-02

               Download:  http://www.allegro-b.de/download/inst-all.exe

V37.1 ist da
------------
Aufsehenerregende Neuerungen gibt es nicht. Es wurden aber viele kleine
Verbesserungen gemacht in FLEXen, Parametern, Hilfe- und Menuetexten
sowie einigen ViewListen. Dadurch wird insbes. die Alltagsarbeit mit 
a99/a99a in vielen Punkten verbessert oder vereinfacht. in dieser Vb 
wird nur hingewiesen auf Dinge, die wirklich neu sind oder in
entscheidenden Punkten aufgewertet oder korrigiert.


dnb.flx : Kleinere Verbesserungen
---------------------------------
Hinsichtlich RDA wurden Verfeinerungen eingebracht. Ausserdem wurde
ein Feld #33m erstmals eingefuehrt, in dem die vom Buchhandel 
stammenden "Schlagwoerter" aufscheinen. Das ist in MARC das Feld
653. Es enthaelt auch oft spezifische Codes, die man wohl nicht
haben will. Dann einfach links den Balken auf #33m und "Entf"-Taste,
oder #33m schnell bearbeiten. Indexiert wird es, wie andere Schlag-
woerter, im Reg. 3, mit " *" dahinter.
Wenn ansonsten gar keine Schlagwoerter da sind, dann evtl. aus #33m
eine #31 machen, wenn es sinnvolle Dinge sind.
Wer's gar nicht will: Im dnb.flx die Zeile
  jump 655
aktivieren (d.h. nach links ruecken), dann entsteht die #33m nicht.


Demo-Bank: Mehr RDA-Beispiele
-----------------------------
Die RDA-Beispielsammlung innerhalb der DemoBank wurde erweitert
auf mehr als 70 Datensaetze aller Typen. Man findet sie im Reg. 8
unter "rda dnb ...", und statt ... stehen da Kombinationen wie 
txt/nc, das sind die Codes fuer Inhalts- und Datentraegertyp, die
in #0c.1 bzw. #77.1 kommen. Zusaetzlich dahinter noch Bezeichnungen
fuer "Art des Inhalts", damit man schneller was Relevantes findet.


acon: newdb.job verbessert  (Neue, leere Datenbank anlegen)
--------------------------
Der Job tat es nicht mehr, das wurde gerichtet. 
[Fuer Kenner der Quellcodes: Es lag an einer Aenderung in abasew.cpp]
Das Neuanlegen einer leeren Datenbank ist damit ein Klacks:
Will man zur Konfiguration c.cfg und Indexparameter daba.cpi eine
leere Datenbank auf d:\data\mydb anlegen, geht das mit diesem Befehl:

al new d:\data\mydb daba c   (Windows)

Unter Linux existiert kein al.bat, da geht es mit

./acon -jnewdb -d/data/mydb -bdaba -kc

Mit a99 hat man mit  h newdb  mehrere Moeglichkeiten, eine neue
Datenbank anzulegen. Wenn schon Daten vorhanden sind, im Format .alg
(Grunddateien) oder .ald (Datenbankdateien), dann s. Kap.7 (h ac7-1).

Unter Windows und Linux ist es sonst per  al.job  moeglich:

acon -j al     bzw. ./acon -j al

und dann diese Tastenfolge:  
a   : Admin 
n   : New Database
c Enter  : Konfiguration c.cfg auswaehlen
c:\data\mydb Enter : den Ordnernamen eingeben
Dann nur noch die Nachfrage mit yes bestaetigen.

Die Dateien (c.cfg, daba.cpi) muessen existieren und auf dem ProgDir
liegen oder - wenn es schon existiert - auf dem DbDir. Wenn dieses
noch nicht existiert, wird es angelegt (in al.job mit mkdir ...). 
al.job startet dann den  newdb.job


ris.aim
-------
Der Import aus dem RIS-Format (auch Citavi-Daten) wurde aktualisiert,
nachdem das Format allerhand Aenderungen hatte erleiden muessen.


alcarta absichern, damit a99 nicht gestartet werden kann
--------------------------------------------------------
Im _start.flx stand unterhab von :alc folgende Zeile:

flip 4&4: Hilfe A-Z=x set i9Hilfe A-Z\\View quick  ...

Deswegen konnte man aus alcarta heraus mit Alt+4 das Programm a99
starten, weil damit quick.vw angezeigt wurde und darin eine Zeile
fuer a99 und eine fuer a99a ist, mit denen die betr. Programme dann
gestartet werden.
Das ist nicht sinnvoll und potentiell riskant. Daher wurde die Zeile
ersetzt durch

flip 4&4: Umrechnung=X umrech|Umrechnungen zwischen versch. Einheiten

Dies wurde in der DemoBank und im allgemeinen _start.flx jetzt so
eingestellt.

"Was passieren" konnte auch mit F8 (Kontextabhaengige Funktionen).
Dagegen wurde aber jetzt der FLEX onf8.flx entschaerft.

Andere Stellen, an denen a99 aus alcarta heraus gestartet werden
konnte, wurden in gruendlichner Durchsicht der Dateien nicht entdeckt.

Weitere Tips zum Thema Absicherung (im Normalfall nicht noetig)

FALLS es mit irgendeinem Menuepunkt o.a. gelaenge, von alcarta nach
a99 zu wechseln, dann haette a99 dieselbe Befugnis wie alcarta, d.h. 
den "access"-Wert, den alcarta aus seiner INI-Datei entnommen hat. 
Liegt dieser Wert unter 3, kann anschliessend auch a99 nicht auf 
Register 11 zugreifen. Ist der Wert 0, hat a99 keine Schreibberech-
tigung. Denn a99 startet mit derselben ini-Datei wie das aufrufende 
alcarta.

Wenn man in diese INI-Datei noch reinschreibt :

ShowIndex=11111111100

kann a99 auch nicht das Register 10 aufmachen. 11 sowieso nicht, wenn 
access<3 ist.

In die INI-Datei fuer alcarta setzt man normalerweise access=0, ausser
wenn Schreibzugriff wirklich gebraucht wird. Das ist normalerweise der
Fall nur fuer die Funktion "Vormerken" bei aLF, da braucht man =3.
Oder wenn bei Spezialanwendungen dem alcarta-Nutzer auch ein Formular
angeboten werden soll, um eigene Datensaetze einzubringen. So etwas
muesste der Admin eigens einrichten. Es sind keine Anwendungen bekannt,
wo das schon mal gemacht worden waere.

Ansonsten kann man aus quick.vw (liegt in HELP) auch die zwei Zeilen 
fuer a99 und a99a rausnehmen, dann ist ein Ueberwechseln gaenzlich 
verhindert, auch fuer a99 selbst.

Was man noch machen kann:
In FLEXe, die alcarta nicht starten soll, diese 2 Zeilen an den
den Anfang setzen:
var m
if "alc" end
alcarta kann FLEXe nur indirekt starten, nicht manuell mit einem x-
oder X-Befehl.
Und was mn nicht ueber Menues oder ViewListen fuer alcarta zugaenglich
macht, das ist sowieso ungefaehrlich.


Neuer FLEX: inventnr.flx
------------------------
Zugleich Beispiel fuer automatisierte jahrgangsweise Nummernvergabe
Koennte auch in  onput.flx  integriert werden, um beim Speichern eines
neuen Satzes die Nummernvergabe auszuloesen

Voraussetzung: Reg.9 hat Eintraege  ZJJJJ   nnn,  aus #91 JJJJ.nnn
JJJJ = Jahr der Inventarisierung, nnn = Lfd.Nr., im Index 6stellig mit fuehrenden Spatien
Wenn unter JJJJ noch kein Eintrag im Reg., dann entsteht #91 JJJJ.1
$$$ Aenderungen moeglich bei Zeilen mit $$$ 

1.
  Einbindung in _start.flx:
  $INVENTNR=Ja

2.
  In onput.flx die noetigen Aenderungen machen (dort kommentiert) 
  und die Datei dann in den Datenordner legen






Mehr Informationen über die Mailingliste Allegro