ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WINHTTP PIC X(128) VALUE "WinHttp.WinHttpRequest.5.1".
01 xTraffic-Conditions PIC X(1024).
01 WEBSERVICE USAGE OBJECT REFERENCE COM.
01 METODO PIC X(256) VALUE "POST".
01 ENDPOINT PIC X(256) VALUE "https://192.168.0.25/axis2/services/BrueBoxService".
01 LIGACAO PIC X(256) VALUE "FALSE". *> comunicação -> True = asyn / False = sync
*
01 OP11 PIC X(256) VALUE "Connection" .
01 OP12 PIC X(256) VALUE "Keep-Alive".
01 OP21 PIC X(256) VALUE "SOAPAction" .
01 OP22 PIC X(256) VALUE "ChangeOperation".
01 OP31 PIC X(256) VALUE "Content-Type" .
01 OP32 PIC X(256) VALUE "text/xml;charset=UTF-8".
01 OP41 PIC X(256) VALUE "Accept-Encoding" .
01 OP42 PIC X(256) VALUE "gzip,deflate".
* 01 OP51 PIC X(256) VALUE "Authorization" .
* 01 OP52 PIC X(256) VALUE "Basic user:123".
01 OP99 PIC X(256) VALUE SPACES.
01 RESPOSTA PIC X(8192).
01 resultado1 PIC X(5).
01 resultado2 PIC X(5).
01 long pic 9(5).
01 WSVALOR PIC 9(06).
01 wsvaleur pic 9(4)v99.
01 wsvalcent pic 9(6).
PROCEDURE DIVISION.
MAIN SECTION.
MAIN-00.
MOVE "TEXT" OF CmPrcVenda TO wsvaleur.
IF wsvaleur = ZERO
MOVE 8 TO "TEXT" OF CmPrcVenda
MOVE 8 TO wsvaleur.
compute wsvalcent = wsvaleur * 100.
MOVE wsvalcent TO "CAPTION" OF CmFrValLinha.
MOVE wsvalcent TO WSVALOR.
MOVE POW-TRUE TO "EmitCompact" OF ChilkatXml1. *> PARA NÃO TER CR/LF NO XML
MOVE "soapenv:Envelope" TO "Tag" OF ChilkatXml1
INVOKE ChilkatXml1 "AddAttribute" USING "xmlns:soapenv" "http://schemas.xmlsoap.org/soap/envelope/" RETURNING ReturnValue
INVOKE ChilkatXml1 "AddAttribute" USING "xmlns:bru" "http://www.glory.co.jp/bruebox.xsd" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateChildContent" USING "soapenv:Header" " "
INVOKE ChilkatXml1 "UpdateChildContent" USING "soapenv:Body|bru:ChangeRequest|bru:Id" "?"
INVOKE ChilkatXml1 "UpdateChildContent" USING "soapenv:Body|bru:ChangeRequest|bru:SeqNo" "?"
INVOKE ChilkatXml1 "UpdateChildContent" USING "soapenv:Body|bru:ChangeRequest|bru:SessionID" "?"
INVOKE ChilkatXml1 "UpdateChildContent" USING "soapenv:Body|bru:ChangeRequest|bru:Amount" WSVALOR *> valor a pagar em centimos
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Option" 1 "bru:type" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Cash" 1 "bru:type" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Cash" 1 "bru:note_destination" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Cash" 1 "bru:coin_destination" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Cash|Denomination" 1 "bru:cc" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Cash|Denomination" 1 "bru:fv" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Cash|Denomination" 1 "bru:rev" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateAttrAt" USING "soapenv:Body|bru:ChangeRequest|Cash|Denomination" 1 "bru:devid" "?" RETURNING ReturnValue
INVOKE ChilkatXml1 "UpdateChildContent" USING "soapenv:Body|bru:ChangeRequest|Cash|Denomination|bru:Piece" "?"
INVOKE ChilkatXml1 "UpdateChildContent" USING "soapenv:Body|bru:ChangeRequest|Cash|Denomination|bru:Status" "?"
INVOKE ChilkatXml1 "GetXml" RETURNING xTraffic-Conditions
display xTraffic-Conditions
STOP " VAI FAZER CREATE OBJECT"
INVOKE COM "CREATE-OBJECT" USING WINHTTP RETURNING WEBSERVICE.
STOP " VAI FAZER WEBSERVICE OPEN"
INVOKE WEBSERVICE "OPEN" USING METODO ENDPOINT LIGACAO.
*
INVOKE WEBSERVICE "SetRequestHeader" USING OP11 OP12
INVOKE WEBSERVICE "SetRequestHeader" USING OP21 OP22
INVOKE WEBSERVICE "SetRequestHeader" USING OP31 OP32
INVOKE WEBSERVICE "SetRequestHeader" USING OP41 OP42
* INVOKE WEBSERVICE "SetRequestHeader" USING OP51 OP52
*
STOP " VAI FAZER WEBSERVICE send".
INVOKE WEBSERVICE "send" USING xTraffic-Conditions.
STOP " VAI FAZER WEBSERVICE get-Responsetext"
INVOKE WEBSERVICE "get-Responsetext" RETURNING RESPOSTA.
display RESPOSTA.
EXIT PROGRAM