ibmi-brunch-learn

Announcement

Collapse
No announcement yet.

FINAL code API

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • FINAL code API

    HEY GUYS HERE IS THE FULL CODE OF MY PROGRAM CALLING AN API
    THE ERROR THAT REMAINS IS :


    Decimal-data error occurred (C G D F).
    C
    The call to *LIBL/API1 ended in error (C G D F).



    HERE IS THE EPG PROG CODE :
    Code:
    [COLOR="Navy"]DDAY	S	2S	0		
    DTIMEE	S	6S	0		
    DVF	S	7S	0		
    DAMT	S	8P	0		
    DPOST	 	S	 	3P	0
    C	PTEST	 	PLIST	 	 
    C	PARM	ID	4		
    C	PARM	DAY	 		
    C	PARM	TIMEE	 		
    C	PARM	AN0	20		
    C	PARM	BR	4		
    C	PARM	VF	 		
    C	PARM	BRAND	4		
    C	PARM	REF	16		
    C	PARM	AMT	 		
    C	PARM	CODE	3		
    C	PARM	CURR	3		
    C	PARM	POST	 		
    C	PARM	REF2	1		
    C	PARM	INW	1		
    C	PARM	AMT2	 		
    C	PARM	CURR2	3		
    C	EVAL	WSID	=	''	 
    C	EVAL	DAY	=	10	 
    C	EVAL	TIMEE	=	101012	 
    C	EVAL	AN0	=	'	'
    C	EVAL	BR	=	AAAA'	 
    C	EVAL	VF	=	1010101	 
    c	eval	BRAND	=	AAAA'	 
    C	EVAL	REF	=	''	 
    C	EVAL	AMT	=	15644780	 
    C	EVAL	CODE	=	'010'	 
    C	EVAL	CURR	=	USD'	 
    C	EVAL	POST  = 1			
    C	EVAL	REF2  = 'N'			
    C	EVAL	INW  = 'N'			
    C	EVAL	CURR2 = 'USD'			
    C	EVAL	AMT2 = 15644780			
    C	CALL	APII1'    PTEST			
    [/COLOR]


    and here is the API code :

    Code:
    DFILE1	E	DS	 	 	EXTNAME(GHFILE11)	inz
    DDAY	 	S	2S	0	 	 
    DTIMEE	 	S	6S	0	 	 
    DVF	 	S	7S	0	 	 
    DAMT	 	S	8P	0	 	 
    DAMT2	 	S	8P	0	 	 
    DPOST	 	S	3P	0	 	 
    C	*Entry	PLIST	 	 		
    C	PARM	ID	4			
    C	PARM	DAY	 			
    C	PARM	TIMEE	 			
    C	PARM	AN0	20			
    C	PARM	BR	4			
    c	PARM	VF	 			
    c	PARM	BRAND	4			
    c	PARM	REF	16			
    C	PARM	AMT	 			
    C	PARM	CODE	3			
    C	PARM	CURR	3			
    C	PARM	POST	 			
    C	PARM	REF2	1
    C	PARM	INW	1
    C	PARM	CURR2	3
    C	PARM	AMT2	 
    
    c { HERE I HAVE A COLLECTION OF EVAL OPERATION IN ORDER TO WRITE TO
    THE PHYSICAL FILE}




    thanks in advance for ur help

  • #2
    Re: FINAL code API

    I think you swapped these two parms

    C PARM AMT2
    C PARM CURR2 3

    jamie
    All my answers were extracted from the "Big Dummy's Guide to the As400"
    and I take no responsibility for any of them.

    www.code400.com

    Comment


    • #3
      Re: FINAL code API

      Plus you are still passing non-packed numerics ! Try something like this, since you probably can't change the external file.


      Code:
           D Day                            2S 0
           D Timee                          6S 0
           D VF                             7S 0
           D
           D DayPack                        2P 0
           D TimeePack                      6P 0
           D VFPack                         7P 0
           D
           C                   Eval      DayPack = Day
           C                   Eval      TimeePack = Timee
           C                   Eval      VFPack    = VF
           C
           C     PTest         PList
           C                   PARM                    ID
           C                   PARM                    DayPack
           C                   PARM                    TimeePack 
           C                   PARM                    VFPack
           C*  etc ....
            
           D*    in the API program
           D DayPack                        2P 0
           D TimeePack                      6P 0
           D VFPack                         7P 0
           D
           C     *Entry        PList
           C                   Parm                    ID
           C                   Parm                    DayPack
           C                   Parm                    TimeePack
           C                   Parm                    VFPack
           C*   etc ....
           C                   Eval      Day   = DayPack
           C                   Eval      Timee = TTimeePack
           C                   Eval      VF    = VFPack
           C

      Comment

      Working...
      X