Quantcast
Channel: Baanboard.com
Viewing all articles
Browse latest Browse all 4216

XML File Parsing

$
0
0
Hi,

I have following structure of the xml file:

<?xml version="1.0"?>

-<SyncMaterialIssue1 releaseID="2" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:schemaLocation="http://schema.infor.com/2.13.x/InforOAGIS http://schema.infor.com/2.13.x/InforOAGIS/BODs/SyncMaterialIssue1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schema.infor.com/InforOAGIS/2">


-<ApplicationArea>


-<Sender>

<LogicalID>lid://infor.ln.dev-ln-900</LogicalID>

<ComponentID>erp</ComponentID>

<ConfirmationCode>OnError</ConfirmationCode>

</Sender>

<CreationDateTime>2017-07-13T14:26:52Z</CreationDateTime>

<BODID>infor-nid:infor:900:S_900:MN0000001:?MaterialIssue1&verb=Sync</BODID>

</ApplicationArea>


-<DataArea>


-<Sync>

<TenantID>infor</TenantID>

<AccountingEntityID>900</AccountingEntityID>

<LocationID>S_900</LocationID>


-<ActionCriteria>

<ActionExpression actionCode="Change"/>

</ActionCriteria>

</Sync>


-<MaterialIssue1>

<ProductionOrderNumber variationID="25">MN0000001</ProductionOrderNumber>


-<Lines>

<Item> KSRMFG002-R</Item>

<EstimatedQuantity>1</EstimatedQuantity>

<Operation>10</Operation>

</Lines>


-<Lines>

<Item> KSRMFG002-R</Item>

<EstimatedQuantity>0</EstimatedQuantity>

<Operation>20</Operation>

</Lines>


-<Lines>

<Item> KSRMFG002-R</Item>

<EstimatedQuantity>0</EstimatedQuantity>

<Operation>30</Operation>

</Lines>


-<Lines>

<Item> KSRMFG002-R</Item>

<EstimatedQuantity>0</EstimatedQuantity>

<Operation>40</Operation>

</Lines>

</MaterialIssue1>

</DataArea>

</SyncMaterialIssue1>

I want to read this file so that it reads all production orders and lines under each one of them. I have following code to read the same:


long ret_val,ret_val2, ret_val3, savepono, ret
domain tcmcs.str50 savepdno,saveitem,saveqnty


ret_val = xmlFindFirst ("ProductionOrderNumber", i.request)
ret_val2 = xmlGetDataElement(ret_val, "ProductionOrderNumber",savepdno)

ret_val3 = xmlGetRightSibling(ret_val)

select Max(ticst001.pono):savepono
from ticst001
where ticst001._index1 = {:savepdno}
selectdo
endselect

while ret_val3 <> 0
ret_val2 = xmlGetDataElement(ret_val, "Item",saveitem)
ret_val2 = xmlGetDataElement(ret_val, "Quantity",saveqnty)
savepono = savepono + 10
dal.new.object("ticst001")
dal.set.field("ticst001.pdno", savepdno)
dal.set.field("ticst001.pono", savepono)
dal.set.field("ticst001.sitm", saveitem)
dal.set.field("ticst001.ques", val(saveqnty))
dal.set.field("ticst001.opno", 10)
ret = dal.save.object("ticst001")

if ret = 0 then
commit.transaction()
else
abort.transaction()
endif
ret_val3 = xmlGetRightSibling(ret_val3)
endwhile

But system is not reading ProductionOrderNumber element at all. Also, can you please verify if rest of the other code is fine as well? Can you please suggest if you find any issue?


Thanks,
Anubhav

Viewing all articles
Browse latest Browse all 4216


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>