[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference ilbbak::ibi_focus

Title:FOCUS, from INFORMATION BUILDERS
Moderator:ZAYIUS::BROUILLETTE
Created:Thu Feb 19 1987
Last Modified:Mon May 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:615
Total number of notes:1779

405.0. "Need help with Master file (cobol FD)" by KAHALA::BILLS () Tue Mar 19 1991 17:14

	I'm helping a group create .mas files to run against data
in a shared area.  We use the COBOL FDs and translate those to 
.MAS files.

	We first used only part of an FD, making the remainder of the
data filler.  Except for the first field, we ignored data that the 
COBOL FD shows having twice redefined a large amount of filler.
That .mas works beautifully (example A Master file).

	However, now the client wants to get at data that is shown in 
the redefine (example B Master file).  When I added the fields and 
TABLE FILE FILENAME in FOCUS, I receive the following error message:

(FOC209) DATA VALUE EXCEEDS ITS LENGTH SPECIFICATION: A3

	I cannot identify which field is the culprit, although
I'm not positive that FRT_CHRG is correct.

	Any help would be great.

	Gwen Bills


	

		COBOL FD

*******************************************************************************
*   FD FOR    INVENTORY AUDIT MASTER FILE                     (INV5002.0AM)   *
*                                                                             *
*             RECORD LENGTH = 500                                             *
*             ORGANIZATION  = INDEXED                                         *
*******************************************************************************
*
FD  INV-AUDIT-MASTER-FILE.

01  INV-AUDIT-MASTER-RECORD.
    05  INV-AUDIT-MASTER-KEY.
        10  IAD-PART-NUMBER.
            15  IAD-PN-CLASS                        PIC X(02).
            15  IAD-PN-BASIC                        PIC X(05).
            15  IAD-PN-VARIANT                      PIC X(02).
            15  IAD-PN-REVISION                     PIC X(04).
        10  IAD-TRANSACTION-TYPE                    PIC X(01).
            88  IAD-RECEIPT                             VALUE "1".
            88  IAD-SHIPMENT                            VALUE "2".
            88  IAD-INV-ADJUSTMENT                      VALUE "3".
            88  IAD-TRANSFER                            VALUE "4".
            88  IAD-INTRANSIT                           VALUE "5".
            88  IAD-PI-ADJUSTMENT                       VALUE "6".
            88  IAD-RETURN                              VALUE "7".
            88  IAD-WO                                  VALUE "8".
        10  IAD-ENTRY-DATE                          PIC 9(06).
        10  IAD-ENTRY-TIME                          PIC 9(08).
*
*******************************************************************************
*                                                                             *
*          GENERIC INFORMATION FOR ALL TRANSACTION TYPES/CODES                *
*******************************************************************************
*
    05  IAD-TRANSACTION-QUANTITY                    PIC S9(07) COMP-3.
    05  IAD-STOCK-STATUS-BEFORE                     PIC S9(07) COMP-3.
    05  IAD-STOCK-STATUS-AFTER                      PIC S9(07) COMP-3.
    05  IAD-GL-ACCOUNT-FROM                         PIC X(05).
    05  IAD-GL-ACCOUNT-TO                           PIC X(05).
    05  IAD-DEB-LEDGER-NUMBER                       PIC X(04).
    05  IAD-VALUES.
    	10  IAD-STANDARD-COST                       PIC S9(09)V9999 COMP-3.
    	10  IAD-EXTENDED-COST                       PIC S9(9)V99    COMP-3.
    05  IAD-SEGMENT-CODE                            PIC X(03).
    05  IAD-PRODUCT-LINE REDEFINES IAD-SEGMENT-CODE PIC X(03).
    05  IAD-PART-TYPE                               PIC X(03).
    05  IAD-COST-CENTER                             PIC X(03).
    05  IAD-STKRM-FROM                              PIC X(04).
    05  IAD-STKRM-TO                                PIC X(04).
    05  IAD-PLANT-CODE-FROM                         PIC X(03).
    05  IAD-PLANT-CODE-TO                           PIC X(03).
    05  IAD-FACILITY-CODE-FROM                      PIC X(03).
    05  IAD-PLC-FROM REDEFINES IAD-FACILITY-CODE-FROM
                                                    PIC X(03).
    05  IAD-FACILITY-CODE-TO                        PIC X(03).
    05  IAD-PLC-TO REDEFINES IAD-FACILITY-CODE-TO
                                                    PIC X(03).
    05  IAD-DROPSHIP-FLAG                           PIC X(01).
        88  IAD-DROPSHIP                                VALUE "Y".
    05  IAD-JOB-NUMBER                              PIC X(15).
    05  IAD-JOB-NUM-EXACT                           PIC X(13).
    05  IAD-BATCH-NUMBER                            PIC X(03).
    05  IAD-DOCUMENT-NUMBER                         PIC X(10).
    05  IAD-DEBIT-MEMO-NUMBER REDEFINES IAD-DOCUMENT-NUMBER
                                                    PIC X(10).
    05  IAD-DOCUMENT-LINE-NUMBER                    PIC 9(03).
    05  IAD-DEBIT-MEMO-LINE-NUMBER REDEFINES IAD-DOCUMENT-LINE-NUMBER
                                                    PIC 9(03).
    05  IAD-ORDER-NUMBER                            PIC X(15).
    05  IAD-ITEM-NUMBER                             PIC X(03).
    05  IAD-OPERATOR-NAME                           PIC X(12).
    05  IAD-PLANNER-CODE                            PIC X(02).
    05  IAD-PRODUCT-MANAGER                         PIC X(02).
    05  IAD-DEC-NUMBER                              PIC X(09).
    05  IAD-DOCUMENT-NUMBER-SUFFIX                  PIC X(03).
    05  FILLER                                      PIC X(76).
    05  IAD-SUB-SYSTEM-DATA                         PIC X(237).

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Above fields with 3 characters subtracted from IAD-SUB-SYSTEM-DATA (so
that IAD-RCPT-TRANS-CODE below could follow it) were used for EXAMPLE A
Master file. That file works.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


*******************************************************************************
  REDEFINE OF IAD-SUB-SYSTEM-DATA
*******************************************************************************

    05  IAD-RECEIVING-DATA       REDEFINES IAD-SUB-SYSTEM-DATA.
    	10  IAD-RCPT-TRANS-CODE                         PIC X(03).
            88  IAD-RECEIPTS                                VALUES ARE
                             "001" "002" "230" "231" "195" "196" "DEB".
    	    88  IAD-VENDOR-RECEIPT                          VALUE "001".
            88  IAD-VENDOR-RECEIPT-ADJ                      VALUE "002".
            88  IAD-RA-RECEIPT                              VALUE "230".
            88  IAD-RA-RECEIPT-ADJ                          VALUE "231".
            88  IAD-INTERPLANT-RECEIPT                      VALUE "195".
            88  IAD-INTERPLANT-RECEIPT-ADJ                  VALUE "196".
    	    88  IAD-DEBIT-MEMO                              VALUE "DEB".
    	10  IAD-RCPT-CONTROL-LOG-NUMBER                 PIC 9(08).
    	10  IAD-RCPT-PACKING-SLIP-NUMBER                PIC X(12).
    	10  IAD-RCPT-RA-NUMBER                          PIC X(08).
        10  FILLER                                      PIC X(01).
        10  IAD-RCPT-TUR-CODE                           PIC X(01).
        10  IAD-RCPT-PO-RECEIVER-NUMBER                 PIC 9(06).
        10  IAD-RCPT-OVERSHIP-FLAG                      PIC X(01).
        10  IAD-DEB-DATE                                PIC 9(06).
        10  IAD-DEB-UNIT-PRICE                          PIC S9(07)V99 COMP-3.
    	10  FILLER                                      PIC X(186).

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

When the redefined fields (minus IAD-SHP-TRANSACTION-CD), replaced the
filler in EXAMPLE B Master file, I receive error 209

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

*******************************************************************************
           REDEFINE OF IAD-SUB-SYSTEM-DATE
*******************************************************************************

    05  IAD-SHIPMENT-DATA        REDEFINES IAD-SUB-SYSTEM-DATA.
    	10  IAD-SHP-TRANSACTION-CODE                    PIC X(03).
            88  IAD-SHIPMENTS                               VALUES ARE
                         "X35" "X36" "190" "191" "235" "236" "245" "246".
    	    88  IAD-CUSTOMER-SHIP                           VALUE "X35".
    	    88  IAD-CUSTOMER-SHIP-ADJ                       VALUE "X36".
    	    88  IAD-INTERPLANT-SHIP                         VALUE "190".
    	    88  IAD-INTERPLANT-SHIP-ADJ                     VALUE "191".
    	    88  IAD-MISC-SHIP                               VALUE "235".
            88  IAD-MISC-SHIP-ADJ                           VALUE "236".
            88  IAD-NO-CHARGE-SBA                           VALUE "245".
            88  IAD-NO-CHARGE-SBA-ADJ                       VALUE "246".
    	10  IAD-SHP-PRODUCT-TYPE                        PIC X(01).
    	    88  IAD-CROSS-PROD-LINE                         VALUE "C".
    	    88  IAD-REDISTRIBUTION                          VALUE "R".
        10  IAD-SHP-SHIP-LOCATION-CODE                  PIC X(04).
        10  IAD-SHP-SHIP-NUMBER                         PIC X(10).
        10  IAD-SHP-SHIP-DATE                           PIC X(06).
        10  IAD-SHP-SHIP-QTY                            PIC 9(07) COMP-3.
        10  IAD-SHP-TOT-QTY-SHIPPED                     PIC 9(07) COMP-3.
        10  IAD-SHP-WORK-ORDER                          PIC X(15).
        10  IAD-SHP-SOLDTO-CUST-CODE                    PIC X(07).
        10  IAD-SHP-PARTIAL-OR-COMPLETE                 PIC X(01).
        10  IAD-SHP-WAYBILL-NUMBER                      PIC X(15).
        10  IAD-SHP-FREIGHT-CHG                         PIC 9(07)V99.
        10  IAD-SHP-CARRIER                             PIC X(15).
        10  IAD-SHP-PIECES                              PIC 9(06).
        10  IAD-SHP-WEIGHT                              PIC 9(06).
        10  IAD-SHP-FOREIGN-DOMESTIC                    PIC X(01).
        10  IAD-SHP-DUP-DOC-SUFFIX                      PIC X(03).
        10  IAD-SHP-SBA-NUMBER                          PIC X(15).
    	10  FILLER                                      PIC X(112).




			EXAMPLE A Master File

		This one works but doesn't have access to all the
		data that's needed.


FILENAME=INV5002, SUFFIX= FIX,$
SEGNAME=ONE,$
 FIELDNAME=PART_NO,   ALIAS=PN  , USAGE=A9  , ACTUAL=A9         ,$
DEFINE ED_PART/A11=EDIT(PART_NO, '99-99999-99');                 $
 FIELDNAME=FILLER,              , USAGE=A5   , ACTUAL=A5        ,$
 FIELDNAME=TRX_DATE,  ALIAS=TD  , USAGE=A6YMD, ACTUAL=A6YMD     ,$
 FIELDNAME=FILLER,              , USAGE=A8   , ACTUAL=A8        ,$
 FIELDNAME=QUANTITY,  ALIAS=QTY , USAGE=P8   , ACTUAL=P4        ,$
 FIELDNAME=FILLER,              , USAGE=A8   , ACTUAL=A8        ,$
 FIELDNAME=ACCT_FROM, ALIAS=FRM , USAGE=A5   , ACTUAL=A5        ,$
 FIELDNAME=ACCT_TO,   ALIAS=ATO , USAGE=A5   , ACTUAL=A5        ,$
 FIELDNAME=FILLER,              , USAGE=A4   , ACTUAL=A4        ,$
 FIELDNAME=STDCOST,   ALIAS=STD , USAGE=P15.4, ACTUAL=P7        ,$
 FIELDNAME=EXTND_COST,ALIAS=COST, USAGE=P13.2, ACTUAL=P6        ,$
 FIELDNAME=FILLER,              , USAGE=A6   , ACTUAL=A6        ,$
 FIELDNAME=COST_CTR,  ALIAS=CC  , USAGE=A3   , ACTUAL=A3        ,$
 FIELDNAME=STKRMF,    ALIAS=SRF , USAGE=A4   , ACTUAL=A4        ,$
 FIELDNAME=STKRMT,    ALIAS=SRT , USAGE=A4   , ACTUAL=A4        ,$
 FIELDNAME=FILLER,              , USAGE=A13  , ACTUAL=A13       ,$
 FIELDNAME=JOB_NO,    ALIAS=JN  , USAGE=A15  , ACTUAL=A15       ,$
 FIELDNAME=FILLER,              , USAGE=A13  , ACTUAL=A13       ,$
 FIELDNAME=BATCH_NO,  ALIAS=BNO , USAGE=A3   , ACTUAL=A3        ,$
 FIELDNAME=DOC_NO,    ALIAS=DN  , USAGE=A10  , ACTUAL=A10       ,$
 FIELDNAME=LINE_NO,   ALIAS=LN  , USAGE=A3   , ACTUAL=A3        ,$
 FIELDNAME=WK_O_NO,   ALIAS=WO  , USAGE=A15  , ACTUAL=A15       ,$
 FIELDNAME=FILLER,              , USAGE=A17  , ACTUAL=A17       ,$
 FIELDNAME=PROG_MGR,  ALIAS=PM  , USAGE=A2   , ACTUAL=A2        ,$
 FIELDNAME=DEC_NO,    ALIAS=DCN , USAGE=A9   , ACTUAL=A9        ,$
 FIELDNAME=FILLER,              , USAGE=A79  , ACTUAL=A79       ,$
 FIELDNAME=TRANS_CD,  ALIAS=TRX , USAGE=A3   , ACTUAL=A3        ,$
 FIELDNAME=FILLER,              , USAGE=A223 , ACTUAL=A223      ,$


		EXAMPLE B Master File

	This one doesn't work.  I suspect field FRT_CHRG is the 
culprit since I'm unsure as to what a 9(7)v99 translates to in
a master file.  But I think it's correct. 

FILENAME=INV2OAM, SUFFIX= FIX,$
SEGNAME=ONE,$
 FIELDNAME=PART_NO,   ALIAS=PN  , USAGE=A9  , ACTUAL=A9         ,$
DEFINE ED_PART/A11=EDIT(PART_NO, '99-99999-99');                 $
 FIELDNAME=FILLER,              , USAGE=A5   , ACTUAL=A5        ,$
 FIELDNAME=TRX_DATE,  ALIAS=TD  , USAGE=A6YMD, ACTUAL=A6YMD     ,$
 FIELDNAME=FILLER,              , USAGE=A8   , ACTUAL=A8        ,$
 FIELDNAME=QUANTITY,  ALIAS=QTY , USAGE=P8   , ACTUAL=P4        ,$
 FIELDNAME=FILLER,              , USAGE=A8   , ACTUAL=A8        ,$
 FIELDNAME=ACCT_FROM, ALIAS=FRM , USAGE=A5   , ACTUAL=A5        ,$
 FIELDNAME=ACCT_TO,   ALIAS=ATO , USAGE=A5   , ACTUAL=A5        ,$
 FIELDNAME=FILLER,              , USAGE=A4   , ACTUAL=A4        ,$
 FIELDNAME=STDCOST,   ALIAS=STD , USAGE=P15.4, ACTUAL=P7        ,$
 FIELDNAME=EXTND_COST,ALIAS=COST, USAGE=P13.2, ACTUAL=P6        ,$
 FIELDNAME=FILLER,              , USAGE=A6   , ACTUAL=A6        ,$
 FIELDNAME=COST_CTR,  ALIAS=CC  , USAGE=A3   , ACTUAL=A3        ,$
 FIELDNAME=STKRMF,    ALIAS=SRF , USAGE=A4   , ACTUAL=A4        ,$
 FIELDNAME=STKRMT,    ALIAS=SRT , USAGE=A4   , ACTUAL=A4        ,$
 FIELDNAME=FILLER,              , USAGE=A13  , ACTUAL=A13       ,$
 FIELDNAME=JOB_NO,    ALIAS=JN  , USAGE=A15  , ACTUAL=A15       ,$
 FIELDNAME=FILLER,              , USAGE=A13  , ACTUAL=A13       ,$
 FIELDNAME=BATCH_NO,  ALIAS=BNO , USAGE=A3   , ACTUAL=A3        ,$
 FIELDNAME=DOC_NO,    ALIAS=DN  , USAGE=A10  , ACTUAL=A10       ,$
 FIELDNAME=LINE_NO,   ALIAS=LN  , USAGE=A3   , ACTUAL=A3        ,$
 FIELDNAME=WK_O_NO,   ALIAS=WO  , USAGE=A15  , ACTUAL=A15       ,$
 FIELDNAME=FILLER,              , USAGE=A17  , ACTUAL=A17       ,$
 FIELDNAME=PROG_MGR,  ALIAS=PM  , USAGE=A2   , ACTUAL=A2        ,$
 FIELDNAME=DEC_NO,    ALIAS=DCN , USAGE=A9   , ACTUAL=A9        ,$
 FIELDNAME=FILLER,              , USAGE=A79  , ACTUAL=A79       ,$
 FIELDNAME=TRANS_CD, ALIAS=TRX  , USAGE=A3   , ACTUAL=A3      	,$
 FIELDNAME=FILLER,              , USAGE=A1   , ACTUAL=A1        ,$
 FIELDNAME=SHP_LOC_CD,ALIAS=SLC , USAGE=A4   , ACTUAL=A4        ,$
 FIELDNAME=SHP_NUM,   ALIAS=SHN , USAGE=A10  , ACTUAL=A10       ,$
 FIELDNAME=SHP_DT,    ALIAS=SHD , USAGE=A6YMD, ACTUAL=A6YMD     ,$
 FIELDNAME=SHP_QTY,   ALIAS=SQTY, USAGE=P8   , ACTUAL=P4        ,$
 FIELDNAME=T_SHP_QTY, ALIAS=TSQ , USAGE=P8   , ACTUAL=P4        ,$
 FIELDNAME=FILLER,              , USAGE=A23  , ACTUAL=A23       ,$
 FIELDNAME=WY_BILL,   ALIAS=WB  , USAGE=A15  , ACTUAL=A15       ,$
 FIELDNAME=FRT_CHRG,  ALIAS=FRTC, USAGE=A8.2 , ACTUAL=A8        ,$
 FIELDNAME=SHP_CAR,   ALIAS=SCAR, USAGE=A15   , ACTUAL=A15      ,$
 FIELDNAME=SHP_PCS,   ALIAS=SHPC, USAGE=I6    , ACTUAL=I6       ,$
 FIELDNAME=SHP_WGT,   ALIAS=SWT , USAGE=I6    , ACTUAL=I6       ,$
 FIELDNAME=SHP_F_D,   ALIAS=SFD , USAGE=A1    , ACTUAL=A1       ,$
 FIELDNAME=DUP_DOC,   ALIAS=DD  , USAGE=A3    , ACTUAL=A3       ,$
 FIELDNAME=SBA_NUM,   ALIAS=SBAN, USAGE=A15   , ACTUAL=A15      ,$
 FIELDNAME=FILLER,              , USAGE=A112  , ACTUAL=A112     ,$

T.RTitleUserPersonal
Name
DateLines
405.1HAMSTR::IMFRAWed Mar 20 1991 15:2613
    
    The major difficulty you face is due to the fact that you specified an 
    invalid format usage in the master (see A8.2 for field FRT_CHGR).  Once
    I corrected this, I was able to do a CHECK FILE on your master, which 
    indicated a total record length of 499.  This number doesn't match the
    one documented in the coboll fd (500).
    
    By the way, if the FRT_CHRG data is 8 characters and is in the format 
    *****.** use a usage of P8.2 
    
    Good luck, 
    
    Joe B.
405.2still FOC209 problemNQOAIC::BILLSMon Mar 25 1991 13:5718
    After much research on the file, I discovered that the FRT_CHRG
    field should be P9.2 (if I understand Page 3-18, table 3-7
    of the manuall correctly). This would bring my total up to the
    cobol fd 500.  
    	
    	(FOC209) DATA VALUE EXCEEDS ITS LENGTH SPECIFICATION: A3
    
    However,  I still get the same error and I can't locate the problem.
    
    Any further ideas?  I'd be willing to generate a small hold file,
    containing 10 records and mail it to you.
    
    	Puzzled (:<,
    
    	Gwen
    	Gwen  
    
    However,