This service uses files that have been shipped in the JSM instance folder.

     Function Options(*DIRECT)
     *
     Define Field(#PRDID) Type(*CHAR) Length(10)
     Define Field(#PRDAVL) Type(*CHAR) Length(200)
     Define Field(#PRDDSC) Type(*CHAR) Length(250)
     Define Field(#PRDAMTMP) Type(*DEC) Length(10) Decimals(2)
     Define Field(#PRDAMTYP) Type(*DEC) Length(10) Decimals(2)
     Define Field(#PRDAMTB10) Type(*DEC) Length(10) Decimals(2)
     Define Field(#PRDAMTB20) Type(*DEC) Length(10) Decimals(2)
     Define Field(#PRDAMTB30) Type(*DEC) Length(10) Decimals(2)
     *
     Define Field(#TEXT) Type(*CHAR) Length(30)
     Def_List Name(#LST1) Fields(#TEXT) Type(*WORKING)
     *
     Define Field(#COL1) Type(*CHAR) Length(10)
     Define Field(#COL2) Type(*CHAR) Length(10)
     Define Field(#COL3) Type(*DEC) Length(10) Decimals(2)
     Def_List Name(#LST2) Fields(#COL1 #COL2 #COL3) Type(*WORKING)
     *
     #PRDID := 'CORD443'
     #PRDAVL := 'Available in 24 hours'
     #PRDDSC := '18V Compact Hammer. Power output 350W'
     *
     #PRDAMTMP := 499.99
     #PRDAMTYP := 499.99
     #PRDAMTB10 := 431.99
     #PRDAMTB20 := 413.99
     #PRDAMTB30 := 359.99
     *
     * JSMX_BEGIN
     *
     Use Builtin(JSMX_BEGIN)
     *
     * JSMX_OPEN
     *
     Use Builtin(JSMX_OPEN) With_Args('LOCALHOST:7560') To_Get(#JSMXSTS #JSMXMSG #JSMXHDLE1)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * SERVICE_LOAD
     *
     #JSMXCMD := 'SERVICE_LOAD SERVICE(PDFDocumentService) TRACE(*YES)'
     Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * CREATE
     *
     #JSMXCMD := 'CREATE DOCUMENT(demo.pdf) CONTENT(demo-product.xml)'
     Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * ADD PRODUCT
     *
     #TEXT := '4-piece combo kit'
     Add_Entry To_List(#LST1)
     #TEXT := '3-speed transmission'
     Add_Entry To_List(#LST1)
     *
     #JSMXCMD := 'ADD CONTENT(PRODUCT) SERVICE_EXCHANGE(*FIELD)'
     Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG #LST1)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * ADD TABLE
     *
     #COL1 := 'Text 11'
     #COL2 := 'Text 12'
     #COL3 := 100.34
     Add_Entry To_List(#LST2)
     #COL1 := 'Text 21'
     #COL2 := 'Text 22'
     #COL3 := 145.67
     Add_Entry To_List(#LST2)
     *
     #JSMXCMD := 'ADD CONTENT(TABLE)'
     Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG #LST2)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * CLOSE
     *
     #JSMXCMD := 'CLOSE'
     Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 #JSMXCMD) To_Get(#JSMXSTS #JSMXMSG)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * SERVICE_UNLOAD
     *
     Use Builtin(JSMX_COMMAND) With_Args(#JSMXHDLE1 'SERVICE_UNLOAD') To_Get(#JSMXSTS #JSMXMSG)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * JSMX_CLOSE
     *
     Use Builtin(JSMX_CLOSE) With_Args(#JSMXHDLE1) To_Get(#JSMXSTS #JSMXMSG)
     Execute Subroutine(CHECK) With_Parms(#JSMXSTS #JSMXMSG)
     *
     * JSMX_END
     *
     Use Builtin(JSMX_END)
     *
     * SUB ROUTINES
     *
     Subroutine Name(CHECK) Parms((#JSMXSTS *RECEIVED) (#JSMXMSG *RECEIVED))
     *
     If Cond('#JSMXSTS *NE OK')
     *
     Use Builtin(JSMX_CLOSE) With_Args(#JSMXHDLE1) To_Get(#JSMXSTS #JSMXMSG)
     *
     Menu Msgtxt('Java service error has occurred')
     *
     Endif
     *
     Endroutine
  • No labels