[Allegro] Wie ist der Bedarf für ein Expertentreffen 2012?

Bernhard Eversberg ev at biblio.tu-bs.de
Do Feb 16 09:55:49 CET 2012


Am 16.02.2012 08:20, schrieb Andreas Wolf:
>
> B. Und ich finde auch a30 richtig gut.
>
> Aber: Wie bekomme ich die Flexe aus a99 einfach und schnell nach a30 ?
>
> Beispiel: Wie kann ich die Zeitschriftenverwaltung von a99 nach a30 packen ?
> Oder wie kann ich einfach meine eigenen Flexe nach a30 packen ?
>
Also "einfach" kann es nicht sein. a30 ist eine Client-Server-Anwendung
(wie jede browser-basierte Anwendung), aber a99 ist eine monolithische.
Für a30 ist deshalb die Kommunikation zwischen Software und Nutzer viel
komplexer, da liegt das Hauptproblem: Es gibt keine interaktiven FLEXe,
kein Frage-Antwort-Wechselspiel mit dem Nutzer.

Schon das Stellen einer simplen Ja/Nein-Frage wird beträchtlich
komplizierter.

In a99 schreibt man einfach

yesno Wirklich?
if yes jump ...
...
und der FLEX geht dann weiter, all seine Daten sind unverändert.

In a30 ist es notgedrungen zweiteilig, denn es gibt ja keine
Sitzung, innerhalb derer die ganze Zeit alle Variablen verfügbar sind!
D.h. ein Job kann nicht warten, bis der Nutzer einen Button klickt, und
dann weitermachen, sondern jeder Job ist in sich abgeschlossen, der
nächste weiß von sich aus nichts vom vorigen. Aber das ist Ihnen doch
alles im Prinzip klar? Was also in a99 ein einziger FLEX ist, müssen
bei a30 u.U. viele kleine Jobs sein; oder ein großer mit vielen Fall-
unterscheidungen, die sich aus Variablen des Aufrufs ableiten.

Hier nur schnell mal eben eine ganz knappe, rudimentäre Anleitung, um
das Funktionsschema zu verstehen und auszuprobieren:
(Man braucht vor allem die FreiRaum-Doku:
   http://www.allegro-c.de/doku/a30/frr-7.htm

1. Server sendet ein FreiRaum-Skript an Browser, etwa so:
janein.job
   mit folgendem Inhalt: (die Variable #urN kriegt er
   von a30 mitgeliefert)

var "#" #urN
find
wri "_!_FRE7 " n "TE Wollen Sie das wirklich?" n "--" n
wri "mi 10|20" n
wri "TE " #20 n
wri "--" n
wri "BU Ja|-ja" n
wri "BU Nein|-nein" n
wri "UV Vuid|" #00 n

   Aufzurufen aus a30 manuell mit  X yesno
   oder entsprechend mittels eines geeigneten event:-Link in der Anzeige
   oder aus einem FreiRaum-Fenster heraus
   Die Zeile  UV  definiert eine unsichtbare Variable, die bei Druck auf
   einen Button wieder an den Job zurückgeliefert wird, hier als #uid,
   der also in ja.job und nein.job direkt verwendbar ist.

2. In dem dann erscheinenden FreiRaum-Fenster klickt man auf Ja bzw. 
Nein, dann wird  ja.job  bzw.  nein.job gestartet und FreiRaum 7 wird
zugemacht (weil da  BU Ja|-ja  steht). Der  ja.job  sieht z.B. so aus:

var "#" #urN
find
wri "_!_POP Sie haben Ja gesagt. " 19 "Die IdNr. ist " #uid n


Direkt ausprobieren das Ganze? Hier:
   http://www.allegro-c.de/db/a30/demo.htm
Zuerst irgendeinen Satz aufblättern, dann im Eingabefeld

X janein


> Wäre vielleicht ein richtiges Thema für das Treffen.
>
Das ist machbar. Wir könnten dann solche Dinge ausführlicher zeigen und
auch Beispiele aus den Bereichen Ausleihe und Zeitschriften. Die wären
dann selbstredend viel umfangreicher.

B.E.





Mehr Informationen über die Mailingliste Allegro