home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / bit / listserv / ibmmain / 2058 < prev    next >
Encoding:
Text File  |  1992-08-29  |  6.2 KB  |  103 lines

  1. Comments: Gated by NETNEWS@AUVM.AMERICAN.EDU
  2. Path: sparky!uunet!paladin.american.edu!auvm!VM.TEMPLE.EDU!STAN
  3. Organization: Temple University -- Academic Computer Services
  4. X-Acknowledge-To: <STAN@vm.temple.edu>
  5. Message-ID: <IBM-MAIN%92082814295297@RICEVM1.RICE.EDU>
  6. Newsgroups: bit.listserv.ibm-main
  7. Date:         Fri, 28 Aug 1992 15:23:24 EDT
  8. Sender:       IBM Mainframe Discussion list <IBM-MAIN@RICEVM1.BITNET>
  9. From:         Stan Horwitz <STAN@VM.TEMPLE.EDU>
  10. Subject:      Sequention access of KSDS file
  11. Lines: 90
  12.  
  13. I am teaching  myself VSAM and came  upon what appears to  be an inexplicable
  14. problem. I am trying  to access a KSDS file that  was successfully created by
  15. another program. This  is a tiny file  with only six records that  I am using
  16. for learning purposes only.
  17.  
  18. It seems as if, when I try to do sequential processing on the file, the START
  19. statement doesn't work.  In the program below, all that's  printed out by the
  20. display statement is  a status field of  46. According to my  VSAM book, this
  21. indicates a bad current record pointer, but I don't see how that could be the
  22. case on the  simple program I included  below. If anyone has  any thoughts on
  23. what I  am doing wrong, please  let me know. Your  responses are appreciated.
  24.  
  25. By the way, this is on a VM/CMS 5.5 system with VS Cobol II.
  26.  
  27. Here is the Rexx exec used to start this program:
  28.  
  29. /* */
  30. DLBL INDATA B DSN LAB4.HOMEWORK '('CAT IJSYSUC VSAM PERM
  31. COBOL2 START
  32. GLOBAL TXTLIB VSC2LTXT
  33. GLOBAL LOADLIB VSC2LOAD
  34. LOAD START
  35. START '*'
  36.  
  37. Here is the program:
  38.  
  39.        IDENTIFICATION DIVISION.                                         STA00010
  40.        PROGRAM-ID.         LAB5.                                        STA00020
  41.                                                                         STA00030
  42.        ENVIRONMENT DIVISION.                                            STA00040
  43.                                                                         STA00050
  44.        CONFIGURATION SECTION.                                           STA00060
  45.                                                                         STA00070
  46.        SOURCE-COMPUTER.    IBM.                                         STA00080
  47.        OBJECT-COMPUTER.    IBM.                                         STA00090
  48.                                                                         STA00100
  49.        INPUT-OUTPUT SECTION.                                            STA00110
  50.                                                                         STA00120
  51.        FILE-CONTROL.                                                    STA00130
  52.            SELECT VSAM-FILE ASSIGN TO INDATA                            STA00140
  53.               ORGANIZATION IS INDEXED                                   STA00150
  54.               ACCESS MODE IS DYNAMIC                                    STA00160
  55.               RECORD KEY IS CUST-NUMB                                   STA00170
  56.               FILE STATUS IS IN-STATUS.                                 STA00180
  57.                                                                         STA00190
  58.        DATA DIVISION.                                                   STA00200
  59.        FILE SECTION.                                                    STA00210
  60.                                                                         STA00220
  61.        FD  VSAM-FILE.                                                   STA00230
  62.                                                                         STA00240
  63.        01  VSAM-RECORD.                                                 STA00250
  64.            05  CUST-NUMB           PIC X(5).                            STA00260
  65.            05  CUST-NAME           PIC X(20).                           STA00270
  66.            05  CUST-STATE          PIC XX.                              STA00280
  67.            05  CUST-ZIP            PIC 9(5).                            STA00290
  68.                                                                         STA00300
  69.        WORKING-STORAGE SECTION.                                         STA00310
  70.        01  IN-STATUS               PIC XX.                              STA00320
  71.            88  IN-STAT                         VALUE "10".              STA00330
  72.                                                                         STA00340
  73.        PROCEDURE DIVISION.                                              STA00350
  74.        000-MAIN.                                                        STA00360
  75.            OPEN INPUT VSAM-FILE.                                        STA00370
  76.            DISPLAY "VSAM FILE OPENED WITH STATUS CODE " IN-STATUS.      STA00380
  77.            DISPLAY "STARTING VSAM FILE ACCESS WITH NO KEY.".            STA00390
  78.            START VSAM-FILE.                                             STA00400
  79.            PERFORM UNTIL IN-STAT                                        STA00410
  80.               READ VSAM-FILE NEXT                                       STA00420
  81.               DISPLAY " " CUST-NUMB " " CUST-NAME " " CUST-STATE " "    STA00430
  82.                       CUST-ZIP " " IN-STATUS                            STA00440
  83.            END-PERFORM.                                                 STA00450
  84.            DISPLAY " ".                                                 STA00460
  85.            DISPLAY "STARTING VSAM ACCESS WITH KEY = 28976.".            STA00470
  86.            MOVE "28976" TO CUST-NUMB.                                   STA00480
  87.            START VSAM-FILE KEY IS EQUAL TO CUST-NUMB.                   STA00490
  88.            PERFORM UNTIL IN-STAT                                        STA00500
  89.               READ VSAM-FILE NEXT                                       STA00510
  90.               DISPLAY CUST-NUMB " " CUST-NAME " " CUST-STATE " "        STA00520
  91.                       CUST-ZIP " " IN-STATUS                            STA00530
  92.            END-PERFORM.                                                 STA00540
  93.            CLOSE VSAM-FILE.                                             STA00550
  94.            STOP RUN.                                                    STA00560
  95.  
  96.  Stan Horwitz   Internet: STAN @ VM.TEMPLE.EDU  Bitnet: STAN @ TEMPLEVM
  97.  
  98.  Temple University's Sr. Mainframe Consultant; Manager of the Help-Net
  99.  and Suggest lists; Listserv Postmaster; and in need of a vacation!
  100.  
  101.  Standard disclaimers apply. One of these days I will make this sig file
  102.  look much nicer.
  103.