*DECK PRESUM
USETEXT TCMMDEF 
USETEXT TENVIRN 
USETEXT TREPORT 
USETEXT TXSTD 
      PROC PRESUM;
  
#----------------------------------------------------------------------#
#                                                                      #
#  THE FOLLOWING PROCS ARE XDEF"D WITHIN THIS DECK:                    #
#                                                                      #
#     PRSMFR                       SAVE THE *FROM* FILE NAME           #
#     PRSMLFN                      SAVE THE REPORT NAME                #
#     SETEXT                       SET THE *TEXT* OPTION               #
#                                                                      #
#----------------------------------------------------------------------#
  
      BEGIN 
  
      XREF ITEM CURRENTLFPTR I;    # PONTS TO *CURRENT* LFNLIST ENTRY  #
      ITEM EC           I;         # PARAMETER TO LINKNEWLFN           #
      ITEM RC           I;         # RETURN CODE                       #
       DEF DFTRPWD #O"40000000000001000000"#;  #DEFAULT VALUE FOR 
                                                REPORTLIST WORD 1,
                                                BEYOND IS ON, 
                                                LINE NB IS 1# 
         DEF DFTRPWD2 #O"04010000000000000000"#;
  
      XREF ITEM SAVELFNAME I;      # NAME OF THE CURRENT LF            #
      XREF ITEM SM$GROUPID   I;    # GROUP ID FOR CURRENT SYNTAX STUFF #
  
      XREF PROC DIAG;              # ISSUE DIAGNOSTIC MESSAGE TO USER  #
      XREF PROC LFNLOOKUP;         # CHECK IF AN LFN IS KNOWN          #
      XREF PROC LINKNEWLFN;        # CREATE A NEW ENTRY IN LFNLIST     #
  
  
  
  
#----------------------------------------------------------------------#
  
  
  
  
      XDEF PROC PRSMFR; 
      PROC PRSMFR;
      BEGIN 
                                   # IF SEARCHING FOR NESTED           #
                                   # PREFACE/SUMMARY REPORTS           #
      IF NOT FLAGA AND PRWFG EQ 0 AND FULLSYNTX THEN
        BEGIN 
        FROMLFN[RPTCTR] = ICW[0];  # STORE NAME OF FROM FILE           #
        FROMLEN[RPTCTR] = CURLENG;
        IF DIRLEXID EQ O"204" THEN  # IF PREPARE                       #
          BEGIN 
          SAVELFNAME = 0; 
          B<0,CURLENG*6>SAVELFNAME = B<0,CURLENG*6>ICW[0];
          LFNLOOKUP (RC);          # SEARCH FOR FROM FILE IN LFNLIST   #
          IF TEXTFG[RPTCTR] THEN   # IF PREFACE/SUMMARY TEXT           #
            BEGIN 
            IF RC NQ 0 THEN 
              BEGIN 
              DESLIST = 0;         # NO DESCRIBE LIST                  #
              EC = 0;              # NOT A CALL FROM SORT              #
              LINKNEWLFN; 
              END 
            END 
          ELSE                     # IF PREFACE/SUMMARY REPORT-NAME    #
            BEGIN 
                                   # IF FILE NOT FOUND OR NOT DESCRIBE# 
            IF RC NQ 0 OR DESLIST EQ 0 THEN 
              BEGIN 
              DIAG(325,SAVELFNAME); 
              FULLSYNTX = FALSE;
              READFROM = S"INPUT";
              PRESUMFG = FALSE; 
              IF SM$GROUPID NQ 0 THEN  # IF CMM GROUP ID ALLOCATED     #
                BEGIN 
                CMM$FGR(SM$GROUPID);  # FREE ANY BLOCKS                #
                SM$GROUPID = 0;    # INDICATE NO CMM GROUP ID ALLOCATED#
                END 
              STDNO;
              END 
            END 
          FLFNINFO[RPTCTR] = CURRENTLFPTR;
          END 
        END 
      STDYES; 
      END 
  
  
  
  
#----------------------------------------------------------------------#
  
  
  
  
          XDEF PROC PRSMLFN;
          PROC PRSMLFN; 
          BEGIN 
          IF NOT FLAGA AND PRWFG EQ 0 THEN
                IF FULLSYNTX THEN BEGIN RPTNAME[RPTCTR] = ICW[0]; 
                                      RPTLEN[RPTCTR] = CURLENG; 
                                  END 
                STDYES; 
          END 
  
  
  
  
#----------------------------------------------------------------------#
  
  
  
  
          XDEF PROC SETEXT; 
          PROC SETEXT;
          BEGIN 
                IF NOT FLAGA THEN 
          IF FULLSYNTX THEN BEGIN TEXTFG[RPTCTR] = TRUE;
          RPTNAME[RPTCTR] = "ATEXT";
               RPTLEN[RPTCTR] = 5;    END 
                STDNO;
          END 
  
  
  
  
#----------------------------------------------------------------------#
  
  
      END 
      TERM
