Put this policy on output.
<rule>
<description>Update CostCenter SOAP doc</description>
<comment name="author" xml:space="preserve">Maqsood Ali Bhatti</comment>
<comment name="version" xml:space="preserve">5</comment>
<comment name="lastchanged" xml:space="preserve">Sep 20, 2016</comment>
<conditions>
<and>
<if-operation mode="regex" op="equal">modify</if-operation>
<if-op-attr name="customCommand" op="changing" />
<if-op-attr mode="regex" name="customCommand" op="equal">updateCostCenter.*</if-op-attr>
</and>
</conditions>
<actions>
<!-- add operaiton data -->
<do-for-each>
<arg-node-set>
<token-op-attr name="customCommand" />
</arg-node-set>
<arg-actions>
<do-set-local-variable name="local.sub.etp.Command" scope="policy">
<arg-string>
<token-local-variable name="current-node" />
</arg-string>
</do-set-local-variable>
<do-set-local-variable name="local.sub.etp.Command" scope="policy">
<arg-string>
<token-local-variable name="current-node" />
</arg-string>
</do-set-local-variable>
<do-set-local-variable name="local.sub.etp.Command" scope="policy">
<arg-string>
<token-xpath expression="substring-after($local.sub.etp.Command,'updateCostCenter:')" />
</arg-string>
</do-set-local-variable>
<do-set-local-variable name="local.sub.etp.Ttext" scope="policy">
<arg-string>
<token-xpath expression="substring-before($local.sub.etp.Command,'#')" />
</arg-string>
</do-set-local-variable>
<do-set-local-variable name="local.sub.etp.ExtCode" scope="policy">
<arg-string>
<token-xpath expression="substring-after($local.sub.etp.Command,'#')" />
</arg-string>
</do-set-local-variable>
<do-set-local-variable name="local.otp.SOAP" scope="policy">
<arg-node-set>
<token-xml-parse>
<token-text xml:space="preserve"> <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:uri="uri:FlexForce" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"> <soapenv:Header/> <soapenv:Body> <uri:wsdlUpdateTextItems soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <apiKey xsi:type="xsd:string">$local.otp.APIKey$</apiKey> <TextItems xsi:type="flex:TextItems" soapenc:arrayType="flex:TextItem[]" xmlns:flex="http://app.quinyx.com/soap/FlexForce"> <item> <tag>D</tag> <ttext>$local.sub.etp.Ttext$</ttext> <extCode>$local.sub.etp.ExtCode$</extCode> </item> </TextItems> </uri:wsdlUpdateTextItems> </soapenv:Body> </soapenv:Envelope>
</token-text>
</token-xml-parse>
</arg-node-set>
</do-set-local-variable>
<!-- add operaiton data -->
<do-trace-message>
<arg-string>
<token-text xml:space="preserve">=> </token-text>
<token-xml-serialize>
<token-local-variable name="local.otp.SOAP" />
</token-xml-serialize>
</arg-string>
</do-trace-message>
<do-append-xml-element expression=".." name="operation-data" />
<!--
<do-set-xml-attr expression="../operation-data" name="url">
<arg-string>
<token-local-variable name="local.otp.URL"/>
</arg-string>
</do-set-xml-attr>-->
<do-set-xml-attr expression="../operation-data" name="src-dn">
<arg-string>
<token-local-variable name="src-dn" />
</arg-string>
</do-set-xml-attr>
<do-set-xml-attr expression="../operation-data" name="query-type">
<arg-string>
<token-text xml:space="preserve">update-store-costcenter:</token-text>
<token-local-variable name="current-node" />
</arg-string>
</do-set-xml-attr>
<do-clone-xpath dest-expression=".." src-expression="$local.otp.SOAP" />
</arg-actions>
</do-for-each>
<do-strip-xpath expression="self::modify" />
</actions>
</rule>
Comments