Easytrieve Plus Standards

Sample Easytrieve Plus Program


MACRO PARMDATE
*
* NAME:         EZPEX
* PURPOSE:      EASYTRIEVE PLUS EXAMPLE
* WRITTEN BY:   RALPH
* DATE WRITTEN: 12/15/94
*      REVISED: 00/00/00 ##:  #
*               00/00/00 ##:  #
* NOTE:         SAMPLE PROGRAM ILLUSTRATING STANDARDS
* FILE(S):      EZPFILE: SAMPLE DATA FILE
*               IDFILE:  ID CHANGES FILE

* PARMS:        #1:      REPORT DATE (MMDDYY)
**********************************************************************
FILE EZPFILE


  %LIBEZP



    PARMDATE          W          006 A   VALUE ('&RPTDATE')
      PARMDATE9       PARMDATE   006 N   MASK D

    HDATE             W          006 A

    WID               W          009 N   MASK A
    WTRANNUM          W          005 N   MASK ( P 'ZZ-ZZ9')
    WDEPTNAME         W          015 A

FILE IDFILE VS
  %LIBID

FILE PRTFL01 PRINTER


JOB INPUT EZPFILE START START-PROC FINISH FINISH-PROC

***
***  SKIP IF ID NUMBER NOT ON FILE
***

  READ IDFILE KEY EZPIDNUM STATUS

  IF IDFILE:FILE-STATUS = 0
     GO TO JOB
  END-IF
***
***  SAVE BASICS
***
  WID = EZPIDNUM
  WTRANNUM = EZPTRANNUM
***
***  FETCH DEPARTMENT NAME AND PRINT REPORT
***
  PERFORM DEPT-LOOKUP
  PRINT RPT1


**********************************************************************
***  DEPARTMENT LOOKUP
**********************************************************************

DEPT-LOOKUP. PROC

  %SEARCH WDEPTNAME = ZDPT EZPDEPT
END-PROC


**********************************************************************
***  PROGRAM INITIALIZATION
**********************************************************************
START-PROC. PROC
  IF PARMDATE NOT NUMERIC
     DISPLAY '******************************************'
     DISPLAY '**  EZPEX:  INVALID DATE PARAMETER      **'
     DISPLAY '**    INVALID DTE PROGRAM ABORTED       **'
     DISPLAY '******************************************'
     RETURN-CODE = 6
     STOP
  END-IF
  DISPLAY '******************************************'
  DISPLAY '**  PROGRAM NAME:        ' HPGMNAME
  DISPLAY '**  REPORT DATE:         ' PARMDATE
  DISPLAY '******************************************'
  %DATECONV PARMDATE MMDDYY HDATE YYMMDD
 END-PROC


**********************************************************************
***  PROGRAM TERMINATION
**********************************************************************
FINISH-PROC. PROC
  PERFORM DEPT-LOOKUP
  PRINT RPT1
END-PROC


**********************************************************************
***  SAMPLE EASYTRIEVE PLUS REPORT
**********************************************************************
 REPORT RPT1 PRINTER PRTFL01
   SEQUENCE EZPDEPT                                                  +
            WID
   CONTROL  FINAL           NOPRINT                                  +
            EZPDEPT         NOPRINT     NEWPAGE

   TITLE 01 'AUBURN UNIVERSITY STANDARDS'
   TITLE 02 'DEPARTMENT/TRANS ID FOR' PARMDATE9
   TITLE 03 'DEPARTMENT:' EZPDEPT WDEPTNAME
   TITLE 04 'PGM=EZPEX'
   HEADING  WID             ('ID' 'NUMBER')
   HEADING  WTRANNUM        'TRAN'
   LINE  01 WID                                                     +
            WTRANNUM

AFTER-BREAK. PROC
  IF LEVEL = 1
     DISPLAY 'NUMBER OF STUDENTS THIS DEPARTMENT:' TALLY
     DISPLAY ''
  END-IF
  IF LEVEL = 2
     DISPLAY 'TOTAL NUMBER OF STUDENTS:' TALLY
     DISPLAY ''
  END-IF
END-PROC


Last Modified:

©1999 All Rights Reserved