#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")#