[Migrated content. Thread originally posted on 18 February 2008]
Hi,Me again, I have successfully created a rountine to handle XML strings back and forth using the "MSXML2.DOMdocument60" and all appeared to be working fine until I tried to use it on the server as a result from a client call using Acuconnect distributed processing. If I run this on the server directly it works fine. I am not using AcuThin.
When I try to append a child node or a sibling I get an unspecified MAV on the client (no details on either server). I have put set configuration items at every point in the code below and gets to the "MODIFY XMLNODE APPENDCHILD(XMLCHILDNODE) GIVING XMLNODE" and stops, as in no futher execution not even and object exception (ie declaratives) gets it.
Does anyone know what is causing this? I have tried it with version 7.0, 7.2 and 8.0 with the same results. both the servers are windows 2003, one is setup as a web server running iis6 and the acuGT automation server as well as the runtime, I have an asp web page that uses the acugt automation server which returns no result or error and I have an aucocobol program which calls the server (via acuconnect) which does fail but with no detail apart from the the failing line number in the code which is the "MODIFY" statement above.
Is their some restriction on acuconnect? Is their some other setting I need to set for acuconnect on the server? I have even trolled through all the permissions and have not found anything.
Or is this being caused by some failure in the MSXML2/6.DLL on the server and if so where do I look?
Here is the code for adding a child
* Parse String
CALL "C$PARAMSIZE" USING 2 GIVING PARAM-SIZE
MOVE var-2(1:PARAM-SIZE) TO XMLSTRING
CREATE DOMDocument60 of msxml2 HANDLE IN XMLDOM
MODIFY XMLDOM @ASYNC = 1
MODIFY XMLDOM LOADXML = XMLSTRING GIVING WS-ERROR
IF WS-ERROR NOT = 1
EXIT PROGRAM RETURNING WS-ERROR
END-IF
EXIT PROGRAM RETURNING XMLDOM
........
* Add child
CALL "C$PARAMSIZE" USING 3 GIVING PARAM-SIZE
MOVE var-3(1:PARAM-SIZE) TO XMLFIELDNAME
CALL "C$PARAMSIZE" USING 2 GIVING PARAM-SIZE
MOVE var-2-HANDLE TO XMLNODE
INQUIRE XMLNODE parentNode IN XMLPARENTNODE
IF XMLPARENTNODE = 0
MOVE var-2-HANDLE TO XMLDOM
INQUIRE XMLDOM DOCUMENTELEMENT IN XMLNODE
MODIFY XMLDOM CREATENODE(1, XMLFIELDNAME, "") GIVING XMLCHILDNODE
MODIFY XMLNODE APPENDCHILD(XMLCHILDNODE) GIVING XMLNODE
ELSE
INQUIRE XMLNODE OWNERDOCUMENT IN XMLDOM
MODIFY XMLDOM CREATENODE(1, XMLFIELDNAME, "") GIVING XMLCHILDNODE
MODIFY XMLNODE APPENDCHILD(XMLCHILDNODE) GIVING XMLNODE
END-IF
IF XMLNODE NOT = 0
IF NUM-PARAM = 4
CALL "C$PARAMSIZE" USING 4 GIVING PARAM-SIZE
MOVE var-4(1:PARAM-SIZE) TO XMLFIELDVALUE
MODIFY XMLNODE @TEXT = XMLFIELDVALUE
END-IF
END-IF
EXIT PROGRAM RETURNING XMLNODE



