[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