[Allegro] Vb.28.8 : ArchivBank (NEU) und ZAboM-Mahnfunktion

Bernhard Eversberg ev at biblio.tu-bs.de
Fr Aug 8 08:56:33 CEST 2008



Verlautbarung 209 der Entw.Abt.                              2008-08-28
-------------------------------
Bereitgelegt:     http://ftp.allegro-c.de/aktuelle-version/inst-all.exe

V28.8 mit Archivdatenbank
=========================
Die Idee ist einfach: Eine Datenbank im Hintergrund zu haben, in die
hinein man sich jederzeit irgendwelche Datensaetze kopieren und aus der
man sie bei Bedarf wieder hervorholen kann. Das koennen Momentaufnahmen
bestimmter Saetze sein, die im laufenden Betrieb oft veraendert werden,
es koennen Saetze sein, die man anschliessend loeschen will und von
denen man zur Sicherheit eine Kopie aufbewahren will.
Die Umsetzung war weniger einfach, aber in V28.8 ist die komplette
Loesung enthalten. Ziel war aber, dem Anwender die Sache extrem leicht
zu machen, vom Anlegen der Archivbank bis zu ihrer spurlosen Loeschung.
Auch wichtig: Keine Aenderungen an den Parametern etc. der Grundbank,
schon gar nicht in deren Daten, sofortiges Funktionieren mit JEDER
allegro-Datenbank.

Was muss man tun? Extrem wenig:

1. Im "Fuellhorn" auf "Archivdatenbank" klicken, dann wird sie angelegt
    (falls noch nicht existent) und/oder sofort gestartet. Man sieht
    gleich nach dem Anlagen noch keinen Datensatz, sondern nur eine Art
    Ueberschrift.   [die Arbeit macht ara.flx]

2. Danach bei jedem beliebigen Datensatz F8 und "s : Satz archivieren".
    In der Statuszeile erscheint "Archiviert" und wenn man umschaltet
    auf die Archivbank, sieht man die Kopie.  [ark.flx]

Mehr zu den Einzelheiten und Moeglichkeiten:  h archiv
Darin auch Tips, um das Archiv gleich beim Start der Grundbank eben-
falls zu oeffnen bzw. am Sitzungsende automatisch zu schliessen. Das
Archiv laeuft in einem separaten a99-Fenster als eigene Datenbank!


ZAboM: Mahnwesen
================
Es wurde eine einfache Loesung gefunden, ueber die schon in der
Mail-Liste am 28. und 30.7. berichtet wurde. Jetzt ist sie
offiziell mit drin.
Mehr dazu:  h zmahn.txt
Das Verfahren ist schon in alle relevanten Menues, Dateien und
Texte einbezogen.
Man braucht erfreulich wenig zu tun, um das Konzept zu nutzen.
Der Text beschreibt alles. In der DemoBank sind schon Beispiele von
Heften, die gemahnt werden muessen: Klicken Sie im ZAboM-Menue den
den neuen Punkt "Mahnungen", dann sehen Sie diese. Waehlen Sie einen
davon aus, dann koennen Sie auch den Mahnbrief sofort anzeigen lassen.


Kleinere Verbesserungen
=======================

cstring.flx verbessert:
  ce, cn, cg, ci, cf aus der CFG werden angezeigt


Manipulationsbefehle von var und write: (ist schon laenger so!)
--------------------------------------
? maskiert einzelnes Zeichen
z.B.:  var ...(e"?A") endet vor xA  mit bel. x
Praktische Anwendung: Wenn man z.B. hinten 2 Zeichen abschneiden
will von #123, dann
var #123 "[}" (e"??[}")
ins #123


Feste Anzahl Zeichen vom Ende einer Zeichenfolge
------------------------------------------------
Im Trick 72 stand: "Es gibt leider keinen Manipulationsbefehl, der
direkt die letzen 100 Byte herausgriffe."
Jetzt gibt es ihn!
Man kann jetzt  var #nnn(0,-100) schreiben, um die letzten 100
Zeichen von #nnn zu kriegen. (Gilt auch fuer acon)
Ist #nnn kuerzer, bleibt der Text unveraendert.


$-Variablen
-----------
Ab sofort gehoeren die mit $@ beginnenden $-Variablen ebenfalls
zu den sog. "grossen" Variablen. Diese bleiben erhalten ueber den
FLEX hinaus fuer die gesamte Sitzung. Das traf schon zu fuer alle mit
einem Grossbuchstaben beginnenden Namen, also $A... bis $Z..., jetzt
kommt also $@... noch hinzu.
Das hat diesen Sinn: Es soll mit $@... eine Klasse von Variablen
geben, die fuer Systemzwecke verwendet werden, also als Flags fuer
besondere Zwecke, mit Gueltigkeit fuer die gesamte Sitzung.
Man konnte sich auch bisher schon irgendeine Teilmenge der Variablen
per Konvention fuer solche Aufgaben reservieren, aber es konnte dann
theoretisch Kollisionen geben mit Variablen in Standard-FLEXen oder
anderen, die man von sonstwo uebernahm. Total auszuschliessen ist das
mit $@... auch nicht, aber wir wollen nun ganz bestimmte Variablen
mit solchem Namen ausdruecklich reservieren und von Beginn an sicher-
stellen, dass sie noch nicht anderweitig verwendet werden.

Als erste solche Variablen fuehren wir jetzt diese ein:

$@a     Archiv-Flag  (wird in ara.flx gesetzt)
         Wenn eingeschaltet, dann ist die sog. ArchivBank eingerichtet
         und fuer die laufende Sitzung aktiviert.


Befehl extern
-------------
Damit wird ein Satz mit Hilfe der Parameter e-w0.apr in eine Datei
exx.xxx geschrieben und der Editor darauf angesetzt. Wenn man aber nur
extern 0  gibt, unterbleibt der Start des Editors.


ins $x
------
mit einstelligem Namen x konnte zu Fehlern fuehren, wenn ein # am
Anfang der iV stand. Behoben.


JanaS klappte mit DbAux nicht
-----------------------------
d.h. wenn in der INI-Datei mit DbAux=... ein anderes Verzeichnis als
Arb.Verz. als das Startverz. von a99 eingestellt war.
... aber jetzt geht's





Mehr Informationen über die Mailingliste Allegro