-
Notifications
You must be signed in to change notification settings - Fork 8
Open
Description
in this RPGSRC I have this statement. In Convert2Free I get an NullPointerException
******************************************************************
H DEBUG DECEDIT('0,') DFTNAME(MERKEN) DATEDIT(*DMY.)
******************************************************************
FCustDSP CF E WORKSTN
F SFILE(SFLCUST:RRN1)
FCustPRT O E PRINTER USROPN
FCustLF UF E K DISK
D $PGMST SDS
D ##PGM 1 10
D ##USER 254 263
DRRN1 S 4 0 INZ
DFACTOR S 12S 6
********************************************************************
* Program *
********************************************************************
C CustKey KLIST
C KFLD ##ID
C EXSR FIRST
C B0 TAG
C *NOKEY CLEAR CustFM
C Z-ADD 0 cust_id
C MOVE '0' *IN98
C MOVE '1' *IN96
C MOVE '0' *IN11
C eval curdate=%DATE
C* B1 TAG
C EXFMT CustForm
*-- F3 -- Program end
C *INKC IFEQ '1'
C GOTO END
C ENDIF
*-- F4 -- SFL with records of customer -- FIRST ONE
C *INKD IFEQ '1'
C MOVE 1 cust_id
C EXSR SFLForCust
C *IN11 IFEQ '1'
C Z-ADD 1 cust_id
C EXSR CustRead
C* ****after press ENTER***
C EXSR ChooseRecord
C ENDIF
C ENDIF
*-- F7 -- Next
C *INKG IFEQ '1'
C READ CustFM 11
C *IN11 IFEQ '1'
C Z-ADD 0 cust_id
C EXSR CustRead
C ENDIF
C GOTO B2
C ENDIF
*-- F8 -- Prior
C *INKH IFEQ '1'
C READP CustFM 11
C *IN11 IFEQ '1'
C Z-ADD *HIVAL cust_id
C EXSR CustRead
C ENDIF
C GOTO B2
C ENDIF
C EXSR CustRead
C B2 TAG
C MOVE '1' *IN98
C MOVE '0' *IN96
C MOVE '0' *IN11
C DO *HIVAL
C Z-ADD CUSTID cust_id
C EXFMT CustForm
*-- F3 -- Program end
C *INKC IFEQ '1'
C LEAVE
C ENDIF
*-- F4 -- SFL with records of customer
C *INKD IFEQ '1'
C EXSR SFLForCust
C *IN11 IFEQ '1'
C EXSR CustRead
C*****After press Enter****
C EXSR ChooseRecord
C ENDIF
C ENDIF
*-- F7 -- Next
C *INKG IFEQ '1'
C READ CustFM 11
C *IN11 IFEQ '1'
C Z-ADD 0 cust_id
C EXSR CustRead
C ENDIF
C ITER
C ENDIF
*-- F8 -- Prior
C *INKH IFEQ '1'
C READP CustFM 11
C *IN11 IFEQ '1'
C Z-ADD *HIVAL cust_id
C EXSR CustRead
C ENDIF
C ITER
C ENDIF
*-- F5 -- Save
C *INKE IFEQ '1'
C UPDATE CustFM
C LEAVE
C ENDIF
*-- F6 -- window with Turnover in euro
C *INKF IFEQ '1'
C EXSR TurnEURO
C ENDIF
*-- F9 -- Print
C *INKI IFEQ '1'
C OPEN CustPrt
C WRITE CustPr
C CLOSE CustPrt
C ENDIF
*-- F10 -- WRKSPLF
C *INKJ IFEQ '1'
C MOVEL 'WRKSPLF' CMDNAM 80
C Z-ADD 7 CMDLEN 15 5
C CALL 'QCMDEXC'
C PARM CMDNAM
C PARM CMDLEN
C ENDIF
C ENDDO
C *INKC IFEQ '0'
C GOTO B0
C ENDIF
C END TAG
C MOVE '1' *INLR
*====================================================*
* CustRead
*====================================================*
*
C CustRead BEGSR
C CustRead1 TAG
C CustKey SETLL CustFM
*
C ##ID IFEQ *HIVAL
C READP CustFM 11
C ELSE
C READ CustFM 11
C *IN11 IFEQ '1'
C MOVE *ZEROS cust_id
C GOTO CustRead1
C ENDIF
*
C ENDIF
C ENDSR
*====================================================*
* FIRST -- *
*====================================================*
*
C FIRST BEGSR
c z-add 12 cust_id
C ENDSR
*====================================================*
* SFLForCust -- Subfile with records of Customer
*====================================================*
C SFLForCust BEGSR
C* *INKD IFEQ '1'
* *** CLEAR the subfile ***
C EVAL RRN1=0
C CLEAR CODE
C SETON 31
C WRITE CTLCUST
C SETOFF 31
* *** POPULATE the subfile ***
C CustKey CHAIN CustLF
C READ CUSTFM 11
C EXSR CustRead
C DOW (NOT *IN11)
C EVAL RRN1=RRN1+1
C WRITE SFLCUST
C READ CUSTFM 11
C IF RRN1=50
C EVAL *IN11=*ON
C EVAL *IN50=*ON
C MOVE ##ID CustID
C EndIf
C ENDDO
* *** DISPLAY the subfile ***
C SETOFF 32
C WRITE NAVIGATION
C EXFMT CTLCUST
C ENDSR
*=========================================================================*
* TurnEURO -- Conversion of turnover in dollar to euro
*=========================================================================*
C TurnEURO BEGSR
C CLEAR FACTOR
C CLEAR TURNRES
C TURNOV MULT 10 FACTOR
C FACTOR DIV 12 FACTOR
C ADD FACTOR TURNRES
C EXFMT TURNFORM
C ENDSR
*==========================================================================*
* ChooseRecord -- Choosing record from subfile with records of customer
*==========================================================================*
C ChooseRecord BEGSR
C EVAL *IN96=*OFF
C READC SFLCUST 11
C DOW (NOT *IN11)
C SELECT
C WHEN (CODE>*BLANKS)
C CustID CHAIN CustLF
C MOVE CustID cust_id
C EVAL *IN11=*ON
C ENDSL
C LEAVE
C ENDDO
C ENDSR
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels