diff options
Diffstat (limited to 'doc/warenhaus')
| -rw-r--r-- | doc/warenhaus/Anhang Warenhaus | 65 | ||||
| -rw-r--r-- | doc/warenhaus/Inhalt Warenhaus | 50 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus handbuch.impressum | 89 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus-1 | 124 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus-2 | 72 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus-3 | 309 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus-4 | 378 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus-5 | 1468 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus-6 | 589 | ||||
| -rw-r--r-- | doc/warenhaus/gs-Warenhaus-7 | 235 | 
10 files changed, 0 insertions, 3379 deletions
| diff --git a/doc/warenhaus/Anhang Warenhaus b/doc/warenhaus/Anhang Warenhaus deleted file mode 100644 index 9388ceb..0000000 --- a/doc/warenhaus/Anhang Warenhaus +++ /dev/null @@ -1,65 +0,0 @@ -#limit (11.0)##pagelength (16.5)##block#                                    -#start (2.0,0.0)#  -#page (100)#  -#headodd#  -#center#gs-Warenhaus#right#%  -  -#end#  -#headeven#  -%#center#gs-Warenhaus -  -#end#  -#center#1  -  -#center##on("b")##Anhang#off("b")#  -  -#on("b")##center#Muster für Codekarten#off("b")#  -  -            +-------------------+ -            |  O O O O O O O O  | -            |                   | -            |                   | -            |                   | -            |                   | -            |                   | -            |                   | -            |                   | -            | ----------------- | -            +-------------------+ -  -  -  -            +--------------------+ -            |                    | -            |          O O O O   | -            |                    | -            |                    | -            |W A R E N K A R T E | -            |                    | -            |                    | -            |       Artikel      | -            |  ----------------  | -            |                    | -            +--------------------+ - -#page#       -  -  -            +------------------------+ -            |                        | -            |  O         O O O O O   | -            |                        | -            | K U N D E N K A R T E  | -            |                        | -            |                        | -            | Name                   | -            | ---------------------- | -            |                        | -            |                        | -            +------------------------+ - - - - - - diff --git a/doc/warenhaus/Inhalt Warenhaus b/doc/warenhaus/Inhalt Warenhaus deleted file mode 100644 index a9b720d..0000000 --- a/doc/warenhaus/Inhalt Warenhaus +++ /dev/null @@ -1,50 +0,0 @@ -#limit (11.5)##pagelength (16.5)##pageblock#  -#start (1.8,0.0)#  -Inhaltsverzeichnis  -  -  -1      Was kann gs-Warenhaus                            1-1  -  -2      Aufbau von gs-Warenhaus                          2-1  -  -3      Installation von gs-Warenhaus                    3-1  -3.1    Voraussetzungen                                  3-1  -3.2    Lieferumfang                                     3-1  -3.3    Installation                                     3-2  -3.4    Einrichten mehrerer Hauptstellen                 3-8  -  -4      Anschluß eines Codekartenlesers                  4-1  -4.1    Hardware-Voraussetzungen                         4-1  -4.2    Verwendung des MUFI                              4-2  -4.2.1  Einstellungen am MUFI                            4-3  -4.2.2  MUFI im Terminalkanal                            4-5  -4.2.3  MUFI als Endgerät                                4-6  -4.3    Verwendung des AKTRONIC-Adapters                 4-7  -4.4    Konfiguration der seriellen Schnittstelle        4-8  -4.5    Verbindung der Hardware-Komponenten              4-10  -  -5      Beschreibung der Menufunktionen                  5-1  -5.1    Kurzhinweise zur Bedienung des Menus             5-1  -5.2    Menufunktionen zum Oberbegriff 'Info'            5-4  -5.3    Menufunktionen zum Oberbegriff 'Eingabeart'      5-7  -5.4    Menufunktionen zum Oberbegriff 'Kommandos'       5-9  -5.5    Menufunktionen zum Oberbegriff 'Programme'       5-18  -5.6    Menufunktionen zum Oberbegriff 'Filialdaten'     5-24  -5.7    Menufunktionen zum Oberbegriff 'Archiv'          5-28  -  -6      Beschreibung der Programmierschnittstelle        6-1  -6.1    Schreibweisen und Syntaxregeln in GRIN-Programmen    6-4  -6.2    Kontrollstrukturen                                   6-8  -6.3    Detailbeschreibung der Warenhaus-Grundbefehle        6-13  -  -7      Weitere Kommandos (für Systembetreuer)               7-1  -  -Anhang:   Muster für Codekarten  - - - - - - - - diff --git a/doc/warenhaus/gs-Warenhaus handbuch.impressum b/doc/warenhaus/gs-Warenhaus handbuch.impressum deleted file mode 100644 index 3fbb371..0000000 --- a/doc/warenhaus/gs-Warenhaus handbuch.impressum +++ /dev/null @@ -1,89 +0,0 @@ -____________________________________________________________________________  -  -  -#on("b")##on ("u")#  -#center#Betriebssystem E U M E L  -#off ("u")#  -  -  -#center#gs-Warenhaus -  -  -  -  -#off("b")#  -#center#Lizenzfreie Software der  -#on ("b")#  -  -#center#Gesellschaft für Mathematik und Datenverarbeitung mbH,  -#center#5205 Sankt Augustin  -  -  -#off("b")#  -#center#Die Nutzung der Software ist nur im Schul- und Hochschulbereich für  -#center#nichtkommerzielle Zwecke gestattet.  -  -#center#Gewährleistung und Haftung werden ausgeschlossen  -  -  -____________________________________________________________________________  -#page#  -  -#free (4.0)##on("b")#  -#center#gs-Warenhaus -  -  -#center#Benutzerhandbuch  -  -  -#center#Version 1.0  -  -  -#off("b")##center#copyright  -#center#Eva Latta-Weber  -#center#Software- und Hardware-Systeme, 1988  -#center#ERGOS GmbH, 1990  -#page#  -#block#  -#center#____________________________________________________________________________  -  -  -Copyright:  ERGOS GmbH   März 1990  -  -                     Alle Rechte vorbehalten. Insbesondere ist die Überführung in -                     maschinenlesbare Form sowie das Speichern in Informations -                     systemen, auch auszugsweise, nur mit schriftlicher Einwilligung -                     der ERGOS GmbH gestattet.  -  -  -#center#____________________________________________________________________________  -  -Es kann keine Gewähr übernommen werden, daß das Programm für eine -bestimmte Anwendung geeignet ist. Die Verantwortung dafür liegt beim -Anwender.  -  -Das Handbuch wurde mit größter Sorgfalt erstellt. Für die Korrektheit und -Vollständigkeit der Angaben kann keine Gewähr übernommen werden. Das -Handbuch kann jederzeit ohne Ankündigung geändert werden.  -  -Texterstellung   :  Dieser Text wurde mit der ERGOS-L3 Textverarbeitung -                   erstellt und aufbereitet und auf einem Kyocera Laser -                   drucker gedruckt.  -  -  -  -  -#center#___________________________________________________________________________  -  -  -  -Ergonomic Office Software GmbH  -  -Bergstr. 7              Telefon: (02241) 63075  -5200 Siegburg           Teletex: 2627-2241413=ERGOS  -                        Telefax: (02241) 63078  -  -  -#center#____________________________________________________________________________  - - diff --git a/doc/warenhaus/gs-Warenhaus-1 b/doc/warenhaus/gs-Warenhaus-1 deleted file mode 100644 index ca79094..0000000 --- a/doc/warenhaus/gs-Warenhaus-1 +++ /dev/null @@ -1,124 +0,0 @@ -#limit (11.0)##pagelength (16.5)##block#  -#start (2.0,0.0)#  -#page (3)#  -#headodd#  -#center#gs-warenhaus#right#%  -  -#end#  -#headeven#  -%#center#gs-warenhaus -  -#end#  -#center#1  Was kann gs-Warenhaus  -  -  -Das Programmpaket #on("b")#gs-Warenhaus#off("b")# entstand auf der Grundlage der projekt -orientierten Unterrichtseinheit "WARENHAUS", die vom 'Landesinstitut für Schule -und Weiterbildung' (LSW) in Soest für den Bereich der 'Informations- und -kommunikationstechnologischen Grundbildung' (kurz: GRIN) entwickelt wurde.  -  -Unter #on("b")#1.1 Thema und Ziele #off("b")# ist in dem zugehörigen Begleitheft folgendes zu -finden:  -  -#i1#"Die Schülerinnen und Schüler sollen in dieser Unterrichtseinheit die An -wendungen neuer Technologien im Warenhaus kennenlernen und dabei sowohl -die grundlegenden technologischen Zusammenhänge erarbeiten als auch die -Auswirkungen reflektieren, die sich durch ihren Einsatz ergeben. Sie werden -dabei nicht nur die Rolle der Kunden einnehmen, sondern auch die Interessen -der Angestellten und die der Geschäftsleitung in ihre Beurteilung mit einbe -ziehen.  -  -Diese komplexen Zusammenhänge werden den Schülerinnen und Schülern im 8. -Schuljahr nähergebracht, indem sie veranlaßt werden, in einem Modell-Waren -haus selbst schrittweise das Modell eines Warenwirtschaftssystems aufzubauen -und damit zu arbeiten.  -  -In diesem Modell-Warenhaus kommt dem Umgang mit dem Computer eine -besondere Bedeutung zu. Mit Hilfe des Rechners, an den ein Codekartenleser -angeschlossen ist, und des zugehörigen Programms werden die wesentlichen -Bestandteile eines modernen Kassensystems abgebildet.  -  -Mit dem Codekartenleser kann das Merkmal des automatischen Dateneinlesens -vereinfacht dargestellt werden. Programmabläufe, Bildschirmausgaben werden -nicht nur über Tastatureingaben der Benutzer beeinflußt, sondern auch durch -das Lesen verschlüsselter Informationen. Am Beispiel des Lesegerätes wird zum  -#page#  -einen der Rationalisierungseffekt an der Kasse verdeutlicht, es lassen sich zum -anderen aber auch Fragen der Zugangsberechtigung durch maschinenlesbare -Ausweiskarten ansprechen.  -  -Das zur Verfügung stehende Programm erlaubt es, daß die Schülerinnen und -Schüler schrittweise die zentralen Funktionen eines modernen Warenwirtschafts -systems kennenlernen. Neben der maschinellen Datenerfassung mit Hilfe des -Lesegeräts und der Decodierung von Informationen sind dies z.B.:  -  -- automatische Abrechnung,  -- Speicherung von Warendaten,  -- Kontrolle des Lagerbestandes,  -- Informationen über Verkaufszahlen,  -- automatische Nachbestellung,  -- Speicherung von Kundendaten,  -- Zusammenfassung von Informationen aus verschiedenen Filialen,  -- Erstellen von Übersichten.  -  -Die Schülerinnen und Schüler arbeiten dabei mit einer benutzerfreundlichen -Programmierumgebung. Diese bietet einerseits die Möglichkeit, die Befehle direkt -aufzurufen, mit denen alle Funktionen dieses vereinfachten Warenwirtschafts -systems ausgeführt werden können, wie etwa Dateien aufbauen, einkaufen und -Listen erstellen. Andererseits stellt die Programmierumgebung weitere Befehle -zur Verfügung, mit denen einige dieser Funktionen auch 'programmiert' werden -können."#off("b")#  -  -Soweit zu Thema und Zielen dieser Unterrichtseinheit. Für weitere didaktisch- -methodische Informationen zu dieser Reihe verweisen wir auf das entsprechende -Begleitheft des LSW.  -(Vertrieb: Soester Verlagskontor, Jakobistraße 46, 4770 Soest; Bestellnummer 1710)  -#page#  -Da bei der Software-Entwicklung für GRIN vom LSW das Betriebssystem EUMEL nicht -mit berücksichtigt wird, erscheint es notwendig, durch Eigeninitiativen wenigstens -einige GRIN - Projekte unter EUMEL zur Verfügung zu stellen, um den Schulen, die -mit EUMEL arbeiten, nicht gänzlich den Zugang zu GRIN zu verwehren.  -  -Das Projekt WARENHAUS bietet sich dabei besonders an, weil die Vernetzungen -innerhalb eines Warenwirtschaftssystems mit einem Mehrplatz-System und der -Möglichkeit der Intertask-Kommunikation wesentlich wirklichkeitsnäher aufzeigbar -sind als mit einem reinen Einzelplatz-System wie z.B. MS DOS, bei dem die -Kommunikation nur über den Transport von Disketten geregelt wird. (Ein Netzwerk -ist in der Software der LSW nicht vorgesehen.)  -  -#on("b")#gs-Warenhaus#off("b")# umfaßt die wesentlichen Funktionen der vom LSW für MS DOS -erstellten Programmierumgebung WARENHAUS-2. Es ist jedoch keine genaue 'Nach -bildung' dieser Software, sondern eher eine Realisierung des 'Vorbildes' unter -Berücksichtigung der besonderen Gegebenheiten des EUMEL-Systems, wobei sowohl -am äußeren Erscheinungsbild als auch inhaltlich Änderungen und Erweiterungen -vorgenommen wurden. Eingebettet ist #on("b")#gs-Warenhaus#off("b")# in die menüorientierte -Benutzerschnittstelle #on("b")#gs-DIALOG#off("b")#.  -  -Ein Codekartenleser kann in Verbindung mit einem Interface (z.B. dem MUFI der -Firma BICOS) verwendet werden, ist für die Nutzung des Programmes aber nicht -unbedingt erforderlich.  -  -Da zur Zeit der Entstehung dieses Programms GRIN an den Schulen noch nicht -etabliert ist und man mit (vorerst) nur einem Projekt dem Ansatz von GRIN sicher -nicht gerecht werden kann, ist #on("b")#gs-Warenhaus#off("b")# flexibel angelegt. Es enthält neben -einer Programmierumgebung, in der die vom LSW für GRIN entwickelten Befehle und -Syntaxregeln benutzt werden, eine weitere, in der in gewohnter ELAN-Syntax ge -arbeitet werden kann, so daß es z.B. ebenfalls für den Unterricht in Klasse 9/10 (für -spezielle Fragestellungen evtl. auch in der Sek. II) verwendbar ist.  -#page#  -Natürlich ist #on("b")#gs-Warenhaus#off("b")# #i1#kein#off("b")# Verwaltungsprogramm für 'echte' Warenhäuser -oder gar ganze Warenwirtschaftssysteme, es ist vielmehr ein Simulationsprogramm, -das die Vorgänge in solch einem System anhand eines stark vereinfachten Modells -klarmachen soll. Aus diesem Grunde werden Ihnen beim Umgang mit diesem Pro -gramm wahrscheinlich eine ganze Reihe von Erweiterungsmöglichkeiten und -Funktionen einfallen, die das Programm nicht bietet. Denken Sie dabei bitte aber -immer daran, daß #on("b")#gs-Warenhaus#off("b")# in erster Linie für den Einsatz in GRIN oder im -WP-Unterricht konzipiert wurde, vornehmlich also von absoluten 'Anfängern' auf dem -Gebiet des Umgangs mit Rechnern genutzt wird, die von einer zu großen Fülle von -Programmfunktionen nur verwirrt würden.  -  -Wir werden Ihnen in den folgenden Kapiteln dieses Handbuchs den Umgang mit den -Funktionsangeboten von #on("b")#gs-Warenhaus#off("b")# erklären, auf die Umsetzungsmöglichkeiten -der am Anfang dieses Kapitels erwähnten Ziele im Unterricht gehen wir jedoch nicht -ein. Beschaffen Sie sich dafür bitte das bereits oben angegebene Begleitheft des LSW.  - diff --git a/doc/warenhaus/gs-Warenhaus-2 b/doc/warenhaus/gs-Warenhaus-2 deleted file mode 100644 index f3f1284..0000000 --- a/doc/warenhaus/gs-Warenhaus-2 +++ /dev/null @@ -1,72 +0,0 @@ -#limit (11.0)##pagelength (16.5)##block#  -#start (2.0,0.0)#  -#page (5)#  -#headodd#  -#center#gs-warenhaus#right#%  -  -#end#  -#headeven#  -%#center#gs-warenhaus -  -#end#  -#center##on("b")#2  Aufbau von gs-Warenhaus#off("b")#  -  -#on("b")#gs-Warenhaus#off("b")# bietet die Möglichkeit, nicht nur #us#ein#use# Warenhaus, sondern eine -Warenhaus-Kette im Modell nachzubilden. Solch eine Warenhauskette besteht hier -stets aus einer #us#Hauptstelle#use# und einer oder mehrerer (bis zu 10) #us#Filialen#use#. Damit die -Filialen auf die zentralen Daten der Warenhauskette zugreifen können, verfügt jede -Hauptstelle über eine #us#Zentrale#use#, die jederzeit angerufen werden kann. Für die -Kommunikation untereinander gehört zu jeder Filiale eine (Filial-) #us#Verwaltung#use#, bei -der die aktuellen Filialdaten erfragt werden können.  -  -  -Realisiert wird dieser Aufbau durch verschiedene Tasks und der Möglichkeit der -Intertask-Kommunikation. Unter einer Task, in der #on("b")#gs-Warenhaus#off("b")# insertiert ist, -können eine oder mehrere Tasks als Hauptstellen angemeldet werden (siehe '3.3 -Installation' und '7 Weitere Kommandos'). So kann man z.B. für verschiedene -Klassen gleichzeitig Warenhausketten einrichten. Zu beachten ist, daß verschiedene -Ketten untereinander völlig unabhängig sind und dadurch #us#nicht#use# miteinander -kommunizieren können.  -  -  -Jede Hauptstellen-Task richtet sich automatisch eine Sohn-Task als Zentrale ein. -Werden nun Sohn-Tasks einer Hauptstellen-Task angemeldet, so werden diese zu -Filialen der entsprechenden Hauptstelle, wobei ihnen automatisch eine Filialnummer -zugeteilt wird, die identisch ist mit der Kanalnummer des benutzten Terminals. -(Steht keine Mehrplatzanlage zur Verfügung, so läßt sich nur #us#eine#use# Filiale einrichten; -die Filialnummer ist dann in der Regel 1.)  -  -  -Die Filial-Tasks ihrerseits legen beim Starten von #on("b")#gs-Warenhaus#off("b")# automatisch jeweils -eine Sohn-Task als (Filial-) Verwaltung an.  -#page#  -Insgesamt ergibt sich folgender schematischer Aufbau (die Pfeile zeigen die -Kommunikationsmöglichkeiten an):  -  -  -#on("b")#  -                        W A R E N H A U S  -                       /        |        \  -         Hauptstelle A     Hauptstelle B   Hauptstelle C  . . .  -  -       /        |        \  -Zentrale A  Filiale A1  Filiale A2  . . .  -    ^ -    | -    |      Verwaltg.A1  Verwaltg.A2  . . .  -    |           ^             ^ -    |           |             | -    ---------------------------      . . .  -#off("b")#  - - - - - - - - - - - - diff --git a/doc/warenhaus/gs-Warenhaus-3 b/doc/warenhaus/gs-Warenhaus-3 deleted file mode 100644 index ffef881..0000000 --- a/doc/warenhaus/gs-Warenhaus-3 +++ /dev/null @@ -1,309 +0,0 @@ -#limit (11.0)##pagelength (16.5)##block#  -#start (2.0,0.0)#  -#page (7)#  -#headodd#  -#center#gs-Warenhaus#right#%  -  -#end#  -#headeven#  -%#center#gs-Warenhaus -  -#end#  -#center#1  -  -#center##on("b")#3  Installation von gs-Warenhaus#off("b")#  -  -  -Bevor Sie #on("b")#gs-Warenhaus#off("b")# auf Ihrem Computer benutzen können, müssen Sie das -Programm zunächst installieren. Wenn #on("b")#gs-Warenhaus#off("b")# auf Ihrem System schon zur -Verfügung steht, können Sie dieses Kapitel ruhig überspringen.  -  -  -  -#on("b")#3.1  Voraussetzungen#off("b")#  -  -Um #on("b")#gs-Warenhaus#off("b")# auf Ihrem Computer betreiben zu können, muß das EUMEL- -Betriebssystem installiert sein. #on("b")#gs-Warenhaus#off("b")# setzt die Multi-User-Version voraus -und ist lauffähig ab Version 1.8.0. #on("b")#gs-Warenhaus#off("b")# setzt weiterhin voraus, daß auf -Ihrem Computer bereits das Programm #on("b")#gs-DIALOG#off("b")# (ab Version 1.1) installiert ist.  -  -  -  -#on("b")#3.2  Lieferumfang#off("b")#  -  -#on("b")#gs-Warenhaus#off("b")# wird auf einer Diskette geliefert, die alle notwendigen Programme -enthält (die Installation von #on("b")#gs-DIALOG#off("b")# wird dabei vorausgesetzt!). Um den Inhalt -der Diskette feststellen zu können, starten Sie Ihr System und bringen es dazu, daß -'gib kommando:' erscheint. Dann legen Sie die Diskette ein und geben das -Kommando:  -  -  -#on("b")#archive("gs-Warenhaus"); list(archive); release(archive) <RETURN>#off("b")#  -#page#  -Anschließend erscheint eine Übersicht der auf dem Archiv vorhandenen Programme. -Folgende Dateinamen sollten sich in der Übersicht befinden:  -  -     "gs-MENUKARTE:Warenhaus"  -     "gs-Warenhaus 0: ohne Kartenleser"  -     "gs-Warenhaus 0: mit Kartenleser an AKTRONIC-Adapter"  -     "gs-Warenhaus 0: mit Kartenleser an MUFI als Endgerät"  -     "gs-Warenhaus 0: mit Kartenleser an MUFI im Terminalkanal"  -     "--------------------------------------------"  -     "gs-Warenhaus 1"  -     "gs-Warenhaus 2"  -     "gs-Warenhaus 3"  -     "gs-Warenhaus 4"  -     "gs-Warenhaus 5"  -     "gs-Warenhaus/gen"  -  -Eventuell können noch weitere Namen auf der Diskette vorhanden sein. Wenn Sie den -Inhalt der Diskette kontrolliert haben und diese Dateien auf der Diskette vorhanden -sind, können Sie #on("b")#gs-Warenhaus#off("b")# installieren.  -  -Sollten Sie statt der Übersicht eine Fehlermeldung erhalten, überprüfen Sie bitte, ob -die Diskette das richtige Format besitzt oder ob Ihr Diskettenlaufwerk Probleme -macht. Sollten dagegen Programme fehlen, so reklamieren Sie die Diskette.  -  -  -  -#on("b")#3.3  Installation#off("b")#  -  -#on("b")#gs-Warenhaus#off("b")# muß in einer Task installiert werden, in der bereits das Programm -#on("b")#gs-DIALOG#off("b")# zur Verfügung steht. Alle Söhne und Enkel der neuen Task können -anschließend das Warenhaus-Modell aufrufen. Richten Sie also eine Task als Sohn -#page#  -der Task ein, in der auf Ihrem Computer bereits #on("b")#gs-DIALOG#off("b")# installiert ist. Wir -nehmen hier an, daß #on("b")#gs-DIALOG#off("b")# in der Task 'MENU' installiert ist und die neue -Task den Namen 'WARENHAUS' erhalten soll. (Sie können für die Task auch einen -beliebigen anderen Namen wählen):  -  -#on("b")#  -          <SV>           (Supervisor - Taste)  -  -#off("b")#  -  -->     gib supervisor kommando:  -#on("b")#  -          begin ("WARENHAUS","MENU") <RETURN>  -#off("b")#  -  -  -->     gib kommando:  -  -(Arbeiten mehrere Personen mit dem Computer, dann ist es sinnvoll, diese Task vor -unbefugtem Zugriff durch ein Passwort zu schützen. Wie das gemacht wird, können -Sie in Ihrem EUMEL-Benutzerhandbuch erfahren.)  -  -Legen Sie dann die Archivdiskette ein, auf der sich #on("b")#gs-Warenhaus#off("b")# befindet, und -geben Sie die folgenden Kommandos:  -  -#on("b")#  -   archive ("gs-Warenhaus") <RETURN>  -  -   fetch (ALL archive, archive) <RETURN>  -  -   release (archive) <RETURN>  -  -   run ("gs-Warenhaus/gen") <RETURN>  -#off("b")#  -  -Sie haben damit das Installationsprogramm gestartet und können die Diskette wieder -aus dem Laufwerk nehmen. (Natürlich können Sie die Dateien auch mit Hilfe von -#on("b")#gs-DIALOG#off("b")# von der Diskette holen. Achten Sie dann bitte darauf, daß sie #on("b")#alle#off("b")# oben -angegebenen Dateien von der Diskette in Ihre Task holen).  -#page#  -Zunächst werden Sie nun aufgefordert, eine Interface-Anpassung für den Codekarten -leser auszuwählen. Dazu erscheint das folgende Menu auf dem Bildschirm:  -  -+----------------------------------------------------------------------+  -|center#Auswahl einer Interface-Anpassung für den Codekartenleser      |  -|center#Wenn kein Kartenleser benutzt wird, <ESC><q> tippen!           |  -|                                                                      |  -|    Auswahl  e i n e r  Datei durch Ankreuzen                         |  -|                                                                      |  -|   ==>   � gs-Warenhaus 0: mit Kartenleser an AKTRONIC-Adapter        |  -|         � gs-Warenhaus 0: mit Kartenleser an MUFI als Endgerät       |  -|         � gs-Warenhaus 0: mit Kartenleser an MUFI im Terminalkanal   |  -|                                                                      |  -|                                                                      |  -|                                                                      |  -|                                                                      |  -|   Info: <?>    Fertig: <ESC><q>    Abbrechen: <ESC><h>               |  -|                                                                      |  -+----------------------------------------------------------------------- -Soll kein Kartenleser benutzt werden, tippen Sie einfach <ESC><q>. Sonst fahren -Sie den Pfeil mit den Cursor-Tasten in die gewünschte Zeile und drücken -<RETURN>. Welche der angegebenen Anpassung für welchen Zweck die geeignete -ist, wird in Kapitel 4 ("Anschluß eines Codekartenlesers") genauer beschrieben.  -  -Daraufhin wird die Installation automatisch durchgeführt. Haben Sie die Anpassung -für den 'AKTRONIC-Adapter' oder für das 'MUFI als Endgerät' ausgewält, so erscheint -nach der Insertierung dieser Datei die Aufforderung  -  -#center##on("b")#Gib Interface-Kanal:#off("b")#  -  -Hier muß angegeben werden, an welchen Kanal (serielle Schnittstelle) das Interface -angeschlossen werden soll (vgl. wiederum Kapitel 4). Der Interface-Kanal läßt sich -auch später noch umstellen (vgl. Kapitel 7).  -  -Wenn der Insertierungs-Vorgang abgeschlossen ist, müssen Sie noch einige Fragen -beantworten:  -  -#on("b")#Frage 1:#off("b")# #on("b")#Version für GRIN (j/n)?#off("b")#  -  -Tippen Sie hier ein <j>, so werden später in der Programmierumgebung die -'Soester' Befehle und Syntax-Regeln benutzt, ein <n> liefert die Programmier -umgebung für ELAN. Die Versions-Einstellung kann auch noch später geändert -werden (vgl. Kapitel 7, Befehl 'grin').  -  -#on("b")#Frage 2:#off("b")# #on("b")#Soll diese Task Warenhaus-Hauptstelle sein (j/n)?#off("b")#  -  -Das Tippen von <j> macht Ihre momentan benutzte Task zur (einzigen!) Waren -haus-Hauptstelle; Sie können dann (nach Beantwortung mindestens einer weiteren -Frage, s.u.) in Söhnen dieser Task das Warenhaus-Programm starten. Allerdings ist es -dann nicht mehr möglich, Sohntasks dieser Task zu Hauptstellen zu machen!  -  -Möchten Sie aber mehrere Hauptstellen (evtl. für verschiedene Lerngruppen) ein -richten, so müssen Sie hier ein <n> tippen. In diesem Fall ist die Installation -zunächst beendet und es erscheint der EUMEL-Eingangsbildschirm. Was Sie dann -noch tun müssen, erfahren Sie in Kapitel 3.4; die folgenden Ausführungen können -Sie überschlagen.  -  -#on("b")#Frage 3:#off("b")# #on("b")#Mit Direktstart (j/n)?#off("b")#  -  -Wenn Sie vor dem Benutzer die 'gib kommando:'-Ebene verbergen wollen, können -Sie das System durch Tippen eines <j> so einstellen, daß sich sofort nach Ein -richten einer Sohntask das Menusystem meldet. Für den Anfänger kann das die -Arbeit durchaus erleichtern. Wenn Sie das nicht möchten, tippen Sie hier ein <n>. -Haben Sie die Frage mit <j> beantwortet, so erscheint noch eine (letzte) Abfrage:  -  -#on("b")#Frage 4:#off("b")# #on("b")#Mit automatischem Löschen (j/n)?#off("b")#  -  -Durch Tippen eines <j> legen Sie fest, daß in den Sohntasks nach Verlassen des -Menus die jeweilige Task automatisch gelöscht wird. Tippen Sie ein <n>, dann wird -nach Verlassen des Menus angefragt, ob die Task gelöscht werden soll. Wird die Frage -bejaht, wird gelöscht - sonst wird die Task abgekoppelt (break) und kann durch -'continue' wieder angekoppelt werden.  -  -#on("b")#Anmerkung:#off("b")# In Tasks, in denen Sie die Frage nach dem Direktstart mit <j> beant -wortet haben, sollte nicht das Kommando 'monitor' gegeben werden, da Sie durch -dieses Kommando auch diese Task zu einer Task machen, die sich direkt mit dem -Menu meldet und ggf. bei Verlassen des Menus automatisch gelöscht wird!  -  -  -Nachdem der EUMEL-Eingangsbildschirm zu sehen ist, können Sie nun #on("b")#gs-Waren -haus#off("b")# starten. Nehmen wir an, die Task 'WARENHAUS' sei Hauptstellen-Task. Sie ist -damit automatisch Managertask, Sie können also Sohntasks anmelden:  -  -#on("b")#  -          <SV>           (Supervisor - Taste)  -  -#off("b")#  -  -->     gib supervisor kommando:  -#on("b")#  -          begin ("Test","WARENHAUS") <RETURN>  -#off("b")#  -  -Statt 'Test' können Sie der Sohntask natürlich auch einen beliebigen anderen Namen -geben. Wenn Sie einen Direktstart eingerichtet haben, erscheint nun sofort das -#on("b")#gs-DIALOG#off("b")#-Emblem.  -  -                                           +------------------------+ -                                           |   gs-DIALOG            | -                                  +---------------------------+     | -                                  |  Version 1.1              |     | -                            +-----------------------------+   |     | -                            | (C) 1987/88 Eva Latta Weber |   |     | -                  +-------------------------------+       |   |-----+ -                  | (C) 1988 ERGOS GmbH           |       |   | -                  |                               |       |---+ -         +------------------------------+         |       | -         |    gggggggg     ssssssss     |         |-------+ -         |   ggg          sss    sss    |         | -         |  ggg           sss           | --------+ -         |  ggg      gggg  ssssssss     | -         |  ggg       ggg        sss    | -         |   ggg      ggg        sss    | -         |    gggggggggg  sssssssss     | -         +------------------------------+ -  -               W A R E N H A U S  -  -                   Filiale 1  -#off("b")#  -Andernfalls erscheint  -  -#on("b")#  -          gib kommando:  -#off("b")#  -  -Mit dem Kommando  -  -          #on("b")#warenhaus <RETURN>#off("b")#  -  -starten Sie #on("b")#gs-Warenhaus#off("b")# und erhalten zunächst ebenfalls das obige Emblem auf -dem Bildschirm. Links unten sehen Sie, unter welcher Filialnummer diese Task nun -von #on("b")#gs-Warenhaus#off("b")# geführt wird. Diese Nummer ist identisch mit der Kanalnummer, -unter der das EUMEL-System Ihren Arbeitsplatz verwaltet.  -  -Kurze Zeit später erscheint das WARENHAUS-Eingangsmenu. Wie Sie nun weiter mit -#on("b")#gs-Warenhaus#off("b")# arbeiten können, erfahren Sie in Kapitel 5.  -  -  -  -#on("b")#3.4  Einrichten mehrerer Hauptstellen#off("b")#  -  -Wir gehen hier davon aus, daß Sie die Installation von #on("b")#gs-Warenhaus#off("b")# gemäß den -Beschreibungen in Kapitel 3.3 bereits durchgeführt und dabei die Frage 2 ("Soll diese -Task Warenhaus-Hauptstelle sein (j/n)?") mit 'nein' beantwortet haben. (Falls Sie -Frage 2 mit 'ja' beantwortet haben und nun den Hauptstellen-Status der Task wieder -rückgängig machen wollen, so lesen Sie zunächst in Kapitel 7 nach.)  -  -Die Task, in der die Installation stattfand (wir nehmen weiterhin an, daß sie den -Namen 'WARENHAUS' hat), wurde automatisch zur Managertask, das heißt, daß -Söhne von ihr eingerichtet werden können. Bevor Sie in diesem Fall das Programm -nutzen können, müssen Sie nun noch mindestens eine Sohntask zur Hauptstelle -machen. Gehen Sie dabei folgendermaßen vor:  -  -#on("b")#  -          <SV>           (Supervisor - Taste)  -  -#off("b")#  -  -->     gib supervisor kommando:  -#on("b")#  -          begin ("Hauptstelle A","WARENHAUS") <RETURN>  -#off("b")#  -  -  -->     gib kommando:  -  -  -Mit dem Kommando  -  -#center##on("b")#warenhaus hauptstelle (TRUE)   <RETURN>#off("b")#  -  -wird die Task 'Hauptstelle A' zur Warenhaus-Hauptstelle.  -  -Zu beantworten sind dabei eine oder zwei Fragen; es sind dieselben, die auftauchen, -wenn bei der Abfrage 'Soll diese Task Warenhaus-Hauptstelle sein (j/n)?' ein <j> -getippt wird. Lesen Sie deshalb nun weiter in Kapitel 3.3 bei der Frage 3: 'Mit Direkt -start (j/n)?'.  -  -  - - - - - - - - - - - - - - - - - - - - diff --git a/doc/warenhaus/gs-Warenhaus-4 b/doc/warenhaus/gs-Warenhaus-4 deleted file mode 100644 index 2c5d7dc..0000000 --- a/doc/warenhaus/gs-Warenhaus-4 +++ /dev/null @@ -1,378 +0,0 @@ -limit (11.0)##pagelength (16.5)##block#  -#start (2.0,0.0)#  -#page (11)#  -#headodd#  -#center#gs-Warenhaus#right#%  -  -#end#  -#headeven#  -%#center#gs-Warenhaus -  -#end#  -#center#1  -  -#center# #on("b")#4  Anschluß eines Codekartenlesers#off("b")#  -  -  -Ein 'echter' Scanner oder Barcodeleser ist als automatisches Lesegerät für den Ein -satz im Unterricht nicht geeignet und kann unter EUMEL/ELAN unseres Wissens nach -auch nicht angesteuert werden. #on("b")#gs-Warenhaus#off("b")# benutzt stattdessen (ebenso wie die -Soester Software) den von der Firma AKTRONIC vertriebenen Codekartenleser für -einfache 8-Bit-Lochkarten (siehe Anhang).  -  -Die Verwendung eines Codekartenlesers ist für die Bedienung des Programms zwar -nicht unbedingt notwendig, bietet jedoch beim Einsatz von #on("b")#gs-Warenhaus#off("b")# im Unter -richt neben den didaktischen Hintergründen (Modell für Scanner-Kasse) auch noch -mancherlei Vorteile bezüglich des "Datenschutzes" (Änderungen an Kunden- oder -Artikeldaten sowie Zugriffe auf Auskunftsfunktionen nur mit entsprechender Code -karte möglich), so daß sein Anschluß sehr empfohlen werden muß.  -  -Allerdings ist solch ein Gerät nur mittels eines (relativ teuren) Interface-Systems -anschließbar, dessen Anschaffung sich nur lohnt, wenn das System auch sonst noch -zum Messen, Steuern, Regeln (= "Prozeßdatenverarbeitung", "PDV") im Unterricht -genutzt wird. (#on("b")#ERGOS#off("b")# bietet mit #on("b")#"gs-Prozess"#off("b")# auch ein Programmpaket zur PDV -unter EUMEL/ELAN an!)  -  -  -  -#on("b")#4.1  Hardware-Voraussetzungen#off("b")#  -  -Der Codekartenleser wird an einen Steckplatz des Interface-Systems MODUL-BUS der -Firma AKTRONIC angeschlossen, wobei ein Einzel- oder Mehrfachsteckplatz mit -Kombi- oder E/A-Karte oder eine Compact-Box benutzt werden können.  -  -Da Eingaben von externen Geräten unter EUMEL in der Regel nur über eine serielle -Schnittstelle möglich sind, benötigt man neben dem Kartenleser und dem MODUL- -#page#  -BUS-Steckplatz noch einen 'Adapter', der die parallelen Signale des MODUL-BUS- -Systems in serielle Signale wandelt, die der Computer über eine serielle Schnittstelle -(auch RS232- oder V24-Schnittstelle genannt) empfangen kann. Für erfahrene -Elektronik-Bastler ist das Erstellen solch eines Adapters sicher eine lösbare Aufgabe, -unter den fix und fertig kaufbaren Geräten haben wir allerdings nur zwei geeignete -gefunden: das 'Multifunktionale Interface' (kurz: MUFI) der Firma BICOS und den -'RS232-Adapter für das MODUL-BUS-System' der Firma AKTRONIC. Diese beiden -Geräte werden auch von #on("b")#gs-Warenhaus#off("b")# unterstützt.  -  -Die erforderliche Hardware-Konstellation stellt sich im Überblick also folgender -maßen dar:  -  -#on("b")# -   Computer <----> Adapter <----> Interface <----> Kartenleser  -  -   (mit se-        ('MUFI'        ('MODUL-  -    rieller          oder           BUS'-  -    Schnitt-        'AKTRONIC-      Steck-  -    stelle)          Adapter')      platz)  -#off("b")#  -  -  -#on("b")#4.2  Verwendung des MUFI#off("b")#  -  -Das MUFI ist speziell für die Arbeit in einem Mehrplatz-System entwickelt worden. Es -benötigt keine zusätzliche serielle Schnittstelle am Rechner, sondern kann einfach -zwischen Rechner und Terminal 'in den Terminalkanal gesteckt' werden, sodaß man -von diesem Terminal aus optimal auf das Interface-System zugreifen kann. Im Ideal -fall sollte jeder Arbeitsplatz mit der oben genannten Hardware ausgestattet sein, was -aber momentan sicher nicht für jede Schule finanzierbar ist. Haben Sie zunächst nur -ein (oder wenige) MUFI(s) zur Verfügung und möchten von verschiedenen Terminals -(abwechselnd) auf ein Interface-System zugreifen oder verfügen Sie gar nicht über -ein Terminal, sondern nur über einen Monitor (z.B. bei IBM-Kompatiblen), so -können Sie das MUFI auch 'als Endgerät' an einer separaten seriellen Schnittstelle -nutzen.  -#page#  -Für den Betrieb in einem Terminalkanal sollte das MUFI über eine sog. "Schnitt -stellen-Automatik" verfügen, die verhindert, daß das MUFI in ausgeschaltetem -Zustand oder mit abgezogenem Netzstecker den Datenfluß vom Rechner zum -Terminal unterbricht. Diese sehr sinnvolle Automatik wird von BICOS #on("b")#nicht#off("b")# -standardmäßig eingebaut. Sie sollten bei eventuellen Bestellungen darauf achten.  -  -  -#on("b")#4.2.1  Einstellungen am MUFI#off("b")#  -  -Gleichgültig ob Sie das MUFI 'im Terminalkanal' oder 'als Endgerät' benutzen, -müssen Sie zunächst am MUFI einige Einstellungen per DIP-Schalter im Inneren des -MUFI vornehmen. Ziehen Sie dazu aber auf alle Fälle den Stecker aus der Steckdose! -Lösen Sie dann die 4 Schrauben an der Unterseite des Gehäuses, heben das Oberteil -vorsichtig ab und legen es neben das Unterteil, sodaß die Kabelverbindungen -zwischen Unter- und Oberteil nicht belastet werden.  -  -          +---------------------------------------------------+ -          |    +-------+   +------------+                     | -          |    |       |   |            |        +---------+  | -          |    +-------+   |            |        | DIP-    |  | -          |    +-------+   |            |        | Schalter|  | -Rück-     |    |       |   |            |        +---------+  |  Vorder- -seite     |    +-------+   |            |   +--------------+  |  seite -          |    +-------+   |  SCN68000  |   |              |  | -          |    |       |   |            |   +--------------+  | -          |    +-------+   |            |                     | -          |    +-------+   |            |                     | -          |    |       |   |            |                     | -          |    +-------+   +------------+                     | -          +---------------------------------------------------+ -  -  -  -#center#Abb.1:  MUFI geöffnet  -#page#  -Die kleine Plastikbox mit den DIP-Schaltern trägt die folgende Aufschrift:  -  -#center##on("b")#O N    -#center#1 2 3 4#off("b")#  -  -Heben Sie den Deckel mit Hilfe eines kleinen Schraubendrehers o.ä. an der rechten -Seite leicht an und klappen Sie ihn nach links um. Sie können nun die 4 DIP- -Schalter sehen.  -  -              +---------------------------------------+ -              |  +-----+  +-----+  +-----+  +-----+   | -              |  |+++++|  |     |  |     |  |     |   | -              |  |+++++|  |     |  |     |  |     |   |   ON -              |  |+++++|  |     |  |     |  |     |   | -              |  |+++++|  |     |  |     |  |     |   | -              |  |     |  |     |  |     |  |     |   | -              |  |     |  |     |  |     |  |     |   | -              |  |     |  |     |  |     |  |     |   | -              |  |     |  |+++++|  |+++++|  |+++++|   | -              |  |     |  |+++++|  |+++++|  |+++++|   | -              |  |     |  |+++++|  |+++++|  |+++++|   |  OFF -              |  |     |  |+++++|  |+++++|  |+++++|   | -              |  +-----+  +-----+  +-----+  +-----+   | -              +---------------------------------------+ - -                   1         2        3        4 - -#center#Abb.2:  Mögliche DIP-Schalter-Stellung beim MUFI  -  -   Dabei haben die DIP-Schalter folgende Bedeutung:  -  -   1  ON   :    Modulbusbetrieb  -      OFF  :    Parallelportbetrieb  -   2  ON   :    RTS/CTS-Hardware-Handshake  -      OFF  :    XON/XOFF-Protokoll  -   3  ON   :    9600 Baud  -      OFF  :    19200 Baud  -   4  ON   :    Even Parity  -      OFF  :    No Parity  -  -In jedem Fall muß der DIP-Schalter 1 in Stellung #on("b")#ON#off("b")# gebracht werden.  -#page#  -Wenn Sie das MUFI im Terminalkanal betreiben wollen, müssen Sie die anderen -Einstellungen so vornehmen, daß sie zu der Konfiguration des Terminals passen (vgl. -auch Kapitel 4.4). Beträgt die Übertragungsrate 19200 Baud, so sollten Sie unbedingt -mit dem XON/XOFF-Protokoll arbeiten - es sei denn, das Terminal unterstützt -RTS/CTS! Wenn Sie das MUFI an einer separaten seriellen Schnittstelle als Endgerät -betreiben wollen, #on("b")#muß#off("b")# der Datenaustausch mit dem RTS/CTS-Protokoll abgewickelt -werden (Schalter 2 auf 'ON'!). Vergewissern Sie sich, daß Ihr Schnittstellen-Kabel -auch darauf ausgelegt ist! Nach dieser Einstellung der DIP-Schalter ist das MUFI -betriebsbereit. Fügen Sie die beiden Gehäuseteile wieder zusammen und ver -schrauben Sie sie wieder.  -  -  -#on("b")#4.2.2  MUFI im Terminalkanal#off("b")#  -  -Um das MUFI in den Terminalkanal einbauen zu können, müssen Sie zunächst am -Terminal die Zuleitung vom Rechner lösen. Auf der Rückseite des MUFIs befinden -sich zwei Stecker, die mit V24/1 und V24/2 bezeichnet sind. Stecken Sie an Stecker -V24/2 das Kabel, das ursprünglich vom Computer zum Terminal führte. Sie -benötigen jetzt noch ein weiteres (kurzes) V24-Kabel, um das MUFI mit dem -Terminal zu verbinden. Dieses wird einerseits auf Stecker V24/1 am MUFI gesteckt -und andererseits auf den Stecker am Terminal, von dem Sie das ursprüngliche Kabel -zwischen Rechner und Terminal abgezogen haben.  -  -          +--------------------------+ -          | +----------------------+ | -          | |  V24/1       V24/2   | | -          | |    |           |     | | -          | +----|-----------|-----+ | -          +------|-----------|-------+ -                 |           | -                 |           | -   ZUM     <-----+           +----->   ZUM -   TERMINAL                            COMPUTER - - -#center#Abb.3:  Einbau des MUFIs in den Terminalkanal  -#page#  -Die Verschaltung der V24-Kabel ist in der Bedienungsanleitung zum MUFI erläutert, -ggf. können Sie entsprechende Kabel von der Firma BICOS beziehen.  -  -Wenn alle Kabelverbindungen gesteckt sind, sollten Sie auf alle Fälle erst einmal #on("b")#bei -ausgeschaltetem MUFI#off("b")# prüfen, ob das Terminal sich noch bedienen läßt. Wenn dieses -keine Reaktion mehr zeigt, obwohl es vorher (ohne MUFI) reibungslos funktioniert -hat, dann haben Sie entweder ein MUFI ohne "Schnittstellen-Automatik" vor sich -(vgl. Kapitel 4.2, Seite 15), oder an den Kabelverbindungen stimmt irgendetwas nicht. -In diesem Fall sollten Sie noch einmal alle Anschlüsse und evtl. auch die interne -Verschaltung der Kabel überprüfen.  -  -Schalten Sie dann das MUFI ein. Bei ebenfalls eingeschaltetem Terminal können nun -einige Zeichen auf dem Bildschirm erscheinen, dieser Effekt ist normal. Funktioniert -Ihr Terminal bei eingeschaltetem MUFI reibungslos, so sind alle Einstellungen richtig -und Sie brauchen erst bei Kapitel 4.5 weiterzulesen. Andernfalls studieren Sie Kapitel -4.4 unter Beachtung von Kapitel 4.2.1!  -  -  -#on("b")#4.2.3  MUFI als Endgerät#off("b")#  -  -Wenn Sie das MUFI als Endgerät an einer separaten seriellen Schnittstelle betreiben -wollen, dann stecken Sie das vom Computer kommende Kabel auf den mit V24/2 -bezeichneten Stecker des MUFI.  -  -Damit ein einwandfreier Betrieb gewährleistet ist, sollten Sie einen sog. 'Kurzschluß -stecker' auf den dann freien Stecker V24/1 des MUFIs stecken. Haben Sie einen -solchen nicht zur Hand, können Sie auch zwei provisorische Drahtbrücken einsetzen: -Verbinden Sie mit zwei kleinen Drähten einmal Pin (Öffnung) 2 mit Pin 3 und -außerdem Pin 4 mit Pin 5.  -  -Die Anpassung 'gs-Warenhaus 0: mit Kartenleser an MUFI als Endgerät' unterstützt -standardmäßig nur den Betrieb von #on("b")#einem#off("b")# MUFI als Endgerät. Wie Sie vorgehen -müssen, wenn Sie mehrere MUFIs in dieser Betriebsart benutzen wollen, erfahren Sie -in Kapitel 7.  -#page#  -#on("b")#4.3  Verwendung des AKTRONIC-Adapters#off("b")#  -  -Im Gegensatz zum MUFI ist der AKTRONIC-Adapter #on("b")#nicht#off("b")# für den Einbau in einen -Terminalkanal geeignet, sondern kann nur als Endgerät an einer separaten seriellen -Schnittstelle betrieben werden. Bevor Sie den Adapter an eine serielle Schnittstelle an -schließen, sollten Sie noch die eingestellte Baud-Rate überprüfen und gegebenenfalls -neu einstellen.  -  -Öffnen Sie dazu das Gehäuse des Adapters, indem Sie die vier Schrauben an der -Unterseite lösen. Drehen Sie den Adapter so vor sich, daß die 25-polige D-Sub -miniaturbuchse von Ihnen weg zeigt. Vorn rechts sind dann zwei parallele 8-polige -Pfostensteckerleisten sichtbar.  -  -#center#25-pol. D-Subminiatur-Stecker  -  -                  +---------------+ -                  |               | -              +---+               +---+ -              | +------+              | -              | |      |              | -              | |      |              | -              | |      |              | -              | |      |              | -              | +------+              | -              | +------+              | -              | |      |    +-------+ | -              | +------+    |       | | -              | +------+    +-------+ | -              | |      |    +-------+ | -              | +------+    |     <-|---------Jumperleiste -              |             +-------+ | -              +---+               +---+ -                  |   Baudrate    | -                  +---------------+ - - -#center#Abb.4:  AKTRONIC-Adapter geöffmet  -#page#  -Auf einem Pfostensteckerpaar steckt ein 'Jumper', der gegebenenfalls (passend zu -der Schnittstellen-Konfiguration im Computer, vgl. Kapitel 4.4) umgesteckt werden -muß.  -  -                            +---------+ -                            | ζ    ζ  |     300  -                            | ζ    ζ  |     600  -                            | ζ    ζ  |    1200  -                            | ζ    ζ  |    2400  -                            | ζ    ζ  |    4800  -                            | ζ    ζ  |    9600  -               Jumper     > | ζ    ζ  |   19200  -                            | ζ    ζ  |   38400  -                            +---------+ -                                          Baudrate  -  -  -#center#Abb.5:  Mögliche Jumperposition beim AKTRONIC-Adapter  -  -  -Am Adapter ist ein Kabel mit 25-poligem D-Subminiaturstecker bereits fest montiert. -Sollte der Stecker nicht an Ihren Rechner passen, so müßten Sie ein entsprechendes -Adapterkabel basteln oder kaufen.  -  -Die Anpassung 'gs-Warenhaus 0: mit Kartenleser an AKTRONIC-Adapter' unterstützt -standardmäßig nur den Betrieb von #on("b")#einem#off("b")# Adapter. Wie Sie vorgehen müssen, wenn -Sie mehrere dieser Adapter benutzen wollen, erfahren Sie in Kapitel 7.  -  -  -#on("b")#4.4  Konfiguration der seriellen Schnittstelle#off("b")#  -  -Sie müssen nun noch dafür Sorge tragen, daß die Einstellungen am MUFI bzw. am -AKTRONIC-Adapter mit den Einstellungen im Computer übereinstimmen.  -#page#  -Koppeln Sie dazu die Task 'configurator' an Ihr Terminal an (mit 'continue -("configurator") <RETURN>') und geben Sie dann das Kommando 'configurate -<RETURN>'. Für alle vorhandenen Kanäle werden Sie nun nacheinander gefragt, -ob Sie eine Konfiguration vornehmen wollen. Bei den "interessanten" Kanälen ant -worten Sie mit 'ja' (<j>). Wollen Sie sich nur die aktuelle Konfiguration ansehen, so -beantworten Sie alle weiterhin gestellten Fragen zu diesem Kanal mit 'ja' (<j>), -dann bleibt die aktuelle Einstellung erhalten. (Der Konfigurationsdialog ist im -EUMEL-Systemhandbuch auf den Seiten 6 - 8 detailliert beschrieben.)  -  -Benutzen Sie ein MUFI, so müssen auf alle Fälle #on("b")#8 Datenbits#off("b")# und #on("b")#1 Stopbit#off("b")# einge -stellt sein und außerdem je nach DIP-Schalter-Stellung im MUFI (vgl. Kapitel 4.2.1) -9600 oder 19200 Baud sowie 'no parity' oder 'even parity'.  -  -Benutzen Sie das MUFI im Terminalkanal, so müssen Sie bei einer eventuellen -Änderung der Konfiguration an diesen Stellen auch das entsprechende Terminal auf -diese Werte einstellen!  -  -Bei der Verwendung des MUFIs als Endgerät muß der Kanal, an den das MUFI ange -schlossen wird, darüberhinaus unbedingt auf die Betriebsarten  -  -#center#transparent  und  RTS/CTS-Protokoll  -  -eingestellt werden.  -  -Verwenden Sie einen AKTRONIC-Adapter, so müssen für den entsprechenden Kanal -folgende Konfigurationsmerkmale eingestellt werden:  -  -#center#transparent, 8 Bit, 2 Stopbit, #on("b")#kein#off("b")# Protokoll  -  -Die Baud-Rate ist gemäß der Jumper-Position im Adapter (vgl. Kapitel 4.3) einzu -stellen.  -  -  -  -#on("b")#4.5  Verbindung der Hardware-Komponenten#off("b")#  -  -Der Anschluß des Kartenlesers an den MODUL-BUS-Steckplatz ist denkbar einfach: -Stecken Sie den 8-poligen Platinenstecker des Codekartenlesers in die Buchse des -Digital-Einganges der Steckkarte bzw. Compact-Box und den 3-poligen Platinen -stecker in die passende Spannungsversorgungsbuchse (12 V) am Steckplatz bzw. auf -der Compact-Box, fertig. Bei eingeschalteter Betriebsspannung muß nun der Code -kartenleser beleuchtet sein. (Falls Sie einen Mehrfachsteckplatz benutzen, benötigen -Sie ein passendes Netzteil für diesen Steckplatz! Achten Sie auch darauf, daß in -diesem Fall die Kombi- oder E/A-Karte in Steckplatz (Slot) 1 installiert ist.)  -  -Nun müssen Sie noch die Verbindung zu dem verwendeten Adapter herstellen. Dabei -ist es gleichgültig, ob Sie eine Compact-Box, einen Einzel- oder einen Mehrfachsteck -platz benutzen, denn alle diese Geräte verfügen über ein Anschlußkabel mit dem -gleichen 25-poligen Stecker.  -  -Den AKTRONIC-Adapter können Sie damit direkt an den Steckplatz anschließen, -denn er verfügt bereits über eine entsprechende 25-polige Buchse. Hier müssen Sie -dann nur noch die Stromversorgung des Adapters sichern, indem Sie das Kabel mit -dem 3-poligen Platinenstecker in die passende Spannungsversorgungsbuchse (12 V) -am Steckplatz oder auf der Compact-Box stecken. (Damit Codekartenleser und -Adapter hier gleichzeitig versorgt werden können, ist in den Stecker eine Verzweigung -eingebaut.)  -  -Für das MUFI benötigen Sie ein weiteres Kabel, das an einem Ende einen 36-poligen -Centronics-Stecker besitzt und an dem anderen einen 25-poligen D-Subminiatur -stecker (von der Firma BICOS zu beziehen).  -  -Zum Ausprobieren des Kartenlesers benutzen Sie am besten die Menupunkte -'Dezimalwert lesen' und 'Bitmuster lesen' unter dem Oberbegriff 'Kommandos' des -Warenhaus-Menus. Eine Beschreibung dieser Punkte finden Sie in Kapitel 5.4.  - - - - - - - - - - diff --git a/doc/warenhaus/gs-Warenhaus-5 b/doc/warenhaus/gs-Warenhaus-5 deleted file mode 100644 index c1164ad..0000000 --- a/doc/warenhaus/gs-Warenhaus-5 +++ /dev/null @@ -1,1468 +0,0 @@ -#limit (11.0)##pagelength (16.5)##block#                                    -#start (2.0,0.0)#  -#page (20)#  -#headodd#  -#center#gs-Warenhaus#right#%  -  -#end#  -#headeven#  -%#center#gs-Warenhaus  -  -#end#  -#center#1  -  -#center##on("b")#5  Beschreibung der Menufunktionen#off("b")#  -  -  -Nach Aufruf meldet sich #on("b")#gs-Warenhaus#off("b")# zunächst mit dem #on("b")#gs-DIALOG#off("b")#-Emblem -(vgl. Kapitel 3.3). Kurze Zeit später erscheint das WARENHAUS-Eingangsmenu auf -dem Bildschirm:  -  -  +------------------------------------------------------------------------+ -  | WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv| -  |------------------------------------------------------------------------| -  |    |  b  Befehlsvorrat  |                                              | -  |    | ------------------ |                                              | -  |    |  a  Artikeldaten   |                                              | -  |    |  k  Kundendaten    |                                              | -  |    +--------------------+                                              | -  |                                                                        | -  |                                                                        | -  |                                                                        | -  |------------------------------------------------------------------------+ -  |                                                                        | -  |  Info:<ESC><?>/<?> Wahl:<Pfeile> Ausführen:<RETURN> Verlassen:<ESC><q> | -  +------------------------------------------------------------------------+ - -#off("b")#  -  -  -Bevor wir Ihnen die Bedeutung der einzelnen Menu-Punkte erklären, geben wir erst -noch einige grundsätzliche Hinweise zur Bedienung des Menus für diejenigen Leser, -die im Umgang mit Menus unter #on("b")#gs-DIALOG#off("b")# nicht geübt sind.  -  -  -  -#on("b")#5.1  Kurzhinweise zur Bedienung des Menus#off("b")#  -  -Die Bedienung des Menus ist sehr einfach. Eine ausführliche Beschreibung dazu -finden Sie in den Unterlagen zum Programmsystem #on("b")#gs-DIALOG#off("b")#. An dieser Stelle -sollen nur die wesentlichen Bedienungsvorgänge beschrieben werden.  -#page#  --  Mit der Tastenfolge <ESC><?> können Sie sich Informationen zur Bedienung -   des Menusystems in das Menu einblenden lassen  -  --  Mit den Pfeiltasten <rechts> und <links> können Sie zwischen den "Ober -   begriffen" in der Kopfzeile wählen. Der aktuelle Oberbegriff ist jeweils invers -   dargestellt. Das ausgeklappte 'Pull-Down-Menu' bezieht sich auf diesen invers -   dargestellten Oberbegriff.  -  --  Mit den Pfeiltasten <hoch> und <runter> können Sie zwischen den Menu -   funktionen wählen, die Ihnen im aktuellen Pull-Down-Menu zur Auswahl ange -   boten werden. Die aktuell angewählte Menufunktion wird jeweils invers darge -   stellt. Die Trennlinien, die in einigen Pull-Down-Menus sichtbar sind, dienen nur -   der optischen Untergliederung; sie können nicht angewählt werden und werden -   deshalb automatisch übersprungen. Die einzelnen Menupunkte sind "zyklisch -   miteinander verknüpft", das heißt, man gelangt vom untersten Menupunkt -   wieder zum obersten und umgekehrt. Menupunkte, vor denen ein Minuszeichen -   steht ('-'), sind (zur Zeit) nicht aktivierbar; auch sie können nicht angewählt -   werden und werden einfach übersprungen.  -  --  Durch Tippen der Fragezeichentaste (<?>) können Sie sich jeweils zur -   aktuellen Menufunktion (invers im Pull-Down-Menu) Informationen in das Menu -   einblenden lassen.  -  --  Um eine Menufunktion ausführen zu lassen, bewegen Sie sich mit den Pfeiltasten -   auf die gewünschte Menufunktion im aktuellen Pull-Down-Menu und tippen -   dann die <RETURN>-Taste. Steht vor dem gewünschten Menupunkt ein -   einzelner Buchstabe oder eine Ziffer, so kann durch Tippen der entsprechenden -   Taste diese Menufunktion dadurch direkt aufgerufen werden. Sobald eine Menu -   funktion aufgerufen worden ist, erscheint davor ein Stern ('*'). Daraus können -   Sie entnehmen, daß das System bereits den Auftrag ausführt.  -  --  An verschiedenen Stellen werden Fragen an Sie gerichtet, die Sie mit 'ja' oder -   'nein' beantworten müssen. Tippen Sie dazu entsprechend der Entscheidung die -   Taste <j> (für 'ja') bzw. <n> (für 'nein').  -  --  Werden Ihnen vom Menu aus Dateinamen zur Auswahl angeboten, so können Sie -   den auf dem Bildschirm sichtbaren Pfeil vor den gewünschten Namen -#page#  -   positionieren. Mit den Tasten <x> oder <RETURN> können Sie den Namen -   ankreuzen. Ist die Auswahl mehrerer Dateinamen möglich, so können Sie den -   Vorgang wiederholen. Mit den Tasten <o> oder <RUBOUT> können Sie auch -   ein Kreuz vor einem Namen wieder löschen. Daneben gibt es noch einige Tasten -   funktionen, die für die Bedienung recht hilfreich sein können. Tippen Sie -   während der Auswahl die Fragezeichentaste (<?>), so werden Ihnen alle -   Bedienungsmöglichkeiten auf dem Bildschirm angezeigt. Eine Auswahl, in der -   mehrere Dateien angekreuzt werden dürfen, wird durch die Tastenfolge -   <ESC><q> verlassen. Anschließend wird die eingestellte Operation mit den -   angekreuzten Dateien ausgeführt. Sind Sie versehentlich in eine solche Auswahl -   gelangt, so können Sie den Vorgang durch die Tastenkombination <ESC><h> -   abbrechen.  -  --  An einigen Stellen werden Sie aufgefordert, eine Eingabe zu machen (z.B. einen -   Dateinamen einzugeben). Wird Ihnen hier ein Vorschlag gemacht, den Sie -   akzeptieren, so brauchen Sie zur Bestätigung nur die <RETURN>-Taste zu -   tippen. Gefällt Ihnen der Vorschlag nicht oder wird Ihnen kein Vorschlag -   gemacht, so machen Sie bitte die gewünschte Eingabe. Zum Schreiben stehen -   Ihnen alle aus dem Editor bekannten Funktionen zur Verfügung. Mit der Taste -   <RUBOUT> können Sie Buchstaben löschen, mit <RUBIN> einfügen. Die -   Eingabe wird durch Tippen der <RETURN>-Taste abgeschlossen. Ist der von -   Ihnen gewünschte Name schon in Ihrer Task vorhanden und steht in der Fußzeile -   der Hinweis 'Zeigen: <ESC><z>', dann können Sie sich auch alle vor -   handenen Namen zur Auswahl anbieten lassen und durch Ankreuzen den beab -   sichtigten Namen auswählen.  -  --  Ihnen können auch mehrere Alternativen angeboten werden, zwischen denen Sie -   wählen müssen. In der untersten Zeile eines solchen Kastens, in denen Ihnen die -   Alternativen auf dem Bildschirm eingeblendet werden, sind die Möglichkeiten -   aufgeführt, die darüber beschrieben sind. Mit den Pfeiltasten können sie die -   Markierung auf die gewünschte Alternative positionieren und dann durch die -   <RETURN>-Taste zur Ausführung bringen. (Manchmal ist das auch durch -   Tippen der den Alternativen vorangestellten Buchstaben oder Ziffern möglich).  -#page#  --  Durch die Tastenfolge <ESC><q> kann das Menu insgesamt verlassen -   werden. Damit das nicht versehentlich geschieht, wird jeweils die Frage gestellt, -   ob Sie das Menu tatsächlich verlassen wollen. Diese Frage beantworten Sie bitte je -   nach Wunsch mit 'ja' oder 'nein' durch Tippen der Tasten <j> bzw. <n>.  -  -  -#on("b")#5.2  Menufunktionen zum Oberbegriff 'Info'#off("b")#  -  -Das auf dem Bildschirm sichtbare Pull-Down-Menu ist bereits oben abgebildet.  -  -#on("b")#b Befehlsvorrat#off("b")#  -  -     Mit dieser Funktion können Sie sich die Befehle, die Ihnen von der jeweils -     eingestellten Programmierumgebung zur Verfügung gestellt werden, auf dem -     Bildschirm anzeigen lassen. Anhand dieser Informationen können Sie auch -     feststellen, ob in dem System, das Ihnen zur Verfügung steht, die 'GRIN- -     Version' oder die 'ELAN-Version' eingestellt ist.  -  -     Je nach Version gelangen Sie zunächst in eines der folgenden beiden Auswahl -     menus:  -#on("b")#  -     GRIN-Version:  -  -  -                 +-------------------------------------------------+      -                 |          d   Datei - Bearbeitung                | -                 |          e   Einkaufen und Auskunft             | -                 |          k   Kontroll - Strukturen              | -                 |                                                 | -                 |          z   Zurück zum Hauptmenü               | -                 |                                                 | -                 |    Datei   Kaufen/Auskunft   Kontroll   Zurück  | -                 |                                                 | -                 +-------------------------------------------------+ -#off("b")# -#page# -#on("b")#  -     ELAN-Version:  -  -                 +-------------------------------------------------+ -                 |          d   Datei - Bearbeitung                | -                 |          e   Einkaufen und Auskunft             | -                 |          s   Sonstige Befehle                   | -                 |                                                 | -                 |          z   Zurück zum Hauptmenü               | -                 |                                                 | -                 |   Datei   Kaufen/Auskunft   Sonstige   Zurück   | -                 |                                                 | -                 +-------------------------------------------------+ - -#off("b")#  -  -     Von hier aus können Sie zu jedem dort angegebenen Bereich eine Informa -     tionstafel abrufen.  -  -     Aus jeder dieser Tafeln gelangen Sie wieder in die Auswahl zurück. Verlassen -     Sie die Auswahl selbst, gelangen Sie zurück ins Ausgangsmenu.  -  -  -#on("b")#a Artikeldaten#off("b")#  -  -     Bei Aktivierung dieses Menupunktes erhalten Sie eine Kurzinformation über -     Aufbau und Umfang der Artikeldaten:  -#on("b")#  -            +-------------------------------------------------------+ -            |    Ein Satz 'Artikeldaten' besteht aus:               | -            |                                                       | -            |               Artikelname                             | -            |               Preis                                   | -            |               Mindestbestand                          | -            |            Bestand                                    | -            |                                                       | -            |  Es können Daten für maximal 15 Artikel gespeichert   | -            |  werden. Die zugehörigen Artikelnummern sind 1...15.  | -            |                                                       | -            +-------------------------------------------------------+ - - -#off("b")#  -  -     In allen Filialen müssen zu einer Artikelnummer stets der Artikelname und -     Preis identisch sein, Bestand und Mindestbestand können beliebig gewählt -     werden. Artikeldateien werden nur in den jeweiligen Filialen gehalten und -     nicht in der Zentrale.  -#page#  -     Gegenüber der Soester Warenhaus-Version sind Artikeldaten um den Punkt -     'Mindestbestand' erweitert worden, weil sich damit unserer Meinung nach eine -     realistischere Nachbestellung realisieren läßt (vgl. auch Kapitel 5.4, 'Nachbe -     stellen').  -  -     Sollte Ihnen der Umfang des Warensortiments mit maximal 15 verschiedenen -     Artikeln sehr gering vorkommen, so denken Sie bitte daran, daß die Artikel -     daten an jedem Arbeitsplatz erst einmal eingegeben werden müssen, was bei -     Computer-Anfängern recht lange dauert. Außerdem kommt es nur bei einem -     genügend kleinen Sortiment zu den methodisch-didaktisch erwünschten -     Einkaufshäufungen bei bestimmten Produkten.  -  -  -#on("b")#k Kundendaten#off("b")#  -  -     Bei Aktivierung dieses Menupunktes erhalten Sie eine Kurzinformation über -     Aufbau und Umfang der Kundendaten:  -#on("b")#  -          +----------------------------------------------------------+ -          |                  Nachname                                | -          |                  Vorname                                 | -          |                  Geschlecht                              | -          |                                                          | -          |   Es können Daten für maxomal 31 Kunden gespeichert      | -          |   werden. Die zugehörigen Kundennummern sind 129...159.  | -          |                                                          | -          +----------------------------------------------------------+ -#off("b")#  -  -     Die Zuordnung Kundennummer ---> Kunde muß in allen Filialen gleich sein. -     Kundendateien werden von jeder Filiale und von der Zentrale geführt.  -  -     Gegenüber der Soester Warenhaus-Version sind Kundendaten um die Punkte -     'Nachname' und 'Geschlecht' erweitert worden, um dem Begriff Kunden#on("b")#daten#off("b")# -     etwas gerechter zu werden. Die maximale Kundenanzahl von 31 entspricht -     etwa der Größe einer Klasse.  -#page#  -#on("b")#5.3  Menufunktionen zum Oberbegriff 'Eingabeart'#off("b")#  -  -Die Funktionen unter diesem Oberbegriff sind nur dann für Sie interessant, wenn Sie -einen Codekartenleser verwenden.  -#on("b")#  -+-------------------------------------------------------------------------+  -| WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv | -|-------------+-----------------+-----------------------------------------| -|             |  *  Anzeigen    |                                         | -|             | --------------- |                                         | -|             |  k  Kartenleser |                                         | -|             |  t  Tastatur    |                                         | -|             +-----------------+                                         | -|                                                                         | -|                                                                         | -|                                        +------------------------+       | -|                                        | Die Eingabeart ist auf |       | -|                                        |                        |       | -|                                        |          Tastatur      |       | -|                                        |                        |       | -|                                        |          eingestellt   |       | -|                                        +------------------------+       | -|-------------------------------------------------------------------------| -|  Info:<ESC><?>/<?> Wahl:<Pfeile> Ausführen:<RETURN> Verlassen:<ESC><q>  | -+-------------------------------------------------------------------------+ -#off("b")#  -  -#on("b")#a Anzeigen#off("b")#  -  -     Es wird die momentan eingestellte Eingabeart angezeigt. Möglich sind die -     Eingabearten #on("b")#Tastatur#off("b")# und #on("b")#Kartenleser#off("b")#. Die Standardeinstellung ist -     'Tastatur'!  -  -  -#on("b")#k Kartenleser#off("b")#  -  -     Die Eingabeart 'Kartenleser' wird eingestellt. Alle Artikelnummern, Kunden -     nummern und sonstige Codenummern (für Auskünfte) können danach nur -     über den Kartenleser eingegeben werden.  -#page#  -     Diese Eingabeart kann nur eingestellt werden, wenn ein Kartenleser mit -     funktionstüchtigem Interface angeschlossen ist. Sonst erfolgt eine ent -     sprechende Fehlermeldung.  -  -     Fehlerfälle:  -  -     - Kein Interface vorhanden!  -       Ursache: Bei der Installation von #on("b")#gs-Warenhaus#off("b")# wurde angegeben, daß -                kein Kartenleser benutzt werden soll.  -  -     - Interface meldet sich nicht!  -       Abhilfe: Überprüfen, ob der Adapter ordnungsgemäß angeschlossen und -                eingeschaltet ist (vgl. Kapitel 4). Notfalls Eingabeart auf -                'Tastatur' schalten; wenn ein MUFI verwendet wird, MUFI aus- -                und nach kleiner Pause wieder einschalten; noch einmal die -                Eingabe 'Kartenleser' anwählen.  -  -     - TASK für Interface ist besetzt!  -       (Kann nur beim Betrieb von MUFI als Endgerät oder bei AKTRONIC-Adapter -        auftreten.)  -       Abhilfe: Wenn irgendeine andere Task die Eingabeart 'Kartenleser' ein -                gestellt hat, dort auf 'Tastatur' umstellen.  -  -     - Interface-Kanal belegt!  -       (Kann nur beim Betrieb von MUFI als Endgerät oder bei AKTRONIC-Adapter -        auftreten.)  -       Abhilfe: Feststellen, welche Task an den Interface-Kanal angekoppelt ist -                ('taskinfo (2)'), und diese dann abmelden ('break' oder 'end'). -                Die Nummer des Interface-Kanals kann mit dem Befehl 'put -                (interfacekanal)' erfragt werden.  -  -     - TASK für Interface existiert nicht!  -       (Kann nur beim Betrieb von MUFI als Endgerät oder bei AKTRONIC-Adapter -        auftreten.)  -        Abhilfe: Task löschen; in der Vatertask das Kommando 'init interface -                 channel' geben; Task neu anmelden.  -#page#  -#on("b")#t Tastatur#off("b")#  -  -     Die Eingabeart 'Tastatur' wird eingestellt. Alle Artikelnummern, Kunden -     nummern und sonstige Codenummern (für Auskünfte) können danach nur -     über die Tastatur eingegeben werden. Ein etwa angeschlossener Codekarten -     leser ist bei dieser Einstellung nicht mehr ansprechbar.  -  -  -  -#on("b")#5.4  Menufunktionen zum Oberbegriff 'Kommandos'#off("b")#  -  -Dieses ist das zentrale Menu für den Benutzer von #on("b")#gs-Warenhaus#off("b")#. Unter diesem -Oberbegriff finden Sie alle Funktionen, die notwendig sind, um die Abläufe innerhalb -des Modell-Warenhauses zu simulieren. (Die angebotenen Menufunktionen ent -sprechen etwa den "Direktbefehlen" der Soester Software.)  -#on("b")#  -+-------------------------------------------------------------------------+ -| WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv | -|---------------------+-------------------------------+-------------------| -|                     |  w   Warendatei bearbeiten    |                   | -|                     |  k   Kundendatei bearbeiten   |                   | -|                     |  --------------------------   |                   | -|                     |  e   Einkaufen                |                   | -|                     |  --------------------------   |                   | -|                     |  a   Auskunft einholen        |                   | -|                     |  n   Nachbestellen            |                   | -|                     |  --------------------------   |                   | -|                     |  -   Dezimalwert lesen        |                   | -|                     |  -   Bitmuster lesen          |                   | -|                     +-------------------------------+                   | -|                                                                         | -|-------------------------------------------------------------------------| -|    Info:<ESC><?>/<?> Wahl:<Pfeile> Ausführen:<RETURN> Verlassen:<ESC><q>| -+-------------------------------------------------------------------------+ -#off("b")#  -  -Wird im Unterricht kein Kartenleser benutzt, so sind die eingegeben Daten völlig -ungeschützt. Vor allem bei der Kundendatei muß sichergestellt werden, daß dort -#page#  -keine unsinnigen Eintragungen oder Änderungen vorgenommen werden, da alle -Neueintragungen und Änderungen in dieser Datei auch in der Warenhaus-Zentrale -wirksam werden und von dort aus auf Anfrage jeder Filiale mitgeteilt werden. -Korrekturen können dadurch sehr mühsam werden. Natürlich sind ohne Kartenleser -(und dem damit verbundenen 'Ausweis' Codekarte) auch jederzeit Einkäufe mit jeder -beliebigen Kundennummer möglich. Auch hier sollten Sie etwaigem Mißbrauch -vorbeugen.  -  -  -#on("b")#w Warendatei bearbeiten#off("b")#  -  -     Hiermit kann die Warendatei der Filiale aufgebaut und verändert werden. Der -     Bildschirm sieht dabei wie folgt aus:  -#on("b")#  -+------------------------------------------------------------------------+  -|WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv | -|-----------------------------------+------------------------------------| -|                                   |   Artikelnummer    :  1            | -|                                   |                                    | -|                                   |                                    | -|                                   |   Artikelname      :  Bier (Kasten)|  -|                                   |                                    | -|                                   |   Preis            :  16.85        | -|                                   |                                    | -|                                   |   Mindestbestand   :  25           | -|                                   |                                    | -|                                   |   Bestand          :  20           | -|                                   |                                    | -|                                   |                                    | -|                                   |       Alles richtig ?              | -|                                   |                                    | -|                                   |         Ja    Nein                 | -|-----------------------------------+------------------------------------| -|  Info:<ESC><?>/<?> Wahl:<Pfeile> Ausführen:<RETURN> Verlassen:<ESC><q> | -+------------------------------------------------------------------------+ -#off("b")#  -  -     Zunächst muß eine Artikelnummer (1...15) eingegeben werden (je nach -     Einstellung über die Tastatur oder mittels einer Warenkarte über den Code -     kartenleser). Unzulässige Artikelnummern werden dabei nicht akzeptiert.  -#page#  -     Ist unter dieser Nummer bereits ein Artikel gespeichert, so werden die ent -     sprechenden Artikeldaten in dem rechten oberen Bildschirmfenster gezeigt -     und können dort geändert oder einfach übernommen werden. Gibt es noch -     keinen Artikel mit dieser Nummer, so sind neue Artikeldaten einzugeben.  -  -     Dieser Vorgang wird solange wiederholt, bis bei der Eingabe der Artikelnummer -     die Tastenfolge <ESC><q> gedrückt wird.  -  -     Achten Sie darauf, daß in jeder Filiale der zu einer Artikelnummer gehörige -     Artikel stets denselben Artikelnamen und -preis erhält. Bestand und Mindest -     bestand können unterschiedlich sein.  -  -  -#on("b")#k Kundendatei bearbeiten#off("b")#  -  -     Hiermit kann die Kundendatei der Filiale aufgebaut und verändert werden. -     Ähnlich wie bei der Funktion 'Warendatei bearbeiten' erfolgen die Eingaben im -     rechten oberen Bildschirmfenster.  -  -     Zunächst muß eine Kundennummer (129...159) eingegeben werden (je nach -     Einstellung über die Tastatur oder mittels einer Kundenkarte über den Code -     kartenleser). Unzulässige Kundennummern werden dabei nicht akzeptiert.  -  -     Ist unter dieser Nummer bereits ein Kunde in der Filiale oder in der Zentrale -     gespeichert, so werden die entsprechenden Kundendaten in dem rechten -     oberen Bildschirmfenster gezeigt und können dort geändert oder einfach über -     nommen werden. Gibt es noch keinen Kunden mit dieser Nummer, so sind -     neue Kundendaten einzugeben. (Neueingaben und Änderungen werden sofort -     der Zentrale, aber nicht automatisch den andern Filialen mitgeteilt!)  -  -     Dieser Vorgang wird solange wiederholt, bis bei der Eingabe der Kunden -     nummer die Tastenfolge <ESC><q> gedrückt wird.  -#page#  -#on("b")#e Einkaufen#off("b")#  -  -     Zunächst wird eine Kundennummer (129...159) erfragt. Wird die Nummer -     eines Kunden eingegeben, dessen Daten in der Filiale oder Zentrale bereits -     gespeichert sind, so erscheint im linken Bildschirmfenster der Rechnungskopf -     mit dem Namen des Kunden. Ist unter der Nummer noch kein Kunde einge -     tragen oder wird die Eingabe der Kundennummer durch die Tastenfolge -     <ESC><q> abgebrochen, so enthält der Rechnungskopf keinen Kunden -     namen.  -  -     Das eigentliche Einkaufen erfolgt nun durch die Eingabe von Artikelnummern -     (1...15). Der zugehörige Artikelname und der Preis werden daraufhin in die -     Rechnung eingetragen.  -#on("b")#  -+------------------------------------------------------------------------+ -|WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv | -|----------------------------------+-------------------------------------| -|    RECHNUNG für Herrn B. Pollok  |  Artikelnummer   :  1               | -|                                  |                                     | -|      Bier (Kasten)         16.85 |                                     | -|      Tageszeitung           0.80 |                                     | -|      Pflaster               2.39 |                                     | -|      Mehl                   0.79 |                                     | -|      Seife                  1.80 |                                     | -|      Weinbrand             12.75 |                                     | -|      Zigaretten             3.80 |                                     | -|      Brot                   2.29 |                                     | -|      Schallplatte          19.90 |                                     | -|      Geodreieck             2.35 |-------------------------------------| -|      Videokassette         12.75 |  Artikelnummer eingeben             | -|      Schulheft              0.85 |                                     | -|                                  |  Stoptaste:  <ESC><q>               | -|----------------------------------+-------------------------------------| -|    Einkaufen                                                           | -+------------------------------------------------------------------------+ -#off("b")#                                                               | -  -     Dieser Vorgang wird solange wiederholt, bis die Eingabe einer Artikelnummer -     durch Tippen der Tastenfolge <ESC><q> abgebrochen wird.  -  -     Abschließend wird der Rechnungsgesamtbetrag ausgegeben und gefragt, ob die -     Rechnung gedruckt werden soll.  -#page#  -#on("b")#a Auskunft einholen#off("b")#  -  -     Mit Hilfe dieses Kommandos lassen sich nach Einlesen einer Codenummer (je -     nach Einstellung über Tastatur oder Codekartenleser) verschiedene Auskünfte -     über die gespeicherten Daten abrufen. Es können #on("b")#Einzelauskünfte#off("b")# oder -     #on("b")#Listenauskünfte#off("b")# eingeholt werden. Bei Eingabe einer falschen Nummer wird -     die Auskunft abgebrochen!  -  -  -     #on("b")#Einzelauskünfte:#off("b")#  -  -     Codenummern  1...15 (Artikelnummern):  -                  Die zugehörigen Artikeldaten werden im rechten oberen Bild -                  schirmfenster angezeigt.  -  -     Codenummern  129...159 (Kundennummern):  -                  Die zugehörigen Kundendaten werden im rechten oberen -                  Bildschirmfenster angezeigt.  -  -  -     #on("b")#Listenauskünfte:#off("b")#  -  -     Hierbei liefern jeweils 3 benachbarte Codenummern von der Art her ähnliche -     Auskunfts-Listen, die auf Wunsch auch ausgedruckt werden können. Die -     mittlere Nummer bezieht die Auskünfte stets auf die eigene Filiale; die beiden -     anderen sind nur effizient, wenn mehrere Filialen angemeldet sind. Dabei -     werden bei Eingabe der linken Nummer die jeweiligen Daten #on("b")#aller#off("b")# Filialen -     'aufaddiert' und in #on("b")#einer#off("b")# Gesamtliste ausgegeben. Bei Eingabe der rechten -     Nummer hingegen werden die jeweiligen Listen von allen angeschlossenen -     Filialen der Reihe nach abgerufen und #on("b")#hintereinander#off("b")# in eine Datei ge -     schrieben, sodaß man eine Zusammenstellung der entsprechenden #on("b")#Einzel#off("b")#- -     Listen der Filialen erhält:  -#page#  -     Codenummern  66, 67, 68:  -                  Die bisherigen Verkaufszahlen der einzelnen Waren werden -                  gezeigt; die Listen sind sortiert nach diesen Zahlen ('Ver -                  kaufs-Hitlisten').  -  -     Codenummern  73, 74, 75:  -                  Nach Eingabe einer Artikelnummer wird eine Liste aller -                  Käufer dieses Artikels ausgegeben.  -  -     Codenummern  77, 78, 79:  -                  Diese Codes liefern Kundenlisten der Filialen.  -  -     Codenummern  84, 85, 86:  -                  Nach Eingabe einer Kundennummer wird eine Liste aller von -                  diesem Kunden gekauften Artikel ausgegeben.  -  -     Codenummern  89, 90, 91:  -                  Diese Codes liefern die Lagerbestandslisten der Filialen. Sollte -                  sich bei der Auskunft '90' herausstellen, daß der Bestand -                  mehrerer Artikel unter den Mindestbestand abgesunken ist, ist -                  es sinnvoll, als nächstes den Menupunkt 'Nachbestellen' -                  anzuwählen (s.u.).  -#page#  -     Beispiel: Der Code '90' liefert bei entsprechend eingegebener Warendatei -               folgende Auskunft:  -#on("b")#  - +------------------------------------------------------------------------+  - |   ............. Auskunft: Filiale 1 ................... Zeile 1        | - |                                                                        | - |      Lagerübersicht:                                                   | - | ---------------------------------------------------------------------- | - | ---------------------------------------------------------------------- | - |    |  Art.Nr.| Artikelname      |       Preis | Min.Best. | Bestand  | | - | ---+---------+------------------+-------------+-----------+----------+ | - |    |         |                  |             |           |          | | - |    |     1   | Bier (Kasten)    |      16.85  |      25   |     19   | | - |    |     2   | Tageszeitung     |       0.80  |      15   |     16   | | - |    |     3   | Pflaster         |       2.39  |      14   |     22   | | - |    |     4   | Mehl             |       0.79  |      32   |     58   | | - |    |     5   | Seife            |       1.80  |      27   |     49   | | - |    |     6   | Weinbrand        |      12.75  |      24   |     41   | | - |    |     7   | Zigaretten       |          4 +------------+--------+ | | - |    |     8   | Brot             |          2 |   Auskunft drucken ?| | | - |    |     9   | EMMA             |          3 |                     | | | - |    |    10   | Schallplatte     |         19 |      Ja     Nein    | | | - |    |    11   | Geodreieck       |          2 +---------------------+ | | - |    |         |                  |             |                      | | - |    |         |                  |             |                      | | - |    |         |                  |             |                      | | - |----------------------------------------------------------------------- | - |                          | Ändern: <Pfeile>   Bestätigen: <RETURN>     | - + -----------------------------------------------------------------------+ - -#off("b")#  -  -     Hinweis: Nur die zu den jeweils mittleren Codenummern gehörigen Aus -              kunftsfunktionen arbeiten mit Daten, die in der eigenen Task -              gespeichert sind. Bei den übrigen Auskünften müssen Daten aus -              anderen Filialverwaltungs-Tasks oder der Zentrale geholt werden, -              so daß die Erstellung solch einer Auskunft recht zeitaufwendig ist. -              Um zu lange Wartezeiten zu vermeiden, sollten nicht mehrere -              Filialen gleichzeitig Auskünfte dieser Art einholen.  -#page#  -#on("b")#n Nachbestellen#off("b")#  -  -     Auf dem Bildschirm wird eine Bestelliste ausgegeben, die alle Artikel enthält, -     deren Bestand innerhalb der Filiale den Mindestbestand unterschritten hat.  -  -     Die Nachbestellung ist so bemessen, daß diese Artikel wieder mit ihrem -     doppelten Mindestbestand vorrätig sind. Die neuen Bestände werden auto -     matisch in die Warendatei der Filiale eingetragen.  -  -     Auf Wunsch kann die Bestelliste ausgedruckt werden.  -  -  -#on("b")#d Dezimalwert lesen#off("b")#  -  -     Der aktuelle Wert, der vom Codekartenleser gelesen wird, wird (ähnlich wie bei -     'Bitmuster lesen', s.u.) auf dem Bildschirm ausgegeben, bis <ESC><q> -     gedrückt wird. Mit Hilfe dieses Kommandos kann man z.B. die Funktion des -     Codekartenlesers testen und den Zusammenhang zwischen Bitmuster und -     Dezimalwert klären.  -  -     Dieser Menupunkt ist (ebenso wie der nächste) nur dann aufrufbar, wenn -     unter #on("b")#Eingabeart#off("b")# der #on("b")#Kartenleser#off("b")# eingestellt ist.  -  -  -#on("b")#b Bitmuster lesen#off("b")#  -  -     Dieser Menupunkt ist nur dann aufrufbar, wenn unter #on("b")#Eingabeart#off("b")# der -     #on("b")#Kartenleser#off("b")# eingestellt ist (vgl. Kapitel 5.3).  -  -     Ist das der Fall, so wird hier das aktuelle Bitmuster, das vom Codekartenleser -     gelesen wird, auf dem Bildschirm ausgegeben, bis <ESC><q> gedrückt -     wird.  -#on("b")#  -+-------------------------------------------------------------------------+ -| WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv | -|-----------------------------------+-------------------------------------| -|                                   |                                     | -|                                   |                                     | -|                                   |      Bitmuster :    0I00III0        | -|                                   |                                     | -|                                   |                                     | -|                                   |                                     | -|                                   |                                     | -|                                   |                                     | -|                                   |                                     | -|                                   |                                     | -|                                   |                                     | -|                                   |                                     | -|                                   |     Lesen beenden mit <ESC><q>      | -|                                   +-------------------------------------| -|                                                                         | -|    Bitmuster lesen                                                      | -+-------------------------------------------------------------------------+ -#off("b")#  -  -     Ein Bitmuster besteht aus 8 Zeichen (z.B. 'OIOOIIIO'). Dabei zeigt jedes 'I' ein -     Loch an der entsprechenden Stelle der Codekarte an, die sich gerade im -     Kartenlesegerät befindet. Dieses Bitmuster entspricht der Dualzahl 01001110 -     (im 'Zweiersystem'); zu ihr gehört die Dezimalzahl  -#on("b")#  -  -      0 * 128 + 1 * 64 + 0 * 32 + 0 * 16 + 1 * 8 + 1 * 4 + 1 * 2 + 0 * 1 = 78.  -#off("b")# -  -     Mit Hilfe dieses Kommandos können Sie z.B. die Funktion des Codekarten -     lesers testen. Bei voller Beleuchtung aller 8 Sensoren muß das Bitmuster -     'IIIIIIII' geliefert werden. Decken Sie einige Sensoren mit den Fingern oder -     einer Lochkarte ab, so muß sich das Bitmuster auf dem Bildschirm ent -     sprechend verändern. Ist das nicht der Fall, so liegt ein Fehler vor.  -  -     Prüfen Sie dann erst einmal, ob der Steckplatz mit Strom versorgt wird (Netz -     kabel in der Steckdose? Compact-Box mit Netzteil richtig verbunden?) Ist dort -     alles in Ordnung, so könnte der Fehler noch in der Verbindung zum Adapter -     liegen. (Steckplatz ordnungsgemäß mit Adapter verbunden? Richtiges Kabel -     verwendet?)  -#page#  -     Sollten Sie auf diese Weise nicht zum Erfolg kommen, so verlassen Sie diesen -     Menupunkt und wählen noch einmal den Oberbegriff 'Eingabeart' an. Stellen -     Sie dort die Eingabeart zunächst auf 'Tastatur um' und dann wieder auf -     'Kartenleser'. Treten hier Fehlermeldungen auf, so lesen Sie in Kapitel 5.3 -     nach. Läßt sich die Umstellung dagegen problemlos vornehmen, so müßte nun -     auch das 'Bitmuster lesen' wieder funktionieren.  -  -  -#on("b")#5.5  Menufunktionen zum Oberbegriff 'Programme'#off("b")#  -  -#on("b")#  -+-------------------------------------------------------------------------+  -| WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv | -|---------------------+----------------------+----------------------------| -|                     |  n  Neu erstellen    |                            | -|                     |  a  Ansehen/Ändern   |                            | -|                     |  ------------------  |                            | -|                     |  s  Starten          |                            | -|                     |  w  Wiederholen      |                            | -|                     |  ------------------  |                            | -|                     |  v  Verzeichnis      |                            | -|                     |  ------------------  |                            | -|                     |  l  Löschen          |                            | -|                     |  d  Drucken          |                            | -|                     |  ------------------  |                            | -|                     |  k  Kopieren         |                            | -|                     |  u  Umbenennen       |                            | -|                     +----------------------+                            | -|-------------------------------------------------------------------------| -|   Info:<ESC><?>/<?> Wahl:<Pfeile> Ausführen:<RETURN> Verlassen:<ESC><q> |  -+-------------------------------------------------------------------------+ -#off("b")#  -  -#on("b")#n Neu erstellen#off("b")#  -  -     Mit dieser Funktion können Sie eine neue Programmdatei anlegen und -     beschreiben.  -  -     Sie werden zunächst nach einem Namen für die #on("b")#neue#off("b")# Programmdatei gefragt. -     Geben Sie einen beliebigen Namen (#on("b")#ohne Anführungszeichen (!)#off("b")#) ein und -#page#  -     schließen Sie die Eingabe durch <RETURN> ab. Daraufhin wird Ihnen auf -     dem Bildschirm eine neue Datei zum Beschreiben angeboten.  -  -     Sollte schon eine Programmdatei mit diesem Namen in der Task vorhanden -     sein, so werden Sie darauf aufmerksam gemacht.  -  -     Sie können sich während des Schreibens die wichtigsten Tastenfunktionen des -     Editors einblenden lassen. Tippen Sie dazu die Tastenfolge <ESC><?>. Es -     erscheint dann das folgende Angebot aus dem Sie auswählen können:  -  -#on("b")#                 -                +-----------------------------------------------------+ -                |             Der EUMEL - Editor                      | -                |                                                     | -                |      b ... Beschreibung desEditors                  | -                |      w ... Wichtige Tasten                          | -                |      p ... Positionieren der Schreibmarke           | -                |      k ... Korrigieren im Text (Einfügen/Löschen)   | -                |      m ... Markierte Textpassagen bearbeiten        | -                |      l ... Lernen im Editor                         | -                |      a ... Anweisungen im Editor (Kommandodialog)   | -                |                                                     | -                |      z ... Zurück in den Schreibmodus               | -                |                                                     | -                |      b   w   p   k   m   l   a   z                  | -                |                                                     | -                +-----------------------------------------------------+ -#off("b")#  -     Fehlerfälle:  -     -  Eine Programm-Datei mit dem vorgeschlagenen Namen existiert schon.  -  -  -#on("b")#a Ansehen/ändern#off("b")#  -  -     Mit dieser Funktion können Sie sich Dateien, die schon in Ihrer Task -     existieren, ansehen oder auch verändern.  -  -     Sie werden zunächst gefragt, ob Sie #on("b")#die zuletzt bearbeitete Programmdatei#off("b")# -     ansehen bzw. verändern möchten (sofern Sie schon vorher mit #on("b")#gs-Warenhaus#off("b")# -     in der Task gearbeitet haben).  -#page#  -     Bejahen Sie diese Frage, dann wird Ihnen diese Programmdatei zur Bear -     beitung angeboten. Verneinen Sie die Frage dagegen, so gelangen Sie in die -     'Auswahl' (d.h es werden Ihnen alle Programmdateien in der Task zur Auswahl -     angeboten). Nachdem Sie einen der Namen angekreuzt haben, wird Ihnen die -     ausgewählte Programmdatei zur Bearbeitung auf dem Bildschirm angeboten.  -  -     Fehlerfälle:  -     - In der Task existiert noch keine Programmdatei.  -  -  -#on("b")#s Starten#off("b")#  -  -     Mit dieser Menufunktion können Sie ein fertiggestelltes Programm übersetzen -     und ausführen lassen.  -  -     Sie werden zunächst gefragt, ob #on("b")#das zuletzt bearbeitete Programm#off("b")# ausgeführt -     werden soll. Bejahen Sie die Frage, so wird dieses Programm gestartet; ver -     neinen Sie die Frage dagegen, so gelangen Sie in die 'Auswahl'. Nach An -     kreuzen des gewünschten Programmnamens wird das ausgewählte Programm -     ausgeführt.  -  -     Sind im Programm noch Fehler enthalten, so werden das Programm und die -     Fehlermeldungen gleichzeitig auf dem Bildschirm dargestellt (Paralleleditor) -     und zur Korrektur angeboten. Für die Programmkorrektur stehen ebenfalls alle -     Editorfunktionen zur Verfügung.  -  -     Sollte Ihnen beim Programmieren ein Fehler unterlaufen sein (z.B. eine -     Endlosschleife), so kann mit der Tastenfolge <ESC><h> der Programm -     ablauf abgebrochen werden ("Notbremse").  -#page#  -#on("b")#w Wiederholen#off("b")#  -  -     Mit dieser Funktion können Sie den Ablauf des zuletzt ausgeführten -     Programms wiederholen, ohne daß das Programm neu übersetzt wird.  -  -     Beachten Sie aber bitte, daß Veränderungen am Programmtext, die seit dem -     letzten Programmlauf vorgenommen wurden, #on("b")#nicht#off("b")# berücksichtigt werden; -     dazu muß  das Programm erneut mit der Menufunktion 'Starten' übersetzt -     werden.  -  -     Ist die Wiederholung eines Programmlaufs nicht möglich, so erfolgt ein Hin -     weis darauf.  -  -  -#on("b")#v Verzeichnis#off("b")#  -  -     Mit dieser Funktion können Sie sich einen Überblick über die in Ihrer Task -     vorhandenen Programmdateien verschaffen.  -  -     Nach Aufruf dieser Funktion wird eine Liste der Programmdateien auf dem -     Bildschirm ausgegeben, die sich in Ihrer Task befinden. Da die Liste selbst -     eine Text-Datei ist, kann Sie mit der Tastenkombination <ESC><q> ver -     lassen werden - hierauf wird auch in der letzten Bildschirmzeile hingewiesen. -     Falls nicht alle Namen auf den Bildschirm passen, können Sie das Fenster mit -     <HOP><runter> und <HOP><hoch> verschieben.  -  -  -#on("b")#Löschen#off("b")#  -  -     Mit dieser Funktion können Sie Programmdateien, die Sie nicht mehr -     benötigen, die unnötig Platz belegen, löschen. Aber Vorsicht! Die Dateien -     verschwinden durch diese Funktion unwiederbringlich!  -  -     Nach Aufruf dieser Funktion werden Ihnen alle Programmdateien, die sich in -     Ihrer Task befinden, zur Auswahl angeboten. Hier können Sie die gewünschten -     Namen ankreuzen. Die Auswahl wird dann durch die Tastenfolge -     <ESC><q> verlassen.  -#page#  -     Für jede einzelne Programmdatei wird noch einmal zur Sicherheit gefragt, ob -     sie auch tatsächlich gelöscht werden soll. Zur Bestätigung tippen Sie bitte die -     Taste <j> ('ja') - zur Verhinderung <n> ('nein').  -  -     Fehlerfälle:  -     -  In der Task exsitiert noch keine Programmdatei  -  -  -#on("b")#d Drucken#off("b")#  -  -     Mit dieser Funktion können Sie Programmdateien über einen angeschlossenen -     Drucker ausgeben lassen.  -  -     Nach Aufruf dieser Funktion werden Ihnen alle Programmdateien, die sich in -     Ihrer Task befinden, zur Auswahl angeboten. Hier können Sie die gewünschten -     Namen ankreuzen. Die Auswahl wird dann durch die Tastenfolge -     <ESC><q> verlassen.  -  -     Die angekreuzten Programmdateien werden anschließend zum Drucker ge -     schickt. Der Vorgang wird auf dem Bildschirm protokolliert.  -  -     Fehlerfälle:  -     -  In der Task existiert noch keine Programmdatei.  -     -  Der Drucker ist nicht funktionsbereit.  -     -  Der Drucker wird nicht über die Task 'PRINTER' betrieben.  -     -  Auf Ihrem System werden die Druckkosten abgerechnet. Sie müssen sich -        mit einer Codenummer identifizieren.  -  -  -#on("b")#k Kopieren#off("b")#  -  -     Mit dieser Funktion können Sie sich eine Kopie einer bereits in der Task -     vorhandenen Programmdatei anlegen. Das ist z.B. dann sinnvoll, wenn Sie sich -     einen bestimmten 'Stand' aufbewahren wollen oder wenn Sie ein Programm -     schreiben wollen, das einem bereits vorhandenen ähnelt.  -#page#  -     Nach Aufruf dieser Funktion werden Ihnen alle Programmdateien, die sich in -     Ihrer Task befinden, zur Auswahl angeboten. Nach Ankreuzen eines Namens -     wird die Auswahl automatisch verlassen.  -  -     Anschließend wird der angekreuzte Name angezeigt und der Name für die -     Kopie erfragt. Es muß ein Name eingetragen werden, der in dieser Task noch -     nicht für eine Programmdatei vergeben wurde; ansonsten erfolgt ein Hinweis -     darauf und es wird nicht kopiert!  -  -     Da man aber oft für die Kopie einen ähnlichen Namen wie für das Original -     wählt, wird der 'alte' Name vorgeschlagen. Aus genannten Gründen muß er -     aber verändert werden. Sie können diesen Namen mit den üblichen Editier -     funktionen verändern oder mit <HOP><RUBOUT> löschen und ganz neu -     eingeben. Sie sparen aber eine Menge Tipparbeit, wenn Sie einen langen -     Namen nur an einer Stelle ändern wollen.  -  -     Fehlerfälle:  -     -  Eine Programmdatei mit dem gewünschten Namen existiert bereits in der -        Task.  -  -  -#on("b")#u Umbenennen#off("b")#  -  -     Mit dieser Funktion können Sie einer bereits vorhandenen Programmdatei -     einen neuen Namen geben.  -  -     Nach Aufruf dieser Funktion werden Ihnen alle Programmdateien, die sich in -     Ihrer Task befinden, zur Auswahl angeboten. Nach Ankreuzen eines Namens -     wird die Auswahl automatisch verlassen.  -  -     Anschließend wird dieser Name angezeigt und der zukünftige Name für die -     Programmdatei erfragt. Es muß ein Name eingetragen werden, der in dieser -     Task noch nicht für eine Programmdatei vergeben wurde - ansonsten erfolgt -     ein Hinweis darauf und die Programmdatei wird nicht umbenannt!  -#page#  -     Da man aber oft den 'neuen' Namen in Anlehnung an den 'alten' Namen -     wählt, wird der 'alte' Name vorgeschlagen. Aus genannten Gründen muß er -     aber verändert werden. Sie können diesen Namen mit den üblichen Editier -     funktionen verändern oder mit <HOP><RUBOUT> löschen und ganz neu -     eingeben. Sie sparen aber eine Menge Tipparbeit, wenn Sie einen langen -     Namen nur an einer Stelle ändern wollen.  -  -     Fehlerfälle:  -     -  Eine Programmdatei mit dem gewünschten Namen existiert bereits in der -        Task.  -  -  -  -#on("b")#5.6  Menufunktionen zum Oberbegriff 'Filialdaten'#off("b")#  -#on("b")#  -+-------------------------------------------------------------------------+ -| WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv | -|---------------------------------------+--------------------------+------| -|                                       |  e   Eintragen/ergänzen  |      | -|                                       |  z   Zusammenstellen     |      | -|                                       |  ----------------------- |      | -|                                       |  v   Verzeichnis         |      | -|                                       |  ----------------------- |      | -|                                       |  l   Löschen             |      | -|                                       |  u   Umbenennen          |      | -|                                       +--------------------------+      | -|                                                                         | -|                                                                         | -|-------------------------------------------------------------------------| -|    Info:<ESC><?>/<?> Wahl:<Pfeile> Ausführen:<RETURN> Verlassen:<ESC><q>| -+-------------------------------------------------------------------------+ - -#off("b")# -  -#on("b")#e Eintragen/ergänzen#off("b")#  -  -     Mit diesem Menupunkt können Sie Filialdaten-Dateien, die Sie z.B. von der -     Vatertask oder von der Diskette geholt haben, in Ihrer Task laden.  -#page#  -     Ihnen werden zunächst alle vorhandenen Filialdaten-Dateien zur Auswahl -     angeboten. Anschließend werden die angekreuzten Dateien in der Reihenfolge, -     in der sie angekreuzt wurden, zur Filialverwaltung geschickt und die Daten -     dort zu den bereits vorhandenen hinzugefügt. Gegebenenfalls wird auch die -     zentrale Kundendatei ergänzt. Der Vorgang wird auf dem Bildschirm -     protokolliert.  -  -     Beachten Sie bitte, daß in der Filiale etwa vorhandene Daten dadurch nicht -     überschrieben, sondern lediglich ergänzt werden. Ein gänzliches Beseitigen von -     alten Daten gelingt nur durch Löschen der Filialtask.  -  -     Fehlerfälle:  -     -  In der Task exsitieren noch keine Filialdaten-Dateien.  -  -  -#on("b")#z Zusammenstellen#off("b")#  -  -     Mit dieser Funktion können Sie eine Datei anlegen, in der die aktuell in der -     Filiale gehaltenen Daten zusammengestellt werden. Solch eine Datei kann man -     sich jedoch nicht ansehen!  -  -     Zunächst wird der Name der Datei erfragt, in die die Filialdaten geschrieben -     werden sollen. Danach werden darin die aktuellen Daten gespeichert und es -     wird eine 'Vollzugsmeldung' ausgegeben.  -  -     Die Daten können dann später mit Hilfe der Archiv-Funktionen (vgl. Kapitel -     5.7) z.B. auf einer Diskette gespeichert werden, damit Sie beim eventuellen -     Löschen der Filialtask nicht verlorengehen. Eine Verwechselung mit -     Programmdateien ist nicht möglich, da Namen für Filialdaten-Dateien (intern) -     automatisch mit dem Präfix 'Filialdaten:' versehen werden.  -  -     Fehlerfälle:  -     -  Eine Filialdaten-Datei mit dem gewünschten Namen existiert bereits in der -        Task.  -#page#  -#on("b")#v Verzeichnis#off("b")#  -  -     Mit dieser Funktion können Sie sich einen Überblick über die in Ihrer Task -     vorhandenen Filialdaten-Dateien verschaffen.  -  -     Nach Aufruf dieser Funktion wird eine Liste der Filialdaten-Dateien auf dem -     Bildschirm ausgegeben, die sich in Ihrer Task befinden. Da die Liste eine -     Text-Datei ist, kann Sie mit der Tastenkombination <ESC><q> verlassen -     werden - hierauf wird auch in der letzten Bildschirmzeile hingewiesen. Falls -     nicht alle Namen auf den Bildschirm passen, können Sie das Fenster mit -     <HOP><runter> und <HOP><hoch> verschieben.  -  -  -#on("b")#l Löschen#off("b")#  -  -     Mit dieser Funktion können Sie Filialdaten-Dateien, die Sie nicht mehr -     benötigen und die unnötig Platz belegen, löschen. Aber Vorsicht! Die Dateien -     verschwinden durch diese Funktion unwiederbringlich!  -  -     Nach Aufruf dieser Funktion werden Ihnen alle Filialdaten-Dateien, die sich in -     Ihrer Task befinden, zur Auswahl angeboten. Hier können Sie die gewünschten -     Namen ankreuzen. Die Auswahl wird dann durch die Tastenfolge -     <ESC><q> verlassen.  -  -     Für jede einzelne Datei wird nachgefragt, ob sie auch tatsächlich gelöscht -     werden soll. Zur Bestätigung tippen Sie bitte die Taste <j> ('ja') - zur Ver -     hinderung <n> ('nein').  -  -     Fehlerfälle:  -     -  In der Task exsitiert noch keine Filialdaten-Datei.  -#page#  -#on("b")#u Umbenennen#off("b")#  -  -     Mit dieser Funktion können Sie einer bereits vorhandenen Filialdaten-Datei -     einen neuen Namen geben.  -  -     Nach Aufruf dieser Funktion werden Ihnen alle Filialdaten-Dateien, die sich in -     Ihrer Task befinden, zur Auswahl angeboten. Nach Ankreuzen eines Namens -     wird die Auswahl automatisch verlassen.  -  -     Anschließend wird dieser Name angezeigt und der zukünftige Name für die -     Datei erfragt. Es muß ein Name eingetragen werden, der in dieser Task noch -     nicht für eine Filialdaten-Datei vergeben wurde - ansonsten erfolgt ein Hinweis -     darauf und die Datei wird nicht umbenannt!  -  -     Da man aber oft den 'neuen' Namen in Anlehnung an den 'alten' Namen -     wählt, wird der 'alte' Name vorgeschlagen. Aus genannten Gründen muß er -     aber verändert werden. Sie können diesen Namen mit den üblichen Editier -     funktionen verändern oder mit <HOP><RUBOUT> löschen und ganz neu -     eingeben. Sie sparen aber eine Menge Tipparbeit, wenn Sie einen langen -     Namen nur an einer Stelle ändern wollen.  -  -     Fehlerfälle:  -     -  Eine Filialdaten-Datei mit dem gewünschten Namen existiert bereits in der -        Task.  -#page#  -#on("b")#5.7  Menufunktionen zum Oberbegriff 'Archiv'#off("b")#  -#on("b")#  -+--------------------------------------------------------------------------+ -| WARENHAUS:  Info  Eingabeart  Kommandos  Programme  Filialdaten  Archiv  | -|---------------------------------------------+------------------------+---| -|                                             |  r  Reservieren        |   | -|                                             |  -  Neue Diskette      |   | -|                                             |  --------------------  |   | -|                                             |  -  Schreiben          |   | -|                                             |  -  Checken            |   | -|                                             |  -  Kombination        |   | -|                                             |  -  Holen/Lesen        |   | -|                                             |  -  Löschen            |   | -|                                             |  --------------------  |   | -|                                             |  -  Verzeichnis        |   | -|                                             |  -  Drucken            |   | -|                                             |  --------------------  |   | -|      +-----------------------+              |  i  Initialisieren     |   | -|      |  Dateiaustausch mit:  |              |  z  Zieltask einstellen|   | -|      |   Archiv              |              +------------------------+   | -|      |  Archivname:          |                                           | -|      |   gs-Warenhaus        |                                           | -|      +-----------------------+                                           | -|--------------------------------------------------------------------------| -|    Info:<ESC><?>/<?> Wahl:<Pfeile> Ausführen:<RETURN> Verlassen:<ESC><q> | -+--------------------------------------------------------------------------+ -#off("b")#  -  -In diesem Kapitel werden alle die Menufunktionen beschrieben, die Ihnen unter dem -Oberbegriff 'Archiv' im Menu angeboten werden. Mit den Funktionen in diesem Menu -können Sie aber nicht nur Dateien auf dem Archiv behandeln, sondern auch in -anderen Tasks im Multi-User-System oder über das EUMEL-Netz sogar auf anderen -Rechnern!  -  -Wenn Sie dieses Pull-Down-Menu gerade aufgeschlagen haben, sind nicht alle -Funktionen aktivierbar! Um weitere Funktionen zu aktivieren, muß erst einer der -aktivierbaren Menupunkte gewählt werden.  -  -Bei der Archivbehandlung werden Ihnen jeweils alle in der Task vorhandenen Dateien -zur Auswahl angeboten. Das System unterscheidet nicht von sich aus - wie unter den -#page#  -Oberbegriffen 'Programme' und 'Filialdaten' - zwischen Programm- und Filial -daten-Dateien. In den hier gezeigten Listen können Sie aber Filialdaten-Dateien -daran erkennen, daß ihnen das Präfix 'Filialdaten:' vorangestellt ist.  -  -  -#on("b")#r Reservieren#off("b")# (des Archivlaufwerks)  -  -     Im EUMEL-Multi-User-System haben normalerweise mehrere Personen das -     Zugriffsrecht auf das Archivlaufwerk. Allerdings muß der Zugriff so geregelt -     werden, daß sich die Beteiligten dabei nicht gegenseitig "in die Quere -     kommen". Ein Zugriff auf das Archivlaufwerk erfordert zunächst eine An -     meldung. Ist diese Anmeldung erfolgt, kann von den anderen Beteiligten so -     lange nicht mehr auf das Laufwerk zugegriffen werden, bis es wieder freige -     geben worden ist.  -  -     Diese Anmeldung des Archivlaufwerkes erfolgt über die Menufunktion 'r Reser -     vieren'. Greift bereits eine andere Task auf das Laufwerk zu, so erhalten Sie -     darüber einen Hinweis auf dem Bildschirm. Ansonsten wird an Sie die Frage -     gestellt, ob die Diskette eingelegt und das Laufwerk geschlossen ist.  -  -     Erst zu diesem Zeitpunkt ist sichergestellt, daß Sie den alleinigen Zugriff auf -     das Laufwerk haben. Deshalb sollten Sie, wenn Sie mit mehreren Personen am -     Computer arbeiten, erst zum Zeitpunkt der Fragestellung die Diskette ins Lauf -     werk einlegen.  -  -     Nachdem Sie die Diskette eingelegt und die Frage bejaht haben, ermittelt das -     System selbständig den Namen der eingelegten Diskette, zeigt den Namen auf -     dem Bildschirm (im kleinen Kasten links unten) an und aktiviert die anderen -     Menupunkte des Pull-Down-Menus.  -  -     Beim Verlassen des Pull-Down-Menus, wenn eine andere Zieltask eingestellt -     wird oder wenn das Menu gänzlich verlassen wird, wird die Reservierung -     automatisch aufgehoben!  -#page#  -     Fehlerfälle:  -     -  Das Laufwerk ist von einer anderen Task belegt.  -     -  Die Diskette ist falsch eingelegt oder das Laufwerk ist nicht richtig ge -        schlossen.  -     -  Die Diskette ist nicht formatiert bzw. initialisiert.  -     -  Die Diskette kann nicht gelesen werden (keine EUMEL-Diskette, Diskette -        hat ein falsches Format, Diskette ist verschmutzt...).  -  -  -#on("b")#n Neue Diskette#off("b")# (anmelden)  -  -     Der Dateiaustausch mit einer Diskette ist nur dann möglich, wenn der im -     System eingestellte Diskettenname (auf dem Bildschirm im kleinen Kasten -     unten links sichtbar) mit dem tatsächlichen Namen der Diskette überein -     stimmt. Nach einem Diskettenwechsel ist das aber in der Regel nicht mehr der -     Fall. Greift man dann auf die neu eingelegte Diskette zu, so erscheint die -     Fehlermeldung: 'Falscher Archivname! Bitte neue Diskette anmelden!'.  -  -     Das Anmelden einer neuen Diskette - ohne einen neuen Reservierungsvorgang -     - wird durch diese Menufunktion ermöglicht. Nach Aktivieren dieses Menu -     punktes wird der Name der eingelegten Diskette ermittelt, im System eingestellt -     und auf dem Bildschirm angezeigt.  -  -     Im Gegensatz zur Menufunktion 'r Reservieren' greift das System ohne Anfrage -     an den Benutzer auf das Archivlaufwerk zu (die Reservierung bleibt ja be -     stehen). Ist das Archivlaufwerk reserviert, so ist die Neuanmeldung einer Dis -     kette über diese Menufunktion weniger zeitaufwendig.  -  -     Fehlerfälle:  -     -  wie unter 'r Reservieren'.  -#page#  -#on("b")#s Schreiben#off("b")# (Kopieren)  -  -     Alle Dateien der eigenen Task werden zur Auswahl angeboten. Wenn Sie die -     Auswahl durch die Tastenfolge <ESC><q> verlassen, überprüft das System -     zunächst, ob die Dateien in der eingestellten Zieltask schon vorhanden sind. Ist -     das der Fall, wird erfragt, ob die dort vorhandenen Dateien überschrieben, d.h. -     gelöscht werden dürfen (s.u.). Anschließend werden alle angekreuzten Dateien -     in der Reihenfolge, in der Sie sie angekreuzt haben, in die eingestellte Zieltask -     kopiert. Der Vorgang wird auf dem Bildschirm protokolliert. Die Original -     dateien in der eigenen Task bleiben dabei erhalten.  -  -     Wenn in der Zieltask schon eine Datei existiert, die den gleichen Namen hat -     wie eine Datei, die Sie dorthin kopieren möchten, so wird angefragt, ob die -     vorher schon existierende Datei überschrieben (gelöscht!) werden soll. Bejahen -     Sie diese Frage, so wird die bereits in der Zieltask existierende Datei (un -     wiederbringlich) gelöscht und die gewünschte Datei dorthin transportiert. Ein -     Überschreiben aus Versehen ist nicht möglich, wenn Sie die an Sie gestellte -     Frage sorgfältig beantworten.  -  -     Verneinen Sie die Frage, so wird die Datei auch nicht hinübertransportiert! Sie -     können die Datei aber umbenennen (Menufunktion 'u Umbenennen' unter -     den Oberbegriffen 'Programme' bzw. 'Filialdaten') und anschließend mit -     anderem Namen hinüberschreiben.  -  -     Beachten Sie, daß beim Überschreiben einer Datei auf einer Archivdiskette der -     Speicherplatz der alten (überschriebenen) Version im allgemeinen nicht -     wiederverwendet werden kann. In einem solchen Fall könnte die Diskette voll -     geschrieben werden, obwohl eigentlich genügend Platz vorhanden wäre. Zur -     Optimierung wird deshalb zuerst überprüft, ob die angekreuzten Dateien -     schon in der Zieltask vorhanden sind und löscht diese, wenn Sie Ihr Einver -     ständnis geben. Erst anschließend werden die Dateien insgesamt kopiert.  -#page#  -     Normalerweise ist als Zieltask das Archivlaufwerk der eigenen Station einge -     stellt. Mit der Menufunktion 'z Zieltask einstellen' kann diese Einstellung aber -     verändert werden.  -  -     Fehlerfälle:  -     -  Die Diskette ist falsch eingelegt oder beschädigt.  -     -  Die Diskette kann nicht beschrieben werden (Schreibfehler).  -     -  Die Diskette ist voll.  -     -  Sehen Sie auch unter  'r Reservieren'  -                              'z Zieltask einstellen'.  -  -  -#on("b")#c Checken#off("b")#  -  -     Diese Menufunktion kann nur ausgeführt werden, wenn der Dateiaustausch -     mit einem Archiv(manager) erfolgt - ansonsten ist diese Menufunktion auch -     nicht aktivierbar. Die Menufunktion dient dazu, auf Diskette geschriebene -     Dateien auf Lesefehler hin zu prüfen. Es empfiehlt sich, diese Prüfroutine auf -     neu auf die Diskette geschriebene Dateien anzuwenden. Sehen Sie dazu auch -     'k Kombination'.  -  -     Alle Dateien der eingestellten Zieltask (Archiv) werden zur Auswahl angeboten. -     Wenn Sie die Auswahl durch die Tastenfolge <ESC><q> verlassen, werden -     alle angekreuzten Dateien in der Reihenfolge, in der Sie sie angekreuzt haben, -     "gecheckt", d.h. auf Lesefehler hin überprüft. Der Vorgang wird auf dem Bild -     schirm protokolliert.  -  -     Fehlerfälle:  -     -  Lesefehler auf dem Archiv.  -     -  Sehen Sie auch unter  'r Reservieren'.  -#page#  -#on("b")#k Kombination#off("b")#  -  -     Diese Menufunktion ist eine Kombination aus den beiden Menufunktionen 's -     Schreiben' und 'c Checken' (Sehen Sie weitere Informationen auch dort!).  -  -     Alle Dateien der eigenen Task werden zur Auswahl angeboten. Wenn Sie die -     Auswahl durch die Tastenfolge <ESC><q> verlassen, werden alle ange -     kreuzten Dateien in der Reihenfolge, in der Sie sie angekreuzt haben, in die -     eingestellte Zieltask kopiert (gegebenenfalls müssen bereits vorhandene -     Dateien gleichen Namens in der Zieltask gelöscht werden). Anschließend -     werden alle Dateien, die gerade geschrieben wurden, gecheckt, d.h. auf Lese -     fehler hin untersucht. Beide Vorgänge werden auf dem Bildschirm -     protokolliert.  -  -     Da die 'Check' - Operation nur bei Archivmanagern zulässig ist, ist diese Menu -     funktionen ebenfalls nur bei Archivmanagern aktivierbar. Zur Erläuterung -     sehen Sie bitte auch unter 'z Zieltask einstellen'.  -  -  -#on("b")#h Holen/Lesen#off("b")#  -  -     Die Menufunktion dient dazu, Dateien, die bereits auf einer Archivdiskette oder -     in einer anderen Task existieren, in die eigene Task zu kopieren.  -  -     Alle Dateien der eingestellten Zieltask werden zur Auswahl angeboten. An -     schließend werden Kopien der angekreuzten Dateien in der Reihenfolge des -     Ankreuzens in die eigene Task geholt. Das Original in der Zieltask bleibt dabei -     unverändert! Der Vorgang wird auf dem Bildschirm protokolliert.  -  -     Sind in der eigenen Task schon Dateien mit gleichem Namen vorhanden, so -     wird gefragt, ob die 'alten' Dateien überschrieben (gelöscht) werden dürfen. -     Nur wenn Sie zustimmen, werden die in Ihrer Task existierenden Dateien -     (unwiederbringlich!) gelöscht und Kopien der gleichnamigen Dateien aus der -     Zieltask angefertigt.  -#page#  -     Stimmen Sie dem Löschvorgang nicht zu, dann bleiben die bisherigen Dateien -     in Ihrer Task erhalten - die Dateien aus der Zieltask werden dann aber auch -     nicht in Ihre Task kopiert! Um dennoch die Kopien zu erhalten, können Sie die -     namensgleichen Dateien in Ihrer Task umbenennen und dann erst die Dateien -     aus der anderen Task anfordern.  -  -     Normalerweise werden die Dateien vom Archiv der eigenen Station geholt. Mit -     dem Menupunkt 'z Zieltask einstellen' kann diese Einstellung verändert -     werden.  -  -     Fehlerfälle:  -     -  Lesefehler auf dem Archiv.  -     -  Sehen Sie auch unter  'r Reservieren'  -                              's Schreiben'  -                              'z Zieltask einstellen'.  -  -  -#on("b")#l Löschen#off("b")#  -  -     Die Menufunktion dient dazu, Dateien in der Zieltask (unwiederbringlich!) zu -     löschen. Dazu werden alle Dateien der eingestellten Zieltask zur Auswahl ange -     boten. Anschließend werden die angekreuzten Dateien in der Reihenfolge ihres -     Ankreuzens gelöscht. Zur Sicherheit muß noch einmal für jede einzelne Datei -     bestätigt werden, daß sie auch tatsächlich gelöscht werden soll.  -  -     Beachten Sie, daß beim Löschen einer Datei auf einer Archivdiskette der -     Speicherplatz im allgemeinen nicht wieder verwendet werden kann. In einem -     solchen Fall könnte die Diskette voll geschrieben werden, obwohl eigentlich -     genügend Platz vorhanden wäre. Diese Probleme treten bei anderen Tasks, die -     keine Archivmanager sind, nicht auf, da deren Speicherplatz intelligenter -     verwaltet wird.  -#page#  -     Normalerweise ist als Zieltask das Archiv der eigenen Station eingestellt. Mit -     dem Menupunkt 'z Zieltask einstellen' kann diese Einstellung verändert -     werden.  -  -     Fehlerfälle:  -     -  Sehen Sie auch unter  'r Reservieren'  -                              's Schreiben'  -                              'z Zieltask einstellen'.  -  -  -#on("b")#v Verzeichnis#off("b")#  -  -     Mit dieser Menufunktion können Sie sich einen Überblick über die in der -     Zieltask (z.B. auf dem Archiv) vorhandenen Dateien verschaffen.  -  -     Nach Aufruf der Funktion wird eine Liste der Dateien auf dem Bildschirm -     ausgegeben, die sich in der Zieltask (z.B. auf dem Archiv) befinden. Ist die -     Zieltask ein Archiv(manager), so wird auch angezeigt, wieviel Platz auf der -     Diskette belegt ist. Da die Liste selbst eine Datei ist, kann sie mit der Tasten -     kombination <ESC><q> verlassen werden. Falls nicht alle Dateinamen auf -     den Bildschirm passen, können Sie das Fenster mit <HOP><hoch> und -     <HOP><runter> verschieben.  -  -     Fehlerfälle:  -     -  Sehen Sie unter  'z Zieltask einstellen'.  -  -  -#on("b")#d Drucken#off("b")#  -  -     Das Verzeichnis der Dateien in der Zieltask, das man mit der Menufunktion 'v -     Verzeichnis' auf dem Bildschirm angezeigt bekommt, kann mit dieser Menu -     funktion ausgedruckt werden.  -#page#  -     Zur Sicherheit wird angefragt, ob wirklich ein solches Dateiverzeichnis der -     Zieltask gedruckt werden soll. Bejaht man die Frage, so wird ein Dateiver -     zeichnis erstellt und zum Drucker geschickt.  -  -     Fehlerfälle:  -     -  Der Drucker ist nicht funktionsbereit.  -     -  Der Drucker wird nicht über die Task 'PRINTER' betrieben.  -     -  Auf Ihrem System werden die Druckkosten abgerechnet. Sie müssen sich -        mit einer Codenummer identifizieren.  -  -  -#on("b")#i Initialisieren#off("b")#  -  -     Diese Menufunktion gestattet es, frische Disketten zu formatieren, zu initiali -     sieren bzw. beschriebene Disketten vollständig zu löschen und ggf. dabei -     umzubenennen. Bei Aufruf dieser Menufunktion wird - sofern noch nicht -     geschehen - das Archivlaufwerk automatisch reserviert.  -  -     Wenn Sie eine fabrikneue Diskette aus der Verpackung nehmen, müssen Sie -     diese zunächst #on("b")#formatieren#off("b")#. Dabei wird die Diskette auf ein festgelegtes -     physikalisches Format eingestellt. Ohne daß diese Operation vorausgegangen -     ist, kann eine Diskette weder beschrieben noch gelesen werden.  -  -     Prinzipiell braucht eine Diskette nur ein einziges Mal formatiert zu werden. Sie -     können Sie jedoch jederzeit wieder formatieren - z.B. wenn Sie Disketten -     haben, von denen Sie nicht genau wissen, für welche Zwecke sie zuvor ver -     wendet wurden.  -  -     Wenn Sie diese Menufunktion aktivieren, werden Sie so zunächst gefragt, ob Sie -     die Diskette auch formatieren wollen. Bejahen Sie die Frage, so werden Ihnen -     mehrere Formate zur Auswahl angeboten:  -#page#  -#on("b")#  -              +----------------------------------------+ -              |  Formatieren einer Diskette            | -              |                                        | -              |  Dies sind die möglichen Formate:      | -              |                                        | -              |       1 ....  40 Spur     -   360 KB   | -              |       2 ....  80 Spur     -   720 KB   | -              |       3 ....  5 1/4"      -   1,2 MB   | -              |       4 ....  3 1/2"      -   1,4 MB   | -              |       s ....  Standard    -   Format   | -              |                                        | -              |                                        | -              |                 1   2   3   4   s      | -              +----------------------------------------+  - -#off("b")#  -  -     Erkundigen Sie sich bei Ihrem Händler, welches Format Sie bei Ihrem Rechner -     und den von Ihnen verwendeten Disketten einstellen müssen. Manche Rechner -     unterstützen diese Operation innerhalb des EUMEL-Systems auch gar nicht, -     das Formatieren muß dann irgendwie anders außerhalb des EUMEL-Systems -     geschehen.  -  -     Wenn Sie die Formatierung abgeschlossen oder auch übersprungen haben, -     beginnt die eigentliche Initialisierung der Diskette. Dabei wird als erstes der -     Archivname auf die Diskette geschrieben. Alle alten Daten, die sich ggf. auf der -     Diskette befinden, werden bei diesem Vorgang unwiederbringlich (!) gelöscht.  -  -     Zur Sicherheit überprüft das System in jedem Falle, ob es sich um eine EUMEL -     - Diskette handelt, und erfragt Ihr Einverständnis, ob die Diskette wirklich -     initialisiert werden soll. Geben Sie hierzu Ihr Einverständnis, dann wird noch -     der (neue) Archivname erfragt. Hatte die Diskette schon einen Namen, dann -     wird dieser zum Überschreiben angeboten. Wollen Sie den alten Archivnamen -     beibehalten, so brauchen Sie nur die <RETURN>-Taste zu tippen, ansonsten -     können Sie den Namen auch zuvor verändern oder einen ganz neuen Namen -     hinschreiben. Anhand des ausgegebenen Namens können Sie auch über -     prüfen, ob Sie die richtige Diskette eingelegt haben.  -#page#  -     Das Initialisieren funktioniert natürlich nur, wenn Sie als Zieltask einen -     Archivmanager eingestellt haben - ansonsten ist diese Menufunktion gesperrt -     (nicht aktivierbar!).  -  -     Fehlerfälle:  -     -  Formatieren ist nicht auf dem System möglich.  -     -  Sehen Sie auch unter  'r Reservieren'  -                              'z Zieltask einstellen'.  -  -  -#on("b")#z Zieltask einstellen#off("b")#  -  -     Mit dieser Menufunktion können Sie festlegen, mit welcher Zieltask Sie -     kommunizieren, d.h. z.B. Dateien austauschen möchten. Normalerweise ist -     hier das Archiv am eigenen Rechner eingestellt. Das wird auch nach Auf -     klappen des Pull-Down-Menus im Kasten links unten angezeigt.  -  -     Diese Menufunktion kann im Unterricht z.B. dazu genutzt werden, um fertig -     gestellte Hausaufgaben in eine bestimmte Task zu schicken (Vatertask) oder -     um von dort z.B. vorgefertigte Programme und/oder Filialdaten-Dateien abzu -     holen.  -  -     Sie können aber auch eine andere Task einstellen (z.B. die Vatertask oder die -     Task 'PUBLIC'), um mit diesen Dateien auszutauschen oder um sich auch nur -     einen Überblick über die dort vorhandenen Dateien zu verschaffen. Wenn Sie -     mit Ihrem Rechner in ein EUMEL-Netz integriert sind, können Sie auch auf -     Tasks anderer Rechner zugreifen oder auch Disketten von Laufwerken anderer -     Rechner einlesen (z.B. wenn Sie Disketten anderer Formate haben, die von -     Ihrem Rechner nicht gelesen werden können).  -  -     Dabei werden zwei Anforderungen an die Zieltask gestellt: Sie muß existieren -     und bereit für den Dateiaustausch sein, d.h es muß eine Managertask sein, auf -     die Sie Zugriff haben. Versuchen Sie auf andere Tasks zuzugreifen, so erhalten -     Sie entsprechende (Fehler-)Meldungen.  -#page#  -     Zu beachten ist noch, daß es im EUMEL-System verschiedene Arten von -     Managertasks gibt - Archivmanager und normale Dateimanager. Der Unter -     schied besteht darin, daß ein Archivmanager vom Benutzer vor dem Zugriff -     reserviert werden muß - anschließend hat nur dieser Benutzer (bis zur Aufga -     be der Reservierung) ein Zugriffsrecht auf den Manager. Normale Datei -     manager können dagegen von mehreren Benutzern in beliebiger Reihenfolge -     angesprochen werden.  -  -     Ein Archivmanager kann auch auf bestimmte Diskettenformate spezialisert -     sein (z.B. auf das Lesen von DOS-Disketten). Manche Rechner haben auch -     mehrere Archivmanager für verschiedene Laufwerke etc. Durch Einstellen -     unterschiedlicher Archivmanager können Sie dann auf verschiedenen Lauf -     werken archivieren.  -  -     Nach Aktivieren dieses Menupunktes werden Ihnen die folgenden Alternativen -     angeboten:  -#on("b")#  -                    +-------------------------------------------+ -                    |     Dateiaustausch gewünscht mit:         | -                    |                                           | -                    |    a ...    Archiv (Eigene Station)       | -                    |                                           | -                    |    v ...   Vatertask                      | -                    |                                           | -                    |    p ...   'PUBLIC' (Eigene Station)      | -                    |                                           | -                    |    s ...   Sonstige Task                  | -                    |                                           | -                    |   Archiv   Vatertask   PUBLIC   Sonstige  | -                    +-------------------------------------------+ -#off("b")#  -  -     Da der Dateiaustausch mit dem Standardarchiv der eigenen Station (Task: -     'ARCHIVE'), mit der Vatertask und der Task 'PUBLIC' recht häufig in Anspruch -     genommen wird, sind diese drei Optionen unter den Alternativen direkt ange -     geben. Entscheiden Sie sich für eine dieser drei Tasks, so nimmt das System -     alle notwendigen Einstellungen vor. Möchten Sie dagegen in Kontakt mit einer -#page#  -     anderen Task treten, so wählen Sie die Alternative 's ... Sonstige Task'.  -     In diesem Falle haben Sie noch 3 Angaben zu machen:  -  -     -  Zunächst werden Sie nach dem Namen der Zieltask gefragt. Geben Sie den -        Namen der Zieltask - ohne Anführungsstriche (!) - ein und schließen Sie -        die Eingabe mit der <RETURN>-Taste ab. (Den ausgegebenen Namen der -        z.Z. eingestellten Task können Sie dabei verändern bzw. überschreiben.)  -  -     -  Dann wird die Nummer der Station im EUMEL-Netz erfragt, auf der sich -        die Zieltask befindet. Die Nummer Ihrer Station wird als Vorschlag ausge -        geben. Wollen Sie mit einer Task auf Ihrem Rechner kommunizieren, so -        brauchen Sie diesen Vorschlag nur durch Drücken der <RETURN>-Taste -        bestätigen - ansonsten tragen Sie zuvor die entsprechende Stationsnummer -        ein. Ist Ihr Rechner nicht in ein EUMEL-Netz integriert, so wird die -        Stationsnummer 0 (Null) ausgegeben. Bitte bestätigen Sie diese Stations -        nummer durch Tippen der <RETURN>-Taste.  -  -     -  Zum Abschluß müssen Sie noch angeben, ob die eingestellte Zieltask ein -        Archivmanager ist oder nicht.  -  -     Das System versucht dann den Kontakt herzustellen. Je nachdem, welche -     Einstellung Sie vorgenommen haben, sind bestimmte Funktionen innerhalb -     des Menus nicht aktivierbar. Das System läßt nur die Funktionen zu, die -     aufgrund Ihrer Einstellungen zulässig sind.  -  -     Im Kasten links unten auf dem Bildschirm wird jeweils angezeigt, welche -     Zieltask eingestellt ist. Erscheint in diesem Kasten auch ein Hinweis auf den -     Archivnamen, so haben Sie einen Archivmanager eingestellt. Ist dagegen vor -     dem Namen der Zieltask noch eine Zahl und ein Schrägstrich angegeben, so -     haben Sie eine Zieltask auf einem anderen Rechner eingestellt.  -  -     Bedenken Sie, daß Operationen mit Tasks auf anderen Stationen länger an -     dauern können - werden Sie nicht ungeduldig!  -#page#  -     Sie können die Einstellung der Zieltask jederzeit wieder verändern!  -  -     Fehlerfälle:  -     -  Die eingestellte Zieltask existiert nicht.  -     -  Die eingestellte Zieltask existiert zwar, ist aber nicht empfangsbereit, d.h. -        ein Zugriff von Ihrer Task aus ist nicht möglich!  -     -  Das Netz ist nicht funktionsbereit (Collector-Task fehlt).  -     -  Die Kommunikation war nicht erfolgreich.  -     -  Die gewünschte Operation kann mit der eingestellten Zieltask nicht ausge -        führt werden (Zieltask ist z.B. gar kein Archivmanager - Sie aber ver -        suchen, das Laufwerk zu reservieren).  -  - - - - - - - - diff --git a/doc/warenhaus/gs-Warenhaus-6 b/doc/warenhaus/gs-Warenhaus-6 deleted file mode 100644 index 3edf312..0000000 --- a/doc/warenhaus/gs-Warenhaus-6 +++ /dev/null @@ -1,589 +0,0 @@ -#limit (11.0)##pagelength (16.5)##block#                                    -#start (2.0,0.0)#  -#page (61)#  -#headodd#  -#center#gs-Warenhaus#right#%  -  -#end#  -#headeven#  -%#center#gs-Warenhaus -  -#end#  -#center#1  -  -#center##on("b")#6  Beschreibung der Programmierschnittstelle#off("b")#  -  -  -In allen GRIN-Projekten soll - zumindest als Erweiterung - der Aspekt des -"algorithmischen Problemlösens" mit in den Unterricht eingebracht werden. Deshalb -ist auch in dem Soester Programm zum Projekt WARENHAUS eine Programmier -schnittstelle realisiert, die es erlaubt, mit Hilfe eines eng begrenzten Befehlssatzes -kleine Programme zur Steuerung der Abläufe im Modell-Warenhaus zu schreiben.  -  -Wir haben lange überlegt, ob wir diese Programmierschnittstelle überhaupt nach -bilden sollten, weil wir der Meinung sind, daß beim Projekt WARENHAUS das -algorithmische Problemlösen, wenn überhaupt, nur eine sehr untergeordnete Rolle -spielt. Als Randproblematik kann man hier vielleicht untersuchen, wie die Menu- -Funktionen unter dem Oberbegriff 'Kommandos' (vgl. Kapitel 5.4) aufgebaut sind, -und man kann versuchen, diese in eigenen kleinen Programmen nach- oder umzu -bilden.  -  -Unser zweites Problem war, ob wir uns bei einer eventuellen Nachbildung der -Programmierschnittstelle auch wirklich streng an die Soester Vorgaben halten sollten, -auch wenn sie unseren Vorstellungen und Konzepten teilweise zuwiderlaufen. Eigent -lich sind wir der Meinung, daß uns mit der Programmiersprache ELAN bereits ein -ausgezeichnetes Hilfsmittel zur Verfügung steht, um auch in der Sekundarstufe I in -das algorithmische Problemlösen einzuführen. Gerade das Refinementkonzept - die -Methode der 'schrittweisen Verfeinerung' / der "Modularisierung im Kleinen" - -scheint uns besonders geeignet, typische Denkweisen des algorithmischen Problem -lösens offenzulegen. Lediglich die Konstruktion einer Zählschleife und den Umgang -mit den Fehlermeldungen des ELAN-Compilers halten wir bei Anfängern für etwas -problematisch.  -  -Wir haben uns deshalb entschlossen, Ihnen die Programmierschnittstelle in zwei -Versionen zur Verfügung zu stellen: In der 'ELAN-Version' können Sie in der üblichen -#page#  -ELAN-Umgebung programmieren; das bietet sich z.B. an, wenn Sie #on("b")#gs-Warenhaus#off("b")# -im Wahlpflichtbereich bzw. im Differenzierungsbereich 9/10 einsetzen möchten. Es -ist dann dort nicht nötig, erst eine neue, weniger komfortable "Programmiersprache" -zu erlernen.  -  -Für den GRIN-Bereich enthält #on("b")#gs-Warenhaus#off("b")# eine weitere Programmierebene -('GRIN-Version'), die an die Soester Vorgaben angelehnt ist, und die es erlaubt, die -dort benutzten Schreibweisen von Befehlen und Kontrollstrukturen zu übernehmen. -Allerdings haben wir dabei eine grundsätzliche Änderung bezüglich der Modularisie -rungsmöglichkeit von 'GRIN-Programmen' vorgenommen, auf die wir in Kapitel 6.1 -näher eingehen werden.  -  -Ein 'GRIN-Programm' wird bei der Ausführung des Menupunktes 's Starten' (vgl. -Kapitel 5.5) zunächst in ein ELAN-Programm übersetzt und dabei auf formale -Korrektheit überprüft. Werden keine Fehler festgestellt, so wird nun seinerseits das -ELAN-Programm vom Compiler übersetzt und anschließend ausgeführt. Als Benutzer -werden Sie dabei nicht mit Fehlermeldungen des Compilers konfrontiert, da der -#on("b")#gs-Warenhaus#off("b")#-Übersetzer vorher alle formalen Fehler abfängt und zum Korrigieren -anbietet.  -  -Sollte das System nach erfolgreicher Übersetzung und/oder Compilation bei der -Ausführung des Programms einen Fehler "bemerken" (z.B. falscher Aufruf eines -Befehles), so wird das Programm automatisch abgebrochen und die entsprechende -Fehlermeldung mit der Nummer der Programmzeile, in der der Fehler bemerkt -wurde, im unteren Teil des Bildschirmes in einem 'notebook' gezeigt. Im oberen Teil -wird das Programm zum Verbessern angeboten, wobei der Cursor am Anfang der -fehlerhaften Zeile steht (gilt auch für die 'ELAN-Version').  -  -In beiden Versionen der Programmierschnittstelle ist die Schreibweise der Befehle bis -auf die Groß- und Kleinschreibung identisch. Folgende Befehle stehen zu Verfügung:  -#page#  -      GRIN-Version      |       ELAN-Version  -------------------------+------------------------------ -  Artikelnummer lesen   |   artikelnummer lesen  -  Artikeldaten eingeben |   artikeldaten eingeben  -  Kundennummer lesen    |   kundennummer lesen  -  Kundendaten eingeben  |   kundendaten eingeben  -  neues Blatt           |   neues blatt  -  Rechnungskopf         |   rechnungskopf  -  Artikel kaufen        |   artikel kaufen  -  Abrechnung            |   abrechnung  -  Auskunft              |   auskunft  -  Bildschirm neu        |   bildschirm neu  -                        |   nachbestellen  -                        |   dezimalwert lesen  -                        |   bitmuster lesen  -                        | -  -  -Die drei letzten Befehle der ELAN-Version haben wir in den GRIN-Befehlssatz nicht -mit aufgenommen, weil wir hier den Befehlssatz möglichst klein (und damit über -sichtlich) halten wollten und diese Befehle bereits unter dem Oberbegriff -'Kommandos' als Menu-Funktionen zur Verfügung stehen. (Ebenso könnte man bei -dem Befehl 'Auskunft' argumentieren. Die entsprechende Menu-Funktion 'Auskunft -einholen' liefert bei jeder Anwahl jedoch immer nur #on("b")#eine#off("b")# Auskunft; in einem -Programm kann man nun die Ausgabe mehrerer Auskünfte hintereinander -realisieren.)  -  -Die genaue Wirkung der Befehle werden wir in Kapitel 6.3 noch detailliert -beschreiben. Sie entsprechen im wesentlichen den Soester Befehlen, die im -WARENHAUS-Begleitheft des LSW (siehe Anhang) auf den Seiten 99/100 aufgelistet -sind. (Die anderen dort zu findenden Befehle gehören eigentlich nicht in die Befehls -liste der Programmierschnittstelle, weil sie nicht von Programmen aus sondern nur in -einem 'Direktbefehgs-Modus' als Kommando aufrufbar sind! Diese Befehle sind auch -#page#  -#on("b")#keine#off("b")# Programmierbefehle im eigentlichen Sinne, sondern entweder "Macros" zum -"Handling" des Warenhausmodells oder Systemkommandos. #on("b")#gs-Warenhaus#off("b")# stellt -diese Befehle unter ähnlichen Namen als Menu-Funktionen zur Verfügung.)  -  -  -  -#on("b")#6.1  Schreibweisen und Syntaxregeln in GRIN-Programmen#off("b")#  -  -Die Regeln, die beim Schreiben eines ELAN-Programms zu beachten sind, werden im -EUMEL/ELAN-Benutzerhandbuch beschrieben; wir werden uns daher hier auf die -GRIN-Version konzentrieren.  -  -Beginnen wir mit einem Beispiel aus dem WARENHAUS-Begleitheft des LSW. Dort -finden Sie auf Seite 70 (unten) das folgende Programm:  -  -#on("b")# -   PROGRAMM Rechnung schreiben  -     neues Blatt  -     Kundennummer lesen  -     WENN nicht Stoptaste gedrückt  -       Rechnungskopf  -       WIEDERHOLE  -         Artikelnummer lesen  -         WENN nicht Stoptaste gedrückt  -           Artikel kaufen  -         ENDE WENN  -       BIS Stoptaste gedrückt  -       Abrechnung  -     ENDE WENN  -   ENDE PROGRAMM #off("b")#  -  -Sie können dieses Programm ohne Änderungen übernehmen und starten, -#on("b")#gs-Warenhaus#off("b")# wird es ohne Beanstandungen ausführen. Bezüglich der Übersicht -lichkeit und des Programmierstils kann man hier sicher geteilter Meinung sein, -darauf gehen wir später noch ein.  -#page#  -Wir möchten Ihnen zunächst einige Regeln zur Schreibweise und Syntax in 'GRIN- -Programmen' aufzeigen, die sich im obigen Beispiel-Programm beobachten lassen:  -  --  In jeder Zeile darf nur #on("b")#ein#off("b")# Befehl stehen; Befehgs-Trennzeichen (wie etwa das -   Semikolon in ELAN) werden deshalb nicht verwendet. Leerzeichen können -   beliebig gesetzt werden, auch leere Zeilen sind zulässig, nicht jedoch -   Kommentare.  -  --  Das Arbeiten mit Variablen (gleich welcher Art) ist #on("b")#nicht#off("b")# möglich; alle Befehle -   sind datentypfrei.  -  --  Schlüsselworte für Kontrollstrukturen (wie z.B. WIEDERHOLE, WENN etc.) -   werden in GROSSBUCHSTABEN geschrieben, Ausführungsbefehle und -   Bedingungen hingegen klein und gemäß den Regeln der deutschen Sprache mit -   großem Anfangsbuchstaben bei Substantiven. Diese Festlegung bezüglich der -   Groß- und Kleinschreibung ist bei den von #on("b")#gs-Warenhaus#off("b")# zur Verfügung ge -   stellten Befehlen #on("b")#verbindlich#off("b")#, d.h. alle Warenhaus-#on("b")#Grund#off("b")#befehle und Kontroll -   strukturen müssen (bis auf Leerzeichen) genauso geschrieben werden, wie sie in -   den Kapiteln 6.2 und 6.3 vorgegeben werden! (In der Soester Software können -   dagegen Groß- und Kleinbuchstaben beliebig verwendet werden, sodaß dort z.B. -   neben 'neues Blatt' auch 'neues blatt', "NEueS BlaTT" u.ä. als identisch ange -   sehen werden.)  -  --  Jedes 'GRIN-Programm' beginnt mit dem 'Schlüsselwort' <PROGRAMM>, -   gefolgt von einem Programmnamen, der beliebig gewählt werden kann, jedoch -   noch in diese Zeile passen muß. Sinnvoll ist es, hier z.B. den Namen der -   Programmdatei einzutragen.  -  --  Jedes 'GRIN-Programm' endet mit der Zeile <ENDE PROGRAMM>. Nach dieser -   Zeile dürfen nur noch leere Zeilen folgen, es sei denn zwischen <PROGRAMM -   Programmname> und <ENDE PROGRAMM> wurden Befehle benutzt, die -   nicht zum Warenhaus-Grundbefehlssatz gehören. Solche Befehle müssen in einer -   'Befehlserklärung' nach Programmende definiert werden.  -#page#  -Das obige Programm befriedigt vom äußeren Erscheinungbild her einen PASCAL- -Programmierer wahrscheinlich völlig, einen ELAN-Verwöhnten jedoch sicher nicht. -Die Soester WARENHAUS-Software bietet keinerlei Möglichkeit der Modularisierung -#on("b")#innerhalb#off("b")# eines Programms (Refinement-/Prozedurkonzept o.ä.). Es gibt dort nur die -Möglichkeit, fertiggestellte Programme unter dem Programmnamen dem Basis -befehlssatz "hinzuzufügen" - ein Vorgang, der dem Insertieren unter EUMEL/ELAN -ähnelt. Obwohl es unter EUMEL/ELAN ein leichtes gewesen wäre, diese Möglichkeit -ebenfalls zu realisieren, haben wir davon Abstand genommen, weil auf diese Weise an -jedem Arbeitsplatz eine "eigene" Programmierumgebung entstehen würde. Wir sind -der Meinung, daß für Schüler der Sekundarstufe I eine #on("b")#feste Modellumgebung als -Basis#off("b")# vorhanden sein muß. Außerdem erscheint uns bei der Programmierung "im -Kleinen" die "Bottom-Up"-Technik  unangemessen und für den Anfänger viel zu -unübersichtlich zu sein; viel eher wäre hier die "Top-Down"-Methode angebracht. Wir -haben daher die Programmierumgebung in anderer Richtung erweitert und eine -Modularisierungsmöglichkeit realisiert, die dem Refinementkonzept nachempfunden -ist und damit unseren didaktisch-methodischen Vorstellungen viel eher entspricht.  -  -Bei #on("b")#gs-Warenhaus#off("b")# werden etwa benutzte 'eigene' Befehle #on("b")#innerhalb derselben#off("b")# -Programmdatei 'erklärt' und zwar #on("b")#nach#off("b")# dem Ende des eigentlichen 'Haupt -programms', d.h. also nach der Zeile <ENDE PROGRAMM>. Mit Hilfe dieser Mög -lichkeit könnte das obige Programm besser strukturiert etwa so aussehen:  -  -#on("b")# -   PROGRAMM Rechnung schreiben  -     neues Blatt  -     Kundennummer lesen  -     WENN nicht Stoptaste gedrückt  -       einkaufen mit Rechnung  -     ENDE WENN  -   ENDE PROGRAMM  -  -   einkaufen mit Rechnung:  -     Rechnungskopf  -     WIEDERHOLE  -       Artikelnummer lesen  -       Artikel eventuell kaufen  -     BIS Stoptaste gedrückt  -     Abrechnung  -#page#  -   Artikel eventuell kaufen:  -     WENN nicht Stoptaste gedrückt  -       Artikel kaufen  -     ENDE WENN  -#off("b")#  -  -  -Sie sehen, das Programm ist so zwar etwas länger, aber erheblich übersichtlicher -geworden. Für 'neue Befehle' und die zugehörigen 'Befehlserklärungen' gelten -folgende Grundsätze:  -  --  Die 'Befehlserklärungen' müssen #on("b")#nach#off("b")# <ENDE PROGRAMM> aufgelistet -   werden. Die Reihenfolge ist beliebig.  -  --  Eine 'Befehlserklärung' besteht aus dem zu erklärenden Befehl in (bis auf Leer -   zeichen) völlig identischer Schreibweise (!) und einem nachfolgenden Doppel -   punkt (:).  -  --  Ein 'neuer Befehl' darf alle möglichen Zeichen enthalten außer einem Doppel -   punkt (:). Außerdem darf solch ein Befehl #on("b")#nicht#off("b")# mit einem 'Schlüsselwort' -   beginnen (vgl. Kapitel 6.2).  -  --  In 'Befehlserklärungen' können neben den Grundbefehlen auch wieder 'neue -   Befehle' benutzt werden, die dann wiederum erklärt werden müssen.  -  --  Befehle dürfen nur #on("b")#einmal#off("b")# erklärt werden, auch wenn sie mehrfach benutzt -   werden.  -  --  Es dürfen nur Befehle erklärt werden, die irgendwo auch wirklich benutzt -   werden.  -  --  Befehlserklärungen sind nur möglich für #on("b")#Ausführungs-Befehle#off("b")#. Es lassen sich -   also z.B. keine neuen Bedingungen oder Kontrollstrukturen erklären!  -  --  Es dürfen innerhalb eines Programms maximal 20 verschiedene 'neue Befehle' -   verwendet werden. (Diese Grenze dürfte in Warenhaus-Programmen kaum ein -   mal erreicht werden!)  -#page#  -Formale Verstöße gegen diese Regeln werden bei dem Übersetzungsvorgang sofort -beim Auftauchen des ersten Fehlers zur Korrektur angeboten. Dabei wird in der -oberen Bildschirmhälfte das Programm editiert, wobei der Cursor an den Anfang der -Zeile gesetzt wird, in der sich der (erste) Fehler befindet. In der unteren Bildschirm -hälfte wird über den Paralleleditor in einem 'notebook' die Art des Fehlers mit An -gabe der Zeilennummer genauer beschrieben.  -  -In der Regel wird hier nur auf #on("b")#einen#off("b")# (nämlich den ersten auftauchenden) Fehler -hingewiesen, so daß Sie das Programm evtl. mehrfach starten müssen, bis alle Fehler -erkannt und beseitigt sind. Manchmal tauchen im Fehler-'notebook' aber auch -mehrere Fehlermeldungen auf (z.B. wenn 'neue Befehle' nicht erklärt oder erklärte -Befehle nicht benutzt wurden). In Extremfällen kann es dabei dazu kommen, daß -nicht mehr das ganze Fehler-'notebook' auf dem Bildschirm sichtbar ist. In diesem -Fall können Sie mit der Tastenfolge <ESC><w> den Cursor zwischen den beiden -Bildschirmhälften hin- und herschalten und mit den Pfeiltasten evtl. nicht-sichtbare -Teile des 'notebooks' oder der Programmdatei auf den Bildschirm holen. (Für -genauere Informationen über den Umgang mit dem EUMEL-Editor lesen Sie bitte im -EUMEL-Benutzerhandbuch nach.)  -  -  -#on("b")#6.2  Kontrollstrukturen#off("b")#  -  -Sowohl in ELAN-Programmen, als auch in GRIN-Programmen werden Kontroll -strukturen durch 'Schlüsselworte' gekennzeichnet, die grundsätzlich in -GROSSBUCHSTABEN geschrieben werden müssen, um sie deutlich gegenüber Aus -führungsbefehlen und Bedingungen abzuheben. In GRIN-Programmen gibt es -Schlüsselworte für den Anfang und das Ende eines Programms sowie für Schleifen -und einseitige Abfragen. Wir notieren hier nur die in GRIN-Programmen möglichen -Kontrollstrukturen und geben, wenn vorhanden, die zugehörige ELAN-Übersetzung in -Klammern an.  -  -  -#on("b")#Programm-Anfang/Ende:#off("b")#  -  -   #on("b")#PROGRAMM#off("b")# <Programmname>  -     <Anweisung 1>  -     <Anweisung 2>  -          .  -          .  -   #on("b")#ENDE PROGRAMM#off("b")#  -  -  -Jedes GRIN-(Haupt-)Programm beginnt mit dem Schlüsselwort 'PROGRAMM', gefolgt -von einem frei wählbaren Programmnamen, der jedoch in dieselbe Zeile passen -muß. Die Zeile 'ENDE PROGRAMM' zeigt das Ende eines GRIN-(Haupt-)Programms -an. Sowohl 'PROGRAMM', als auch 'ENDE PROGRAMM' dürfen in einer Programm -datei nur #on("b")#einmal#off("b")# verwendet werden. Entsprechende Schlüsselworte in ELAN- -Programmen gibt es nicht.  -  -  -#on("b")#Schleifen:#off("b")#  -  -Schleifen müssen innerhalb des Hauptprogramms oder der Befehlserklärung, in der -sie geöffnet werden, auch wieder geschlossen werden. Schachtelungen sind zwar -zulässig, sollten aber aus Gründen der Übersichtlichkeit vermieden werden. Soll -dennoch innerhalb einer Schleife eine weitere Schleife verwendet werden, so sollte die -innere Schleife über einen 'neuen Befehl' in eine Befehlserklärung 'ausgelagert' -werden. Folgende Schleifenarten sind möglich:  -  -a) Zählschleife:  -  -   #on("b")#WIEDERHOLE#off("b")# <n> #on("b")#MAL#off("b")#    (ELAN: INT VAR i;  -     <Anweisung 1>              FOR i FROM 1 UPTO n REPEAT  -     <Anweisung 2>                .  -          .                       .  -          .                       .  -   #on("b")#ENDE WIEDERHOLE#off("b")#              END REPEAT)  -  -  -Die Anweisungen innerhalb der Schleife werden <n> - mal ausgeführt.  -  -  -b) Schleife mit Ausgangsbedingung:  -  -  -   #on("b")#WIEDERHOLE#off("b")#            (ELAN: REPEAT  -     <Anweisung 1>                .  -     <Anweisung 2>                .  -          .                       .  -          .                       .  -   #on("b")#BIS#off("b")# <Bedingung>              UNTIL bedingung END REPEAT)  -  -  -Die Anweisungen innerhalb der Schleife werden mindestens einmal ausgeführt und -dann solange wiederholt, bis die Bedingung erfüllt ist. Bei der Programmierung ist -darauf zu achten, daß durch die Anweisungen die Bedingung erfüllt werden kann, -denn sonst ist das Resultat eine 'Endlosschleife', deren Ausführung nur durch einen -totalen Programmabbruch (<ESC><h>) beendet werden kann.  -  -  -c) Zählschleife mit Ausgangsbedingung:  -  -  -   #on("b")#WIEDERHOLE#off("b")# <n> #on("b")#MAL#off("b")#    (ELAN: INT VAR i;  -     <Anweisung 1>              FOR i FROM 1 UPTO n REPEAT  -     <Anweisung 2>                .  -          .                       .  -          .                       .  -   #on("b")#BIS#off("b")# <Bedingung>              UNTIL bedingung END REPEAT)  -  -  -Die Anweisungen innerhalb der Schleife werden <n>-mal ausgeführt. Im Gegensatz -zur reinen Zählschleife können die Wiederholungen jedoch vorzeitig abgebrochen -werden, nämlich dann, wenn nach irgendeinem Schleifendurchlauf die Bedingung -erfüllt ist.  -  -  -d) Endlosschleife:  -  -  -   #on("b")#WIEDERHOLE#off("b")#            (ELAN: REPEAT  -     <Anweisung 1>                .  -     <Anweisung 2>                .  -          .                       .  -          .                       .  -   #on("b")#ENDE WIEDERHOLE#off("b")#              END REPEAT)  -  -  -Die Anweisungen innerhalb der Schleife werden immer wieder ausgeführt. Da keine -begrenzte Anzahl von Durchläufen und auch keine Abbruchbedingung angegeben ist, -kann diese Schleife nur durch einen totalen Programmabbruch (<ESC><h>) -beendet werden.  -  -(Die Schleifenarten c) und d) sind in der Soester WARENHAUS-Software nicht vor - handen, ergaben sich bei der Konstruktion des #on("b")#gs-Warenhaus#off("b")#-Übersetzers wegen - der analogen Strukturen in ELAN jedoch quasi "von selbst", so daß wir sie auch - zugelassen haben. Schleifen mit Eingangsbedingung (ELAN: WHILE bedingung - REPEAT ... END REPEAT) sind für GRIN-Programme jedoch nicht realisiert.)  -  -  -#on("b")#Einseitige Abfragen:#off("b")#  -  -  -   #on("b")#WENN#off("b")# <Bedingung>      (ELAN: IF bedingung  -     <Anweisung 1>                 THEN anweisung 1;  -     <Anweisung 2>                      anweisung 2;  -          .                                 .  -          .                                 .  -   #on("b")#ENDE WENN#off("b")#                    END IF)  -  -  -Die Anweisungen werden nur ausgeführt, wenn die Bedingung erfüllt ist. (Eine Ent -sprechung zu der in ELAN möglichen 'zweiseitigen Abfrage' (IF ... THEN ... ELSE ... -END IF) gibt es in der GRIN-Version nicht!)  -  -Eine im Hauptprogramm oder in einer Befehlserklärung begonnene Abfrage ('WENN -...') muß auch im selben Programmteil wieder beendet werden. Ähnlich wie bei -Schleifen ist die Schachtelung von Abfragen innerhalb des Hauptprogramms oder -einer Befehlserklärung zwar zulässig, führt aber zu unübersichtlichen Programmen. -Auch hier sollte man innerhalb einer Abfrage eventuell notwendige weitere Abfragen -durch 'neue Befehle' in Befehlserklärungen auslagern.  -  -  -#on("b")#Zulässige Bedingungen:#off("b")#  -  -#on("b")#Stoptaste gedrückt#off("b")#    (ELAN: stoptaste gedrückt)  -  -   Die Bedingung ist erfüllt (d.h. liefert den Wert 'wahr'), wenn während des bis -   herigen Programmablaufs die Tastenfolge <ESC><q> getippt worden ist; -   sonst ist sie nicht erfüllt (Wahrheitswert 'falsch'). (Das Tippen von <ESC><q> -   beim Verlassen einer Datei hat jedoch #on("b")#keinen#off("b")# Einfluß auf den Wahrheitswert der -   Bedingung!)  -  -   Bei jeder Ausführung der Befehle 'Artikelnummer lesen', 'Kundennummer lesen' -   und 'Auskunft' wird der Wahrheitswert der Bedingung zunächst immer auf -   'falsch' gesetzt (siehe 6.3), so daß die Abfrage der Bedingung nach einem dieser -   Befehle nur dann 'wahr' liefert, wenn #on("b")#während#off("b")# oder #on("b")#nach#off("b")# der letztmaligen Aus -   führung eines der drei Befehle <ESC><q> getippt wurde; ein etwa vorher -   erfolgtes Tippen dieser Tastenfolge ist somit wirkungslos!  -  -  -#on("b")#nicht Stoptaste gedrückt#off("b")#    (ELAN: NOT stoptaste gedrückt)  -  -   Dieses ist das logische Gegenteil von 'Stoptaste gedrückt': 'nicht Stoptaste ge -   drückt' ist erfüllt, wenn 'Stoptaste gedrückt' #on("b")#nicht#off("b")# erfüllt ist und umgekehrt.  -  -Um Probleme bei der Arbeit mit Terminals zu vermeiden, die nicht über den -deutschen Zeichensatz verfügen (Umlaute!), ist bei beiden Bedingungen auch die -Schreibweise 'gedrueckt' erlaubt.  -  -  -  -#on("b")#6.3  Detailbeschreibung der Warenhaus-Grundbefehle#off("b")#  -  -Wie bereits in 6.1 erwähnt, ist die im folgenden vorgegebene Schreibweise der Grund -befehle bezüglich Groß- und Kleinschreibung verbindlich; Leerzeichen dagegen -können beliebig eingefügt oder auch weggelassen werden. Fett gedruckt steht immer -der GRIN-Befehl, in Klammern dahinter der zugehörige ELAN-Befehl.  -  -  -#on("b")#Artikelnummer lesen#off("b")#  (ELAN: artikelnummer lesen)  -  -  -  Der Wahrheitswert der Bedingung 'Stoptaste gedrückt' wird zunächst auf -     'falsch' gesetzt.  -  -  Der Benutzer wird aufgefordert, eine Artikelnummer einzugeben. Je nach -     Einstellung der 'Eingabeart' (vgl. Kapitel 5.3) erfolgt die Eingabe durch Ein -     tippen einer Zahl über die Tastatur oder durch Einschieben einer Warenkarte -     in das Lesegerät. Eingaben über die Tastatur sind mit <RETURN> abzu -     schließen. Akzeptiert werden nur Werte von 1 bis 15, ansonsten erfolgt eine -     Warnung, und die Eingabe wird wiederholt.  -  -  Durch Tippen der Tastenfolge <ESC><q> kann dieser Befehl abgebrochen -     werden, ohne daß eine Artikelnummer eingelesen wird. In diesem Falle wird -     der Wahrheitswert der Bedingung 'Stoptaste gedrückt' auf 'wahr' gesetzt, sonst -     bleibt der Wert auf 'falsch'.  -  -  Durch Tippen der Tastenfolge <ESC><h> wird die Ausführung des -     gesamten Programms abgebrochen.  -  -  -#on("b")#Artikeldaten eingeben#off("b")#  (ELAN: artikeldaten eingeben)  -  -  -  Der Befehl setzt voraus, daß zuvor eine Artikelnummer eingelesen wurde, -     ansonsten erfolgt eine entsprechende Fehlermeldung.  -  -  Die Angaben zu einem Artikel (Name, Preis, Mindestbestand, Bestand) können -     eingegeben bzw. verändert werden.  -  -  Alle Eingaben sind mit <RETURN> oder der Tastenfolge <ESC><q> -     abzuschließen. Durch <ESC><q> wird der Wahrheitswert der Bedingung -     'Stoptaste gedrückt' auf 'wahr' gesetzt.  -  -  Nach Abschluß der Eingaben werden die Artikeldaten in der Filial-Verwaltung -     gespeichert, worauf auch kurz hingewiesen wird.  -  -  Durch Tippen der Tastenfolge <ESC><h> während der Eingaben wird die -     Ausführung des gesamten Programms abgebrochen.  -  -  -#on("b")#Kundennummer lesen#off("b")#  (ELAN: kundennummer lesen)  -  -  -  Der Wahrheitswert der Bedingung 'Stoptaste gedrückt' wird zunächst auf -     'falsch' gesetzt.  -  -  Der Benutzer wird aufgefordert, eine Kundennummer einzugeben. Je nach -     Einstellung der 'Eingabeart' (vgl. Kapitel 5.3) erfolgt die Eingabe durch Ein -     tippen einer Zahl über die Tastatur oder durch Einschieben einer Kundenkarte -     in das Lesegerät. Eingaben über die Tastatur sind mit <RETURN> abzu -     schließen. Akzeptiert werden nur Werte von 129 bis 159, ansonsten erfolgt eine -     Warnung, und die Eingabe wird wiederholt.  -  -  Durch Tippen der Tastenfolge <ESC><q> kann dieser Befehl abgebrochen -     werden, ohne daß eine Kundennummer eingelesen wird. In diesem Falle wird -     der Wahrheitswert der Bedingung 'Stoptaste gedrückt' auf 'wahr' gesetzt, sonst -     bleibt der Wert auf 'falsch'.  -  -  Durch Tippen der Tastenfolge <ESC><h> wird die Ausführung des -     gesamten Programms abgebrochen.  -  -  -#on("b")#Kundendaten eingeben#off("b")#  (ELAN: kundendaten eingeben)  -  -  -  Der Befehl setzt voraus, daß zuvor eine Kundennummer eingelesen wurde, -     ansonsten erfolgt eine entsprechende Fehlermeldung.  -  -  Die Angaben zu einem Kunden (Name, Vorname, Geschlecht) können einge -     geben bzw. verändert werden.  -  -  Alle Eingaben sind mit <RETURN> oder der Tastenfolge <ESC><q> -     abzuschließen. Durch <ESC><q> wird der Wahrheitswert der Bedingung -     'Stoptaste gedrückt' auf 'wahr' gesetzt.  -  -  Nach Abschluß der Eingaben werden die Kundendaten sowohl in der Filial- -     Verwaltung als auch in der Zentrale gespeichert, worauf auch kurz hingewiesen -     wird.  -  -  Durch Tippen der Tastenfolge <ESC><h> während der Eingaben wird die -     Ausführung des gesamten Programms abgebrochen.  -  -  -#on("b")#neues Blatt#off("b")#  (ELAN: neues blatt)  -  -  -  Das Rechnungsfenster auf dem Bildschirm wird gelöscht.  -  -  Für die Ausgabe der nächsten Rechnung auf dem Drucker wird eine neue -     Rechnungsdatei bereitgestellt.  -  -  -#on("b")#Rechnungskopf#off("b")#  (ELAN: rechnungskopf)  -  -  -  Ein Rechnungskopf wird auf dem Bildschirm ausgegeben. Falls zuvor eine -     Kundenummer eingelesen worden ist, unter der bereits Kundendaten einge -     geben wurden, erscheint der Name des betreffenden Kunden im Rechnungs -     kopf.  -  -  Der Rechnungskopf wird für einen eventuellen späteren Ausdruck in die -     Rechnungsdatei geschrieben.  -  -  -#on("b")#Artikel kaufen#off("b")#  (ELAN: artikel kaufen)  -  -  -  Der Befehl setzt voraus, daß zuvor eine Artikelnummer eingelesen worden ist, -     ansonsten erfolgt eine entsprechende Fehlermeldung.  -  -  Artikelname und -preis werden auf den Bildschirm und in die Rechnungsdatei -     geschrieben.  -  -  Der Kauf wird intern in den entsprechenden Filial-Dateien registriert.  -  -  -#on("b")#Abrechnung#off("b")#  (ELAN: abrechnung)  -  -  -  Die Preise der gekauften Artikel werden addiert.  -  -  Die Summe wird auf dem Bildschirm angezeigt und in die Rechnungsdatei -     geschrieben.  -  -  Der Benutzer wird gefragt, ob die Rechnung ausgedruckt werden soll.  -  -  -#on("b")#Auskunft#off("b")#  (ELAN: auskunft)  -  -  -  Der Wahrheitswert der Bedingung 'Stoptaste gedrückt' wird zunächst auf -     'falsch' gesetzt.  -  -  Der Benutzer wird aufgefordert, eine Codenummer einzugeben. Je nach Ein -     stellung der 'Eingabeart' (vgl. Kapitel 5.3) erfolgt die Eingabe durch Eintippen -     einer Zahl über die Tastatur oder durch Einschieben einer Codekarte in das -     Lesegerät. Eingaben über die Tastatur sind mit <RETURN> abzuschließen. -     Akzeptiert werden nur zulässige Werte, ansonsten erfolgt eine Warnung, und -     die Eingabe wird wiederholt. Die Bedeutungen der einzelnen Auskunftscodes -     sind in Kapitel 5.4 unter der Menufunktion 'Auskunft einholen' beschrieben.  -  -  Durch Tippen der Tastenfolge <ESC><q> kann der Befehl abgebrochen -     werden, ohne daß eine Codenummer eingelesen wird. In diesem Falle wird der -     Wahrheitswert der Bedingung 'Stoptaste gedrückt' auf 'wahr' gesetzt, sonst -     bleibt der Wert auf 'falsch'.  -  -  Durch Tippen der Tastenfolge <ESC><h> wird die Ausführung des -     gesamten Programms abgebrochen.  -  -  -#on("b")#Bildschirm neu#off("b")#  (ELAN: bildschirm neu)  -  -  -  Der Programm-Eingangsbildschirm wird neu aufgebaut. Der Befehl wird -     benötigt, wenn die Fenstereinteilung auf dem Bildschirm wiederhergestellt -     werden soll (z.B. nach Ausgabe einer Liste bei dem Befehl 'Auskunft').  -  -  Der Befehl wird beim Starten eines GRIN-Programms automatisch ausgeführt; -     bei ELAN-Programmen wird er automatisch am Anfang eines jeden Programms -     eingefügt, wenn das Programm nicht mit diesem Befehl beginnt.  -  -  -Neben diesen Befehlen stehen für ELAN-Programme noch drei weitere zur Verfügung, -die nicht zum GRIN-Befehlssatz gehören:  -  -        nachbestellen,  -        dezimalwert lesen,  -        bitmuster lesen.  -  -Diese Befehle entsprechen in ihrer Wirkung den gleichnamigen Menufunktionen -unter dem Oberbegriff 'Kommandos', die in Kapitel 5.4 beschrieben sind.  -  -  - diff --git a/doc/warenhaus/gs-Warenhaus-7 b/doc/warenhaus/gs-Warenhaus-7 deleted file mode 100644 index 3a55dfe..0000000 --- a/doc/warenhaus/gs-Warenhaus-7 +++ /dev/null @@ -1,235 +0,0 @@ -#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 -      <ESC><q> 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 <n> 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 <j> 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!  -  - | 
