From 04e68443040c7abad84d66477e98f93bed701760 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Mon, 4 Feb 2019 13:09:03 +0100 Subject: Initial import --- app/gs.warenhaus/1.01/doc/gs-Warenhaus-7 | 235 +++++++++++++++++++++++++++++++ 1 file changed, 235 insertions(+) create mode 100644 app/gs.warenhaus/1.01/doc/gs-Warenhaus-7 (limited to 'app/gs.warenhaus/1.01/doc/gs-Warenhaus-7') diff --git a/app/gs.warenhaus/1.01/doc/gs-Warenhaus-7 b/app/gs.warenhaus/1.01/doc/gs-Warenhaus-7 new file mode 100644 index 0000000..3a55dfe --- /dev/null +++ b/app/gs.warenhaus/1.01/doc/gs-Warenhaus-7 @@ -0,0 +1,235 @@ +#limit (11.0)##pagelength (16.5)##block# +#start (2.0,0.0)# +#page (69)# +#headodd# +#center#gs-Warenhaus#right#% + +#end# +#headeven# +%#center#gs-Warenhaus + +#end# +#center#1 + +#center##on("b")#7  Weitere Kommandos (für Systembetreuer)#off("b")# + + +Wenn Sie #on("b")#gs-Warenhaus#off("b")# installiert haben und mit dem Aufbau des Systems nach +der automatischen Generierung zufrieden sind, dann ist dieses Kapitel nicht wichtig +für Sie. Wir erklären Ihnen hier die Befehle, mit denen Sie die Einstellungen, die bei +der Installation vorgenommen wurden, auch nachträglich noch ändern können. +Beachten Sie bitte, daß aus Sicherheitsgründen eine Einstellungs#on("b")#änderung#off("b")# i.a. nur in +der Task möglich ist, in der die entsprechende Einstellung vorgenommen wurde, es +sei denn, dort wurde eine Einstellung gänzlich aufgehoben. Außerdem werden Ein­ +stellungsänderungen stets nur an Sohntasks weitergegeben ("vererbt"), die #on("b")#nach#off("b")# der +Änderung angemeldet werden! + +Die Standard-Installation sieht z.B. nur die Einrichtung #on("b")#einer#off("b")# Warenhaus-Hauptstelle +vor. Wenn Sie tatsächlich nur eine Hauptstelle eingerichtet haben, nun aber doch +mehrere Hauptstellen (für verschiedene Lerngruppen) betreiben wollen, so brauchen +Sie das Programm nicht erneut zu insertieren! Machen Sie besser in der bisherigen +Hauptstellen-Task den Hauptstellenstatus mit dem Kommando 'warenhaus haupt­ +stelle (FALSE)' rückgängig und richten Sie in Sohntasks mit dem Kommando 'waren­ +haus hauptstelle (TRUE)' wieder neue Hauptstellen ein. Außerdem können Sie in +Hauptstellen-Tasks die Version für die Programmierschnittstelle umstellen ('grin +(TRUE)' bzw. 'grin (FALSE)'). + +Ähnlich verhält es sich mit dem Betrieb eines Adapters für das Kartenleser-Interface. +Auch hier ist die Standard-Einstellung u.U. nur für den Betrieb #on("b")#eines#off("b")# Adapters ausge­ +legt. Möchten Sie mehrere Kartenleser anschließen, so sind bei der Verwendung von +MUFIs im Terminalkanal keine Änderungen nötig, da hier jede Filialtask sowieso nur +auf das MUFI zugreifen kann, das in den Kanal des Terminals geschaltet ist, an das +die Task gekoppelt ist. Möchten Sie jedoch mehrere Kartenleser über Adapter an +separaten seriellen Schnittstellen ansprechen, so müssen Sie dem System mehrere +Kanalnummern mitteilen, die für verschiedene Filialtasks ja durchaus unterschied­ +lich sein können. Am geschicktesten erscheint es in diesem Fall, unter einer Haupt­ +stelle mehrere "Zwischentasks" einzurichten, in diesen jeweils die Interface- +Kanalnummern festzulegen und die Filialtasks als Söhne dieser "Zwischentasks" +anzumelden. Benennen Sie die "Zwischentasks" so, daß die eingestellte Kanal­ +nummer aus dem Namen ersichtlich ist, so ist gleich bei der Anmeldung einer Filial­ +task klar, welcher Kartenleser von dieser Task aus angesprochen werden kann. + +Um diesen Aufbau zu realisieren, sollten Sie zunächst in der entsprechenden Haupt­ +stellentask einen etwa eingerichteten Direktstart mit dem Kommando 'warenhaus +direktstart (FALSE)' aufheben. Ebenfalls in der Hauptstellentask wird dann mit dem +Kommando 'init interface channel' eine etwa vorhandene Kanaleinstellung gelöscht, +wenn Sie bei der Aufforderung 'Gib Interface-Kanal:' eine '0' eingeben. Nun richten +Sie für jeden vorhandenen Adapter (natürlich müssen auch entsprechend viele freie +serielle Schnittstellen zur Verfügung stehen!) eine "Zwischentask" als Sohn der +Hauptstellentask ein (z.B. 'Kanal 5', 'Kanal 6' etc.) und geben dort jeweils wieder das +Kommando 'init interface channel'. Bei der Abfrage 'Gib Interface-Kanal:' geben Sie +dann die entsprechende Kanalnummer ein (in unserem Beispiel 5 oder 6 etc.). Alle +Söhne der Zwischentask 'Kanal 5' z.B. können dann (abwechselnd) den Kartenleser +benutzen, der an den Adapter an Kanal 5 angeschlossen ist. In diesen Zwischentasks +können Sie, wenn Sie möchten, mit dem Kommando 'warenhaus direktstart (TRUE)' +einen Direktstart für die neu anzumeldenden Sohntasks (Filialen) einrichten. +Ansonsten wird #on("b")#gs-Warenhaus#off("b")# in den Sohntasks aus der 'gib Kommando' - Ebene +mit dem Befehl 'warenhaus' gestartet (vgl. Kapitel 3.3). + +Sollten Sie beim Betrieb eines Codekartenlesers feststellen, daß die Wartezeit beim +Einlesen einer Codekarte zu kurz oder zu lang ist, so können Sie auch diese ändern. +Da die Wartezeit durch eine Schleife realisiert ist, in der laufend Werte vom Interface +gelesen werden, ist sie abhängig von der Geschwindigkeit des verwendeten Rechners +und von der gewählten Interface-Anpassung. Die Veränderung der Wartezeit erfolgt +mit dem Kommando 'eingabesicherheit (n)', wobei n eine 'Integer'-Zahl sein muß. +Bei sehr langsamen Systemen hat sich ein Wert von 3 als sinnvoll herausgestellt; bei +schnellen Rechnern muß n etwa 10 oder noch größer sein. Ermitteln Sie den für +Ihren Rechner geeigneten Wert bitte durch Ausprobieren. (Standardmäßig eingestellt +ist n = 5.) + +Mit Hilfe von drei Informationsprozeduren können Sie Informationen über den +Systemzustand einholen: 'put (hauptstellenname)' liefert den Namen der zu­ +ständigen Hauptstellen-Task, 'put (interface anpassung)' zeigt den Namen der bei +der Installation gewählten Interfaceanpassung für den Kartenleser, und 'put (inter­ +face channel)' liefert die Nummer des Kanals, über den ein Interface an separater +serieller Schnittstelle angesprochen wird. + + + +#on("b")#Detailbeschreibung der Befehle#off("b")#: + + +#on("b")#PROC eingabesicherheit (INT CONST n):#off("b")# + + - stellt die Wartezeit beim Einlesen einer Artikel-, Kunden- oder Auskunfts­ + codenummer in Abhängigkeit vom Absolutbetrag von n ein. Bei langsamen + Rechnern sollte abs(n) klein (ca. 3), bei schnellen Rechnern größer (ca. 10) + sein. + - Standardeinstellung ist 5. + - Der Befehl kann in jeder Task gegeben werden, in der #on("b")#gs-Warenhaus#off("b")# + insertiert ist. + + +#on("b")#PROC grin (BOOL CONST entscheidung):#off("b")# + + - ist nur in Hauptstellentasks aufrufbar und in Tasks, die keiner Hauptstellen­ + task untergeordnet sind. + - stellt die Version für die Programmierschnittstelle gemäß der 'entscheidung' + ein: + TRUE ---> GRIN-Version, FALSE ---> ELAN-Version. + + Fehlerfälle: + - Dieser Befehl darf nur von der Task '...' aus gegeben werden! + + +#on("b")#TEXT PROC hauptstellenname:#off("b")# + + - liefert den Namen der zuständigen Hauptstellentask. + - liefert 'niltext' (""), wenn in diesem Zweig des Taskbaumes noch keine + Hauptstelle existiert; es ist dann kein Warenhaus-Betrieb möglich! (vgl. + 'PROC warenhaus hauptstelle') + + +#on("b")#PROC init interfacechannel:#off("b")# + + - initialisiert eine unbenannte Sohntask ("-") zum Ansprechen des Interface­ + systems über eine separate serielle Schnittstelle und existiert deshalb nur bei + den Anpassungen für 'MUFI als Endgerät' und 'AKTRONIK-Adapter'. + - erfragt zunächst eine Kanalnummer ('Gib Interface-Kanal:'); zulässig sind + Eingaben von 0 bis 24. + - löscht eine evtl. bereits vorhandene unbenannte Sohntask ("-"). + - richtet bei Eingabe einer Kanalnummer > 0 eine neue unbenannte Sohntask + ein und sperrt dieses Kommando für Sohntasks, die danach angemeldet + werden. + - hebt eine etwa gesetzte Sperrung bei Eingabe von 0 als Kanalnummer wieder + auf. + + Fehlerfälle: + - Dieses Kommando kann nur von der Task '...' aus gegeben werden! + - Unzulässige Kanalnummer! + + +#on("b")#TEXT PROC interface anpassung:#off("b")# + + - liefert den Namen der bei der Installation ausgewählten Anpassung. Möglich + sind zur Zeit: + + "ohne Kartenleser", + "mit Kartenleser an AKTRONIC-Adapter", + "mit Kartenleser an MUFI als Endgerät", + "mit Kartenleser an MUFI im Terminalkanal". + + +#on("b")#INT PROC interface channel:#off("b")# + + - existiert nur bei den Anpassungen für den AKTRONIC-Adapter und MUFI als + Endgerät. + - liefert die Kanalnummer der seriellen Schnittstelle, über die das Interface­ + system angesprochen wird. + - wird der Wert 0 geliefert, so kann in der Task keine Eingabe über einen + Kartenleser erfolgen (siehe 'PROC init interfacechannel'). + + +#on("b")#PROC warenhaus:#off("b")# + + - ist nicht in Hauptstellentasks aufrufbar. + - startet #on("b")#gs-Warenhaus#off("b")# aus der 'gib Kommando' - Ebene oder wird bei einge­ + richtetem Direktstart automatisch aufgerufen. + - richtet eine Sohntask als Filialverwaltung ein und kennzeichnet damit die + eigene Task für das System als 'aktive' Filiale. Der Name dieser Sohntask + enthält den Namen der zuständigen Hauptstellentask und die Filialnummer, + unter der die Filiale geführt wird. Diese Filialnummer ist identisch mit der + Kanalnummer des angekoppelten Terminals. + - löscht die Filialverwaltungstask, wenn das Warenhaus-Menu geregelt mit + verlassen wird. Zu Kollisionen bezüglich der Filialnummer + kann es somit nur kommen, wenn an einem Arbeitsplatz das WARENHAUS- + Menu ungeregelt verlassen wird (z.B. durch Tippen der SV-Taste) und dann + an demselben Arbeitsplatz eine neue Filiale angemeldet werden soll. In + diesem Fall erhält die neue Task #on("b")#keine#off("b")# Filialverwaltung als Sohntask und ist + damit für den Warenhaus-Betrieb nicht brauchbar. Deshalb wird hier nach + Ausgabe einer Fehlermeldung sofort gefragt, ob die Task gelöscht werden soll. + + Fehlerfälle: + - Dieser Befehl darf nur von Söhnen dieser Task aus gegeben werden! + - Keine uebergeordnete Task ist 'warenhaus hauptstelle'! + - Filiale ist bereits besetzt durch TASK '...'! + Es ist so kein geregelter Warenhaus-Betrieb möglich! + + +#on("b")#PROC warenhaus direktstart (BOOL CONST entscheidung):#off("b")# + + - richtet gemäß dem Wahrheitswert der 'entscheidung' einen Direktstart ein + oder hebt ihn wieder auf. + Hat 'entscheidung' den Wert 'TRUE', so wird ein Direktstart eingerichtet. Es + erscheint zunächst die Frage 'Mit automatischem Löschen (j/n)?'. Durch den + Direktstart gelangt man beim Anmelden einer Sohntask nicht in die 'gib + Kommando' - Ebene, sondern sofort in das WARENHAUS-Menu. Wird die + obige Frage mit beantwortet, so werden Sohntasks nach dem Ausstieg + aus dem WARENHAUS-Menu sofort gelöscht; andernfalls wird erst noch ge­ + fragt, ob gelöscht werden soll. Bei Verneinung erfolgt ein 'break'. Die Ein­ + richtung eines Direktstarts wird vom System vermerkt und der Befehl darauf­ + hin in allen untergeordneten Tasks gesperrt. Sowohl der Direktstart als auch + die Sperrung sind nur wirksam für Sohntasks, die #on("b")#nach#off("b")# Ausführung dieses + Befehls angemeldet werden. + Hat 'entscheidung' den Wert 'FALSE', so wird ein etwa eingerichteter Direkt­ + start und die damit verbundene Sperrung des Befehls für neue Sohntasks + wieder aufgehoben. Die Aufhebung ist nur möglich in der Task, von der aus + der Direktstart eingerichtet wurde. + + Fehlerfälle: + - Der Direktstart kann nur aus der Task '...' geaendert werden! + + +#on("b")#PROC warenhaus hauptstelle (BOOL CONST entscheidung):#off("b")# + + - macht je nach Wahrheitswert der 'entscheidung' eine Task zur Hauptstellen­ + task ('TRUE') bzw. hebt diesen Status wieder auf ('FALSE'). Eine Task kann + nur Hauptstelle werden, wenn noch keine übergeordnete Task Hauptstelle ist. + Der Hauptstellenstatus kann danach auch nur in dieser Task wieder aufge­ + hoben werden. + - löscht bei der Einrichtung der Hauptstelle eine etwa bereits vorhandene + "Zentrale" und richtet automatisch eine neue "Zentrale" in Form einer Sohn­ + task ein, die den Namen der Vatertask mit dem Zusatz ".Zentrale" erhält und + in der später die zentrale Kundendatei gespeichert wird. Bei Aufhebung des + Hauptstellenstatus wird diese Task wieder gelöscht. + - fragt bei Einrichtung der Hauptstelle nach, ob ein Direktstart eingerichtet + werden soll ('Mit Direktstart (j/n)?') und ruft die Prozedur 'warenhaus + direktstart' entsprechend auf. + - Hebt bei Löschen des Hauptstellenstatus einen in der Task etwa einge­ + richteten Direktstart automatisch auf. + + Fehlerfälle: + - Hauptstelle ist bereits die Task '...'! + - Dieses Kommando darf nur in der Task '...' gegeben werden! + + -- cgit v1.2.3