[Allegro] Vb.289: a35v2 ist da

Bernhard Eversberg b-eversberg at gmx.de
Di Mai 23 09:10:54 CEST 2017


Verlautbarung 289 zur allegro-Entwicklung                    2017-05-23
-----------------------------------------

a35v2 ist da
============
               Download:  http://www.allegro-b.de/download/a35v2.zip

Ziele der neuen a35-Version
---------------------------

Zunaechst: a35 hat auch schon Anhaenger gefunden, die mit recht
exotischen Datenbanken umgehen, weit entfernt vom Erfolgsmodell mit
a.cfg als Konfiguration. Dann macht a35 mehr Arbeit. Und:
Wer mehr als eine Datenbank betreibt, und zwar mit unterschiedlichen 
Konfigurationen, hat Muehe, die Uebersicht zu behalten und jeweils
mit vertretbarem Zeitaufwand eine weitere Datenbank einzunetzen.

Die Ziele der Reorganisation sind deshalb diese:

1. Es soll deutlich leichter werden, eine Datenbank unter a35 ins
   Netz zu bringen, auch mit exotischen Konfigurationen.

2. Die Zahl der Dateien, die je Datenbank einzurichten sind, soll stark
   verkleinert werden. Damit wird die Zahl der allgemeingueltigen
   Dateien vergroessert, um die man sich nicht kuemmern muss.

3. In der Regel soll es nicht noetig sein, eigene Exportparameter
   zu schreiben. Moeglichst viele Jobskripte sollen jede Konfiguration
   bedienen koennen. Bis hin zu den Faehigkeiten, Dateneingabe per
   Browser anbieten zu koennen, mit oder ohne eigene Formulare.
   (Die Exportsprache ist aus Sicht von Informatikern obskur, aber
   ganz verzichtbar ist sie auch nicht, daher ist ihr Einsatz, wo immer
   moeglich, zu vermeiden oder zu vermindern.)

Per saldo werden so auch Vorhaben ermoeglicht, wobei es auf schnelle
Realisierung und nicht so sehr auf Perfektion und Oberflaechenaesthetik
ankommt. Vorhaben, die vielleicht auch nur temporaere Bedeutung haben,
aber einen bequemen Netzzugang zu den Daten verlangen.

Die Oberflaeche ist ein so gut wie gar nicht kritisierter Aspekt.
Deshalb ist daran erst einmal nichts geaendert worden. Dies aber
auch, weil sie ohnehin nicht strukturell strikt vorgegeben ist,
sondern in weiten Grenzen modifizierbar. Und das allein mit HTML5,
ohne eigenes JavaScript und PHP.

Das neu organisierte Paket enthaelt in jedem Ordner eine README-Datei,
fast alle sind nur in engl. Sprache abgefasst. Fuer Systemverwalter 
ist das aber wohl kaum ein Problem.

Das Paket a35v2.zip hat folgenden Verzeichnis-Aufbau:

(Zugleich hier die Schnell-Beschreibung, wie man eine eigene Datenbank
mit a-Schema lauffaehig macht)

1. Fuer den Datenbankserver:
----------------------------
allegro       Programme und notwendige Parameter  --> c:\allegro
  demo2         Demo-Datenbank (wie bei a99)
    users         Codierte Passwoerter der schreibberechtigten Nutzer

In  allegro\avanti.con  muss man einen Abschnitt analog zu [demo] 
fuer jede eigene Datenbank anlegen, die ins Netz soll.

Im Ordner "allegro" startet man 
 unter Windows:   avanti -install   [das muss nur einmal geschehen]
 unter Linux:     ./avanti &
    [am besten ein "run command" in etc/rc.d/init.d einrichten,
     z.B. in CentOS oder RedHat mit chkconfig]


2. Fuer den Webserver:
----------------------
www     den gesamten Inhalt anhaengen an die Homepage:

db      Homepage fuer die anzubietenden Datenbanken
        ajax4.php : Programm zum Start aller Jobskripte

  scripts   gemeinsam genutzte Skripte für alle Datenbanken
            vor allem a35.js und .css-Dateien
    jobs      allgemeingueltige .job-Skripte

  img       einige Grafik-Elemente

  demo      Ordner fuer die Startdateien und Skripte der DemoBank
    ajaxjobs   .job-Skripte spezifisch fuer diese Datenbank

Auf beiden Servern (es kann auch ein und derselbe sein) den Port 4949
freischalten.

Im Browser sollte man danach sofort mit
    homepageURL/db/demo/a35-pc.php  (lokal testen: http://127.0.0.1/db/... )
die DemoBank benutzen können. Vorausgesetzt, avanti ist auf dem
Datenbankserver gestartet (s. 1.).

Parallel zu "demo" legt man Ordner fuer die eigene(n) Datenbank(en) an.
Z.B.  "katalog" oder "opac"
In solche Ordner kopiert man zuerst alle Dateien aus "demo", dann
macht man die im README beschriebenen Einstellungen, vor allem in
den Dateien ajax4ini.php und a35ini.php (Hinweise s. dort)

Fuer eine a-Datenbank ist das alles, was zunaechst noetig ist, um
die Datenbank nutzen zu koennen. Ein schnelles Erfolgserlebnis ist in
dieser Sache sehr hilfreich... 

Alles weitere steht in den jeweiligen README-Dateien.

Als "proof of concept" wurde eine Demo-Bank im N-Format gemacht:

  http://www.allegro-b.de/db/nbank/a35-pc.php

Das N-Format arbeitet intern mit Windows-Code (ANSI) und war deshalb
einer Praesentation unter a35 nicht ganz unmittelbar zugaenglich.
Die Anpassungen sind aber auch hierbei minimal gewesen.



Mehr Informationen über die Mailingliste Allegro