TEXT INHALT TXT1234Ymba : Vorgang-Hilfe[ND0102 TXTJSoD KTOSPALTEN TXT[ND0102 TXTDTP CDLH KTOBR006 TXTLQT CMDDTP CML4deL KTO12 DATCADRESS TP x=0150BO . Erstellen eines Inhaltsverzeichnisses mit Kapitelnumern.. Es wird ein Inhaltsverzeichnis erstellt. Gleichzeitig k|nnen auch die. Kapitelnummern neu vergeben werden.. . Um eine Kapitel-]berschrift finden zu k|nnen, mu~ vor der ]berschrift ein. codiertes $-Zeichen im Text vorhanden sein. .   . Ausgangsposition f}r das Suchen nach den codierten $-Zeichen ist die . aktuelle Position. Die aktuelle Seite wird als Seite 1 angenommen.. . Wird ein $-Zeichen gefunden, wird die ganze Zeile abgespeichert und die . Seitennummer gemerkt. Wird ein $-Zeichen ohne nachfolgende Kapitelnummer. gefunden, wird diese Zeile, ohne eine Kapitelnummer einzuf}gen, abge-. speichert (kann f}r Folgezeilen einer Kapitel-]berschrift benutzt werden)..  . Sollen die Kapitelnummern auf den neuesten Stand gebracht werden, mu~ . hinter dem $-Zeichen die Form der Kapitelnummer vorhanden sein (z.B. 1.1).. Die Form der Kapitelnummer wird ermittelt und aus dem Text gel|scht. Die. neu erstellte Kapitelnummer wird dann in den Text eingef}gt. Der Inhalt. einer Kapitelnummer ist ohne Bedeutung, da die Kapitelnummer in jedem Fall. neu ermittelt wird. Ist hinter einem $-Zeichen keine Kapitelnummer vorhanden, . wird keine Bearbeitung der Kapitelnummer in dieser Zeile vorgenommen.. . Ist das Text-Ende erreicht, wird am Anfang des Textes eine neue Seite in. den Text eingef}gt. In diese Seite werden alle gefundenen Kapitel-]ber-. schriften mit den zugeh|rigen Seitennummern eingef}gt. Die Position der. Seitennummer hinter der Kapitel-]berschrift ermittelt sich aus der l{ngsten. Kapitel-]berschrift in diesem Text + 2.. . Es besteht auch die M|glichkeit, zwischen der Kapitel-]berschrift und der. Seitennumer in das Inhaltsverzeichnis Punkte einf}gen zu lassen.. .==============================================================================.----------------------------daten in Ad.Vorg <1>.!)VorgangDarstell-flag<1>.!)Flag, ob BS nach dem Aufruf eines . !)Vorgangs neu dargestellt werden mu~Txt.name<8>.!)Name des aktuellen Textes - .k}rzel <4>. - .schutz <1>. - .format <1>.  - .seitenummer.!)Nr der zuletzt bearbeiteten Seite - .seite-altnummer.!)Seitennummer von "POSIT" - .zeile-altnummer.!)Zeilennummer9- " - - .vschutz<1>.!)= 1, falls Text nicht ver{ndert. !) werden darfTxt-laufwerk<1>.!)Laufwerk (Texte)Verzeichnisdatei <14>.!)Textverzeichnis-Name (incl.Laufwerk)Datum.tag<2>.!)Daten aus der Hauptmaske - .monat<2>.!)  - .jahr<2>.!) 1K}rzel <4>.!)aktuelles K}rzelAbteilung<4>.!)aktuelle AbteilungMasken datei"MASKEN.TXT".)MaskendateiDatei datei<8>.!)Zuletzt benutzte DateiBhandb datei<12>.!)Aktuelles Baustein-Handbuch. Wird. !) auch mit ".txt" als Datei ge|ffnetSpeicherdatei"Spch ".)SpeicherdateiBenutzerdatei"BENUTZER". )Benutzerdatei Druck-Dateidatei"Druck".)Datei f}r alle Druck-ParameterDrucker zahl<2>.!)aktueller DruckerVerwalter<1>.!)zum K}rzel geh|rigTrennzonezahl<2>.S-toleranzzahl<2>.Start-flag<1>.!)definiert den Start-Verlauf. !)"1" und "2" -> TELETEX. !)"3" -> Menue. !)"4"1 -> Externer Anschluss. !)19 an TPS (zB. COBOL) Programm<12>.!)Name des Programms, in das gechained. !) werden soll.TTX-Zugang<1>.!)Zugangsberechtigung TTX-Anschlu~. !)"0"1darf alles. !)"1"1darf verschicken. !)"2"1darf gar nichtsBea-modus"N".!)Bearbeitungs-Modus.----------------------------programm Inhalt..  ------daten.Num1 nummer.Num2 nummer.Zch1 <1>. Kapitel <1>.!)** Kennzeichen, ob Kapitelnr vergebenPunkte <1>.!)** Kennzeichen, ob Punkte als LinieGefunden<1>.!)** Kennzeichen, ob ]berschrift gefundenTab-positnummer.!)** Spaltennummer der l{ngsten ZeileDatei datei<8>.!)** Enth{lt die Titel und SeitennummernEinf-seitezahl <4> 1 form ( /). )** Seite in Text einf}gen, rechtsb}ndigMarke #150.!)** Markierung einer Titel-Zeile (cod $) Kapitel-nr.(5)nummer.!)** Lfd. KapitelnummernZ{hler nummer.!)** Index f}r Kapitel-TabelleText-feldtext<14>.!)** Zum Erstellen der Kapitelnr.===========================================================================_anfang. wenn nicht Ad:Vorg : springe _anf-richtig. anzeigen fehler "Aufruf nur aus einem Text heraus". r}cksprung._anf-richtig. hilfe "nb". eingeben neu zeile 1 "Inhaltsverzeichnis erstellen (j/n)? "  Zch1 _ende.   gro~schreibung Zch1. vergleiche Zch1 mit "J" _progr-anfang. springe _ende..----------------------------------------------------------------------------.------ Frage, ob zus{tzlich auch die Kapitelnummern erneuert werden sollen.----------------------------------------------------------------------------_progr-anfang. eingeben neu zeile 1 "Auch die Kapitelnummern erneuern (j/n)? " Zch1 _ende. rufe kennz-setzen mit Kapitel. ** Setzen des Kapitel-Kennzeichens  .----------------------------------------------------------------------------.------ Frage, statt eines Tabs Punkte in das Inhaltsverzeichnis einf}gen.---------------------------------------------------------------------------- eingeben neu zeile 1 "Zwischen Kapitel-]berschrift und Seitennummer" " Punkte einf}gen (j/n)? " Zch1 _ende. rufe kennz-setzen mit Punkte.)** Setzen des Punkte-Kennzeichens hilfe " ". anzeigen neu zeile 1 "Das Inhaltsverzeichnis wird erstellt"..----------------------------------------------------------------------------.------ Hilfsdatei anlegen.---------------------------------------------------------------------------- s system Num1 Num2. bilde Text-feld = "Inhalt" Num1. setze Datei = Text-feld. d datei |ffnen Datei Num1 _datei-anlegen. d datei schlie~en. d datei l|schen Datei._datei-anlegen. d datei anlegen Datei Num1 _datei-fehler._reserviert. d datei reservieren Datei 3 _reserviert.  t unsichtbar..----------------------------------------------------------------------------.------ Suchen der Kapitel-]berschriften anhand eines codierten $-Zeichens.----------------------------------------------------------------------------_marke-suchen. wenn tr nicht = Marke : springe _zeilen-ende. setze Gefunden.!** Kennzeichen, ob Kapitel gefunden wurden wenn nicht Kapitel : springe _}berschrift. ** Keine Kapitelnummern  weiter tz bis zeichen "0123456789" _}berschrift. setze Z{hler = 1.!)** Z{hler der Kapitelnummern hole index Num1 von tz.!)** Position der Kapitelnummer.----------------------------------------------------------------------------.------ Form einer Kapitelnummer feststellen (z.B. ob 1.1 oder 1.1.1).----------------------------------------------------------------------------_punkt-such. wenn tr nicht numerisch : springe _kapitel-ende. ** Ende der Kap-nr.  wenn tr = "." : rechne Z{hler + 1.1** Dann neue Kapitelnummer weiter tz. springe _punkt-such..----------------------------------------------------------------------------.------ Alte Kapitelnummer aus dem Text l|schen.----------------------------------------------------------------------------_kapitel-ende. zur}ck tz bis index Num1.)** Anfangsposition der Kapitelnr t l|sche wort.!)** Kapitelnummer l|schen  wenn Z{hler > 5 : setze Z{hler = 5. ** Nur 5 Kapitelnummern m|glich rechne Kapitel-nr.(Z{hler) + 1.) ** Letzte Nummer um 1 erh|hen setze Num1 = 1. l|sche Text-feld.!)** Neue Kapitelnummer.----------------------------------------------------------------------------.------ Kapitelnummer neu erstellen.----------------------------------------------------------------------------_kapitel-nr. wenn Kapitel-nr.(Num1) = 0 : setze Kapitel-nr.(Num1) = 1.  bilde Text-feld + Kapitel-nr.(Num1).19** Kapitelnummer wenn Num1 = Z{hler : springe _kapitel-l|sch.9** Letzte Kapitel-nr rechne Num1 + 1.!)19** N{chste Kapitel-nr bilde Text-feld + ".".!)** Punkt zwischen 2 Kapitelnummern springe _kapitel-nr..----------------------------------------------------------------------------.------ Die in der Form nicht vorhandenen Kapitelnummern l|schen .----------------------------------------------------------------------------_kapitel-l|sch. setze Num1 = Z{hler.!)1** Letzte Kapitelnummer_l|sch-1. wenn Num1 = 5 : springe _kapitel-einf. 9** Maximal 5  rechne Num1 + 1.!)1** N{chstfolgende l|schen l|sche Kapitel-nr.(Num1). springe _l|sch-1..----------------------------------------------------------------------------.------ Neue Kapitelnummer in den Text einf}gen .----------------------------------------------------------------------------_kapitel-einf. bilde tz < Text-feld.!)** Kapitelnummer einf}gen.----------------------------------------------------------------------------.------ Kapitel-]berschrift mit Seitennummer in die Datei "Inhalt" schreiben.----------------------------------------------------------------------------_}berschrift. d ende datei. d einf}gen zeile tz.<1>.)** Ganze Kapitel-]berschrift  setze Text-feld = Einf-seite.)** Aktuelle Seitennummer d einf}gen zeile Text-feld. t ende zeile. t hole spaltennummer Num1. ** Festhalten der l{ngsten Zeile wenn Num1 > Tab-posit : setze Tab-posit = Num1..----------------------------------------------------------------------------.------ Neue Zeile.----------------------------------------------------------------------------_zeilen-ende. t n{chste zeile _text-ende _seiten-ende. springe _marke-suchen. .----------------------------------------------------------------------------.------ Neue Seite.----------------------------------------------------------------------------_seiten-ende. t tief seite _text-ende. rechne Einf-seite + 1. springe _marke-suchen..----------------------------------------------------------------------------.------ Ende des Textes.----------------------------------------------------------------------------_text-ende. wenn nicht Gefunden   : anzeigen fehler "Keine Kapitel}berschrift gefunden". : springe _datei-l|schen. d anfang datei..----------------------------------------------------------------------------.------ Neue Seite einf}gen.---------------------------------------------------------------------------- t positioniere seite 1. t anfang seite. t einf}gen seite. t hoch seite. rechne Tab-posit + 2.!** 2 Leerschritte zwischen ]berschr.und Seite .----------------------------------------------------------------------------.------ Inhaltsverzeichnis erstellen.----------------------------------------------------------------------------_zeile-einf}g. t zeilenschaltung.!)** Neue Zeile d lesen zeile tz _datei-ende.)** ]berschrift lesen d lesen zeile Text-feld _datei-ende.1** Seitennummer lesen setze Einf-seite = Text-feld.)** Seitennummer rechtsb}ndig einf}gen  setze direkt Zch1 = Tab-posit.)** Position der Seitennummer weiter tz bis ende.!)** Zeilenende.----------------------------------------------------------------------------.------ Wenn keine Punkte eingef}gt werden sollen, nur Tab einf}gen.---------------------------------------------------------------------------- wenn nicht Punkte : bilde tz < "$" Zch1 "$" Einf-seite.  : springe _zeile-einf}g. .----------------------------------------------------------------------------.------ Punkte zwischen ]berschrift und Seitennummer einf}gen.----------------------------------------------------------------------------_punkt-einf}g. t hole spaltennummer Num1. wenn Num1 = Tab-posit : springe _punkt-ende. bilde tz < ".". weiter tz. springe _punkt-einf}g._punkt-ende. bilde tz < Einf-seite. springe _zeile-einf}g. .----------------------------------------------------------------------------.------ Datei Ende.----------------------------------------------------------------------------_datei-ende. t sichtbar. t positioniere seite 1. t anfang seite..----------------------------------------------------------------------------.------ Hilfsdatei wieder l|schen.----------------------------------------------------------------------------_datei-l|schen. d datei freigeben.  d datei schlie~en. d datei l|schen Datei..----------------------------------------------------------------------------.------ Programm Ende (R}cksprung ins Text-Bearbeiten).----------------------------------------------------------------------------_ende. l|sche zeile 1. r}cksprung..----------------------------------------------------------------------------.------ Fehler .---------------------------------------------------------------------------- _datei-fehler. anzeigen fehler "Fehler: " Num1 " beim \ffnen der Hilfsdatei". springe _ende..------------------------------------------------------------------------------. Unterprogramm zum Setzen der Kennzeichen "Punkte und Kapitel".------------------------------------------------------------------------------unterprogramm kennz-setzen mit Feld.argumente.Feld._kennz-setzen. gro~schreibung Zch1. l|sche Feld. wenn Zch1 = "J" : setze Feld. r}cksprung.