Parsing xml

Marc De Roover omnis1 at arcict.com
Mon Nov 12 15:12:24 EST 2018


Arnaud,

I would check with Omnis Software.

 From our experience OXML will get you further.

Regards,



Marc


On 12 Nov 2018, at 18:14, A Blanchard via omnisdev-en wrote:

>  Hello Michael
> Thanks for your help.
> I think this method is suitable for simple files with a single level 
> of tag.My files are more complicated with multiple levels.I heard 
> about oxml but I can not find any documentation.Have you got some ?
> Thank you
>
>     Le lundi 12 novembre 2018 à 17:11:40 UTC+1, Michael Mantkowski 
> <michaelj at clientrax.com> a écrit :
>
>  Hi Arnaud,
>
> I am sure there are several ways to go about creating an XML file 
> based on
> the complexity of what you need.  Below is a very simple method I 
> have to
> create a list of Inventory Items for a 3rd party service that our 
> clients
> can subscribe to.
>
> Whenever I need to support a vendor's requirements I have them send me 
> a
> template XML file of what they need then break it done into the most
> efficient way to recreate it substituting our data where needed.  In 
> this
> case I needed to account for special characters that could appear in 
> the
> inventory items descriptions and escape them out before sending the 
> XML.
>
> Hope that helps.
>
> Michael
>
> ;  Make Products XML Text
>
> ;  Get Inventory List
> Begin reversible block
>     Set current list lvInventoryList
>     Set main file {INVENT}
> End reversible block
> Define list {INV_RSN,ITEM_NO,INV_DESC,InvMfgBarCode}
> Set search as calculation {(InvDiagItem=0)&(InvSrvInv=1)}
> Build list from file on ITEM_NO (Use search)
>
> Calculate lvProducts as ''
> ;  Add Header
> Calculate lvDateTime as con(jst(#D,'D:y-M-D'),' ',jst(#D,'T:H:N:S'))
> Do method ----getNewGUID Returns lvGUID
> Calculate lvProducts as con(lvProducts,'<?xml version="1.0"
> encoding="utf-16"?>',kCr)
> Calculate lvProducts as con(lvProducts,'<syncclinicproducts
> syncdate="',lvDateTime,'" syncguid="',lvGUID,'"
> clinicservername="',ctComputerName,'">',kCr)
> Calculate lvProducts as con(lvProducts,'  <clinic
> clinicguid="5408d8d5-864b-4560-8b61-b62cd263a530" 
> clinicname="',P_NAME,'"
> />',kCr)
> Calculate lvProducts as con(lvProducts,'  <products>',kCr)
> For each line in list from 1 to #LN step 1
>     Load from list
>     ;  Add Line Items
>     Calculate INV_DESC as replaceall(INV_DESC,'&','&')
>     Calculate INV_DESC as replaceall(INV_DESC,'<','<')
>     Calculate INV_DESC as replaceall(INV_DESC,'>','>')
>     Calculate INV_DESC as replaceall(INV_DESC,"'",''')
>     Calculate INV_DESC as replaceall(INV_DESC,'"','"')
>     Calculate lvProducts as con(lvProducts,'              
> <product
> name="',INV_DESC,'" barcode="',InvMfgBarCode,'" id="',INV_RSN,'"
> displayid="',ITEM_NO,'" hospitalid=""',' />',kCr)
> End For
> ;  Add Footer
> Calculate lvProducts as con(lvProducts,'  </products>',kCr)
> Calculate lvProducts as con(lvProducts,'</syncclinicproducts>',kCr)
>
> Quit method lvProducts
>
> *********************************************************************
> Michael Mantkowski
> ClienTrax Software
> 1-614-875-2245
> *********************************************************************
>
>
> -----Original Message-----
> From: omnisdev-en <omnisdev-en-bounces at lists.omnis-dev.com> On Behalf 
> Of A
> Blanchard via omnisdev-en
> Sent: Monday, November 12, 2018 11:00 AM
> To: Omnisliste <omnisdev-en at lists.omnis-dev.com>
> Cc: A Blanchard <infomni at yahoo.fr>
> Subject: Parsing xml
>
> Hello
> I need to generat xml file for a customer using OS$8.0.3 Is it 
> possible to
> have an example ?
> Thank you very much ?
> Arnaud Blanchard
> _____________________________________________________________
> Manage your list subscriptions at http://lists.omnis-dev.com Start a 
> new
> message -> mailto:omnisdev-en at lists.omnis-dev.com
>
>
> _____________________________________________________________
> Manage your list subscriptions at http://lists.omnis-dev.com
> Start a new message -> mailto:omnisdev-en at lists.omnis-dev.com



More information about the omnisdev-en mailing list