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