UB BRAUNSCHWEIG
Symbolfoto
  • Impressum
  • Startseite
  • allegro-C von A-Z
  • Druckversion

JanaS : Janus-allegro-System

JanaS : Janus-allegro-System


allegro Homepage JanaS
<-------------------------------------->
Janus-allegro-System

Planet Erde

 

Bisher V23 konnte a99: 
  • eine Datenbank zugänglich machen zum Suchen, Lesen, Schreiben und Exportieren
  • Textdateien im RTF-Format anzeigen und darin eingebaute Makros (FLEXe) ausführen
  • externe Programme starten, z.B. auch einen Browser, die dann aber völlig unabhängig laufen
  • Von außen kann man a99 mit FLEXen fernsteuern - a99 als Server 
Kurzanleitung für a99
Ab V24 kommt ein Browser hinzu:

Es gibt ein Zusatzprogramm namens JanaS, das nichts anderes als ein Browser-Fenster bereitstellt. So sieht es aus:

JanaS Browser-Fenser

In diesem Beispiel zeigt das Programm eine HTML-Datei namens doku.htm an - das ist ein HTML-Äquivalent des sog. "Füllhorns". Hinter jedem Link steckt ein Befehl für a99 - das ist der Mehrwert, den ein normaler Browser nicht bieten könnte.


JanaS kann zwei Dinge:
  • Im Internet surfen, also u.a. HTML-Dateien anzeigen (siehe Beispiel oben)
  • a99 wieder aktivieren und ihm Befehle und Daten zusenden.
    (Im Beispiel: hinter jedem Link steckt ein Befehl für a99)

JanaS läuft zwar als getrenntes Programm, aber

  • a99 und JanaS können Nachrichten und Daten austauschen.
  • In HTML-Dateien können FLEX-Befehle eingebaut sein. Beispiel: doku.htm ("Füllhorn")
  • HTML-Formulare sind nutzbar, um Daten zu erfassen oder zu bearbeiten. Beispiel: htmform.flx
  • In Formularen kann Unicode (UTF-8) verwendet werden, im Gegensatz zu den Formularen, die in a99 eingebaut sind. Damit wird die Unicode-Eingabe und -Bearbeitung nun auch ohne avanti möglich.
Grafik, Tabellen, JavaScript, CSS - alle diese Mittel kann man ebenfalls einsetzen.

Um Mißverständnisse zu vermeiden:
JanaS hat nichts mit avanti zu tun und braucht keinen Web-Server. Es dient nicht dazu, eine Datenbank ins Netz zu stellen, sondern unterstützt ohne Netz die Arbeit mit a99 auf dem lokalen PC. Anders gesagt: JanaS und a99 müssen auf dem selbem PC laufen, sonst können sie nicht zusammenarbeiten.



Beschreibung


1. Lokale Datei
a99 startet JanaS mit FLEX-Befehl  janas dateiname  
Das Programm janas.exe wird gestartet und zeigt den Inhalt von dateiname an, wobei dies eine Datei auf dem lokalen Verzeichnis HTML sein muß, die am eigenen Programmverzeichnis hängt. Oder der Dateiname enthält einen Pfad, z.B. in dieser Form:   file:///d:/hilfsdateien/abc.htm

2. Internet-Adresse
a99 startet JanaS mit FLEX-Befehl  janas url  
     Das Programm janas.exe wird gestartet und zeigt den Inhalt von
url an


"Besondere Links" in einer html-Datei sehen so aus:
  
href="flex:x befehlsfolge"  oder  href="flex:X flexname"  Start einer FLEX-Datei
   oder
  
href="flex:h dateiname"             a99 soll die Hilfedatei  dateiname.rtf  zeigen

Ein Beispiel aus der oben gezeigten "Füllhorn"-Seite:   <a href="flex:h fremd">IMPORT</a>


   JanaS stellt dann automatisch auf TEMP eine FLEX-Datei  jPID
.flx bereit, in der steht
         FLEX-befehlsfolge
    bzw.
        
exec flexname
    bzw.
        
help dateiname
Dabei ist PID die Prozess-IdNummer des aufrufenden a99.

Anmerkungen für Systemverwalter:
  • Das Fenster von a99 wird automatisch aktiviert (d.h. es kommt in den Vordergrund), wenn es  auf diese Weise von JanaS aufgerufen wird. Bewußt verhindern kann man dies aber in dem zweiten Fall, indem man an flexname das Zeichen @ anhängt. [Ab V26.5]
  • "Besondere Links" können auch in HTML-Seiten eingebettet sein, die nicht auf dem PC des Nutzers liegen, sondern irgendwo im Internet! D.h. man kann geeignete HTML-Seiten sonstwo bereitstellen, die Wirkung der FLEXe erfolgt aber stets nur im lokalen System des a99-Nutzers. (Wer einen solchen Link in einem normalen Browser anklickt, erhält eine Fehlermeldung wie z.B.  "flex is not a registered protocol".)
    Weil das eine potentielle Gefahr ist, muß der Nutzer dann die Ausführung des FLEXes bestätigen, und zwar kommt folgende Meldung:  
    FremdFLEX! Ausführen?
  • Das Programm janas.exe kann man auch im DOS-Fenster von Hand starten, aber nicht mit  janas url  sondern mit:  janas dateiname  
    in der Datei
    dateiname muß dann nur die eigentliche URL stehen, die der Browser anzeigen soll!
Tip für Fortgeschrittene:
Die Variante mit dem @ kann man nutzen, um a99 irgendetwas tun zu lassen und dann eine andere HTML-Datei zu laden, ohne daß a99 zwischendurch erscheint, d.h. das Wechselspiel der beiden wird optisch gar nicht sichtbar! Dazu muß nur am Ende der Datei
flexname ein janas-Befehl stehen, der dann das Laden der besagten anderen HTML-Datei auslöst.
Die Formularmethode (siehe unten) nutzt man, um dem FLEX Information mitzugeben, die er dann in Form von #u-Variablen zur Verfügung hat.
Die HTML-Datei, die er am Ende aufruft, könnte gerade in dem FLEX erstellt worden sein. Man erkennt leicht das Potential dieser Methodik.
Als einfaches Beispiel zum Studieren, Ausprobieren und Ausbauen gibt es 
jax.htm  und  jax.flx. Zum Starten:  janas jax.htm  in a99 eingeben.


Zusammenfassung zum FLEX-Befehl 
janas:
(So steht es auch im Hilfetext  xjanas.rtf )

janas 1     Die Datei  j<pid>.htm  wird (erneut) angezeigt

Bei den nächsten drei Befehlen wird automatisch janas.exe gestartet, falls es noch nicht läuft:

janas url  Die Web-Adresse url wird angesteuert und angezeigt

janas file:///c:/allegro/abc/xyz.htm
           So läßt man eine irgendwo im lokalen System liegende HTML-Datei anzeigen. Man beachte
           den Dreifach-Schrägstrich hinter "file:"

janas dateiname
           Die Datei  dateiname  (ohne Pfadangabe) muß auf dem HTML-Verzeichnis liegen (unterhalb
           des ProgDir) und wird dann im Browser angezeigt.

janas        Inhalt der iV wird als URL etc. genommen, d.h. vorher vorbereiten, sonst kommt
                  "Die Seite kann nicht angezeigt werden"

janas 0    Wenn janas.exe gerade läuft, wird es beendet, das Fenster beseitigt.
                Wenn mehr als ein JanaS-Fenster aus mehreren a99-Fenstern heraus
                gestartet wurden, verschwindet nur dasjenige, das zum jeweiligen a99 gehört.
                Einbau in 
_endflx.flx  ist zu erwägen.

Außerdem kann man diesen Befehl geben:
Call janas.exe     janas.exe wird gestartet und erscheint mit leerem Fenster.
                             Unter "Datei" kann man "Öffnen" wählen und eine URL angeben.
 


Formulare im HTML-Text

Wenn man ein HTML-Formular gebaut hat, muß man diejenigen Input-Felder, die in bestimmten Kategorien oder #u-Variablen landen sollen, so angeben:

<form name="formularname" action="flex:X tuwas" method=GET/POST>
Feld x: <input name="nnn">

wobei  
nnn  eine gültige Kategorienummer oder #u-Variable  uxy  sein kann. Beides ohne #.
Um nebenbei eine #u-Variable zu belegen, die der Nutzer nicht sehen soll:
<input type="hidden" name="ujC" value="wert">
Im FLEX  tuwas.flx  hat man demnach den Wert  #ujC wert  zur Verfügung.

Die so angelegten Felder werden dann zuerst belegt, bevor der FLEX  tuwas.flx  ausgeführt wird, d.h. man muß sich darum nicht selber kümmern! (Genau gesagt, der FLEX  j<pid>.flx  wird mit den betreffenden Befehlen gefüllt und am Schluß steht  exec X tuwas .) In diesem FLEX muß dann z.B. an geeigneter Stelle ein  put  stehen, wenn der Satz gespeichert werden soll.


Begleitende Maßnahmen

_door.flx : Ausgelöst durch Schaltfläche "Tür". Da könnte z.B. drinstehen:
  

   janas http://www.allegro-c.de
      oder z.B. Datei doku.htm von HELP:
     
janas doku.htm

onerror.flx : Ausgelöst durch ungültige Eingabe im Schreibfeld
   Prüfen, ob Eingabe mit "
http:" oder "file:" anfängt, dann übergeben an JanaS

if "www" jump www
if "http:" jump http
if "file:" jump http
...

:www
var "http://" #uxE
janas
var ""
end
:http
var #uxE
janas
var ""
end



Beispiel für einen FLEX, der ein komplettes HTML-Formular erzeugt und dann JanaS aktiviert:
(Die HTML-Datei mit dem Formular wird zunächst ins Help-Verz. geschrieben)
Zum Ausprobieren gibt's eine etwas  bessere Version.  (Dahinter steckt der FLEX  htmform.flx )

var "help\\test.htm"
open x
  Vorbereitung für write-Befehle
xport p e-u
dow wX
dow a


wri "<html><head>" n

wri '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' n
wri "</head><body>" n

wri '<form action="flex:x show rec' 92 92 'disp" method=GET>' n

wri '<input type="submit" value="SEND">' n

wri 'Titel: <input name="20" size=60 maxlength=120 value="' #20 '"><br>' n
wri 'Signatur: <input name="90" size=30 maxlength=120 value="' #90 '"><br>' n
wri 'Verfasser: <input name="40" size=60 maxlength=120 value="' #40 '"><br>' n
wri 'Jahr: <input name="76" size=20 maxlength=20 value="' #76 '"><br>' n

wri '</form></body></html>'
dow A


close x
    Und nun die präparierte Datei von JanaS anzeigen lassen
janas test.htm


Und in der Datei e-u.apr steht nur drin:

  E-U.APR : Einen Feldinhalt nach UTF-8 wandeln
  2004-01-04  insbes. wirkt sich dies auf den FLEX-Befehl "write" aus

zl=0

  Wenn "write" gegeben wird, steht der Inhalt in #u1
#-X
#u1
  ASCII -> UTF-8 Tabelle laden
td-utf8



[i] zuletzt aktualisiert: 18.04.2011
Email: ub@tu-bs.de