Zum Inhalt springen

cobol und dessen gruppenwechsel


House-Chica

Empfohlene Beiträge

hallo ihr lieben , hab ne frage zum thema gruppenwechsel. und zwar verstehe ich nicht ganz den sinn des gruppenwechsels kann mir den vielleicht mal jeamnd erklären?

wenn ich einen gruppen wechsel auf einen ort beziehe wie genau würde man dann vorgehen..

:( bin voll am verzweifeln erst 5 tage in der programmierung tätig dann schon solche fortgeschrittenen aufgaben :(

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erkläre dein Problem mit dem Ort mal etwas genauer denn einen Gruppenwechsel in ein paar Zeilen zu erklären ist nicht einfach und ohne Beispiel vielleicht auch etwas schwer nachzuvollziehen.

Grundsätzlich kann man sagen wenn du mehr als einen Eingangskanal für Daten hast und diese zusammen verarbeiten willst brauchst du einen Gruppenwechsel. Aber auch bei nur einer Eingabedatei gibt es Möglichkeiten/ Beispiele einen Gruppenwechsel anzuwenden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

identification division.

       environment division.

       special-names.

           decimal-point is comma.

       input-output section.

       file-control.

           select adressen assign to "adressen.dat"

                  organization is indexed

                  access mode is dynamic

                   record key is adr-num

          alternate record key is adr-key2 = adr-nach

                                              adr-num

          alternate record key is adr-key3 = adr-ort

                                              adr-num.

      *

       data division.


       fd adressen.


       01 radr.

          05 adr-key1.

           10 adr-num            pic 9(3).

          05 adr-satz.

           10 adr-nach           pic x(15).

           10 adr-ort            pic x(15).

           10 adr-land           pic x(30).

           10 adr-nation         pic x(30).

           10 adr-hp1            pic x(30).

           10 adr-email          pic x(40).

           10 adr-geb            pic 9(8).

           10 adr-vor            pic x(15).

           10 adr-str            pic x(30).

           10 adr-plz            pic x(30).

           10 adr-tel            pic x(15).

           10 adr-mobil          pic x(15).


       working-storage section.


              01 w-num     pic 999.

              01 w-numd    pic zz9.

              01 w-vor     pic x(15).

              01 w-nach    pic x(15).

              01 w-str     pic x(30).

              01 w-plz     pic x(30).

              01 w-ort     pic x(30).

              01 w-land    pic x(30).

              01 w-nation  pic x(30).

              01 w-tel     pic x(15).

              01 w-mobil   pic x(15).

              01 w-hp1     pic x(30).

              01 w-email   pic x(40).

              01 w-text    pic x(70).

              01 w-text2   pic x.

              01 w-geb     pic 9(8).

              01 w-gebd    pic 99.99.9999.

              01 w-fehler  pic x(70).

              01 w-txt     pic x(70).

              01 w-txt2    pic x.

              01 w-zaehler pic 99 value zero.

              01 w-feld    pic 99.

              01 w-fehlerkz pic 9.

              01 w-datp.

                05 w-tt    pic 99.

                05 w-mm    pic 99.

                05 w-jjjj  pic 9999.

              01 w-datpx.

                05 w-jjjjx  pic 9999.

                05 w-mmx    pic 99.

                05 w-ttx    pic 99.


              01  w-xx            pic 9(4).

              01  w-sj            pic 9.

                  88 schaltjahr   value 0.


      *

      *

               01  invalid-schalter             pic x.

                    88 neuanlage                value "N".

                    88 aenderung                value "A".

      *

               01  s1                          pic x.

      *

               01 gwn.

                  05 gwn-12.

                     10 gwn-1                 pic x(30).

                     10 gwn-2                 pic 9(3).


               01 gwa.

                  05 gwa-12.

                     10 gwa-1                 pic x(30).

                     10 gwa-2                 pic 9(3).


               01  ende-wert            pic x(36) value high-value.


               01  satz-pruef              pic x.

                   88 satz-ok              value "J".


               01 w-pos.

                  05 w-zeile                pic 99.

                  05 w-spalte               pic 99.



         procedure division.

      *

      *

       pr-00.

           perform aufbau.

           perform angaben.

       pr-99.

      *

      *

       exit program.

       stop run.


       aufbau section.

       auf-00.

      *

               display space upon crt.

      *

      *   display " von ort" at


      *

       auf-99.

         exit.


       angaben section.

       ang-00.

      *

      *

           initialize radr.

           start adressen key is not > adr-key3 invalid

                           go to  ang-99.

      *

           move space      to gwa gwn satz-pruef.

           perform lesen until satz-ok.

      *

           if gwn = ende-wert

              go to ang-99

           end-if

      *

           move gwn        to gwa.

           perform steuerleiste.

      *

       ang-99.

          exit.


       steuerleiste section.

       grp-str1.

           perform gav1.

           perform grp-str2 until gwn = ende-wert.

           perform gev1.

           go to grp-str9.

      *

       grp-str2.

           perform gav2.

           perform grp-str3 until gwn-1 not = gwa-1.

           perform gev2.

      *

       grp-str3.

           perform ausgabe.

           perform lesen until satz-ok.

      *

       grp-str9.

           exit.

      *


      *

       gav1 section.

       gav-00.

      *

         move 1 to w-zeile,w-spalte

         display "Adressenliste" at w-pos.

      *

       gav-99.

           exit.


       gev1 section.

       gev1-00.

      *


      *

       gev1-99.

          exit.


       gav2 section.

       gav-00.

      *

       perform varying 1

          from  gwn by 1

           until ende-wert

             satz-ok

       end-perform




      *

       gav-99.

          exit.


       gev2 section.

       gav-00.

      *


      *

       gev-99.

          exit.


       lesen section.

       le-00.

      *

           read adressen next

                         end move "*"      to s1

           perform satzpruefung.

           .

      *

       le-99.

           exit.

      *


       ausgabe section.

       aus-00.

      *


      *

       aus-99.

           exit.

       satzpruefung section.

       sa-00.

           if s1 not = space

                 move ende-wert    to gwn

                 go to sa-90.


       sa-90.

           move "J"             to satz-pruef.

           if gwn not = ende-wert

              move gwn          to gwa

              move adr-ort      to gwn-1

              move adr-num      to gwn-2.

      *

       sa-99.

           exit.

      *

       satz-anzeigen section.

       sa-00.

      *

                 display w-vor    at  0220.

                 display w-nach   at  0320.

                 display w-str    at  0420.

                 display w-plz    at  0520.

                 display w-ort    at  0620.

                 display w-land   at  0720.

                 display w-nation at  0820.

                 display w-tel    at  0920.

                 display w-mobil  at  1020.

                 display w-hp1    at  1120.

                 display w-email  at  1220.

                 display w-gebd   at  1320.

      *

       sa-99.

           exit.

      *

      *

      *

daraus ein gruppenwechsel für den ort

<edit>Verwende doch bitte Code-Tags. So ein langer Quelltext ist ohne Formatierung nur schwer zu überschauen. Ich habs für dich mal eingefügt.

Mfg grueni </edit>

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe den Sourcecode jetzt mal schnell überflogen nur werde ich da nicht sonderlich schlau draus. Es ist vielleicht besser wenn du mal einen relevanten Ausschnitt aus der Eingabedatei postest und was dein Ergebnis sein soll. Dann kann dir sicherlich geholfen werden. Deine Aufgaben werde ich nicht lösen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

ja also ein gruppenwechsel ist der wechsel z.b bei orten von Aachen nach bremen , da wo sich aachen abschließt und bremen beginnt. Beispielsweise du hast ein adressenprofil und gibst da sämtliche daten ein unterschiedlciher weiße bis auf den ort.Dann sortiert dir das Programm alles nach den eingegebenen orten automatisch ohne das du es jedesmal abfragen musst^^ ja bissel anders in cobol alles sehr viel schreib aufwendiger :D hehe ich hoffe du konntest was verstehen^^

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...