[Stackoverflow] [Progress OpenEdge ABL] XML -> Progress 10 DB temp-table

Status
Not open for further replies.
S

Steve Gooch

Guest
Here is what I am trying, didn't even get to the point of looking at the temp table yet, can't even create it properly:

4GL Code:

Code:
DEFINE VARIABLE cSourceType             AS CHARACTER NO-UNDO.
DEFINE VARIABLE cReadMode               AS CHARACTER NO-UNDO.
DEFINE VARIABLE lOverrideDefaultMapping AS LOGICAL   NO-UNDO.
DEFINE VARIABLE cFile                   AS CHARACTER NO-UNDO.
DEFINE VARIABLE cSchemaLocation         AS CHARACTER NO-UNDO.
DEFINE VARIABLE cFieldTypeMapping       AS CHARACTER NO-UNDO.
DEFINE VARIABLE cVerifySchemaMode       AS CHARACTER NO-UNDO.
DEFINE VARIABLE lRetOK                  AS LOGICAL   NO-UNDO.
DEFINE VARIABLE ttOrd                   AS HANDLE    NO-UNDO.

CREATE TEMP-TABLE ttOrd.
ASSIGN
  cSourceType             = "file"
  cFile                   = "ORD1.xml" 
  cReadMode               = "empty"
  cSchemaLocation         = "Orders.xsd"
  lOverrideDefaultMapping = ?
  cFieldTypeMapping       = ?
  cVerifySchemaMode       = ?.

lRetOK = ttOrd:READ-XML(cSourceType, cFile, cReadMode, cSchemaLocation,
  lOverrideDefaultMapping, cFieldTypeMapping, cVerifySchemaMode).

ERROR I GET:

Invalid inner element name 'ORDER' for Temp-Table definition. (14748) Unable to create Temp-Table or dataset schema from XML Schema. (13032) Procedure complete. Press space bar to continue.

Orders.xsd file:

Code:
<?xml version="1.0" encoding="UTF-8"?>
   <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
         <!-- XML Schema Generated from XML Document on Mon Mar 08 2021 10:09:16 GMT-0500 (Eastern Standard Time) -->
         <!-- with XmlGrid.net Free Online Service http://xmlgrid.net -->
         <xs:element name="EXPORTEDORDERS">
               <xs:complexType>
                     <xs:sequence>
                           <xs:element name="ORDERS">
                                 <xs:complexType>
                                       <xs:sequence>
                                             <xs:element name="ORDER" maxOccurs="unbounded">
                                                   <xs:complexType>
                                                         <xs:sequence>
                                                               <xs:element name="CUSTNO" type="xs:string"></xs:element>
                                                               <xs:element name="ORDERNO" type="xs:int"></xs:element>
                                                               <xs:element name="RELEASE_DT" type="xs:string"></xs:element>
                                                               <xs:element name="FULLNAME" type="xs:string"></xs:element>
                                                               <xs:element name="PONUM" type="xs:int"></xs:element>
                                                               <xs:element name="DESCR"></xs:element>
                                                               <xs:element name="TOT_AMT" type="xs:double"></xs:element>
                                                               <xs:element name="BO_AMT" type="xs:int"></xs:element>
                                                               <xs:element name="COMMITAMT" type="xs:int"></xs:element>
                                                               <xs:element name="TERMS" type="xs:string"></xs:element>
                                                               <xs:element name="STATUS" type="xs:string"></xs:element>
                                                               <xs:element name="SALESREP" type="xs:string"></xs:element>
                                                               <xs:element name="SALESEMAIL"></xs:element>
                                                               <xs:element name="INVNO"></xs:element>
                                                               <xs:element name="GROSS" type="xs:int"></xs:element>
                                                               <xs:element name="FREIGHT" type="xs:int"></xs:element>
                                                               <xs:element name="INS" type="xs:int"></xs:element>
                                                               <xs:element name="TAX" type="xs:int"></xs:element>
                                                               <xs:element name="COD_CHG" type="xs:int"></xs:element>
                                                               <xs:element name="ORDER_DT" type="xs:string"></xs:element>
                                                               <xs:element name="CLOSED_DT"></xs:element>
                                                               <xs:element name="POST_DT"></xs:element>
                                                               <xs:element name="INV_DT"></xs:element>
                                                               <xs:element name="SHIP_DT" type="xs:string"></xs:element>
                                                               <xs:element name="SHIP_METH" type="xs:string"></xs:element>
                                                               <xs:element name="WH_NUM"></xs:element>
                                                               <xs:element name="DIV_NUM" type="xs:int"></xs:element>
                                                               <xs:element name="SH_REL_DT"></xs:element>
                                                               <xs:element name="REL_WH_DT"></xs:element>
                                                               <xs:element name="CURR_CODE" type="xs:string"></xs:element>
                                                               <xs:element name="EXCH_RATE" type="xs:int"></xs:element>
                                                               <xs:element name="LAST_MOD_DT" type="xs:string"></xs:element>
                                                               <xs:element name="FLEX_FLD1" type="xs:int"></xs:element>
                                                               <xs:element name="FLEX_FLD2" type="xs:int"></xs:element>
                                                               <xs:element name="FLEX_FLD3" type="xs:int"></xs:element>
                                                               <xs:element name="FLEX_FLD4" type="xs:string"></xs:element>
                                                               <xs:element name="FLEX_FLD5"></xs:element>
                                                               <xs:element name="FLEX_FLD6"></xs:element>
                                                               <xs:element name="FLEX_FLD7"></xs:element>
                                                               <xs:element name="FLEX_FLD8"></xs:element>
                                                               <xs:element name="FLEX_FLD9"></xs:element>
                                                               <xs:element name="PENDING_NOTES"></xs:element>
                                                               <xs:element name="RELEASE_NOTES"></xs:element>
                                                         </xs:sequence>
                                                   </xs:complexType>
                                             </xs:element>
                                       </xs:sequence>
                                 </xs:complexType>
                           </xs:element>
                     </xs:sequence>
               </xs:complexType>
         </xs:element>
   </xs:schema>

ORD1.xml File:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<EXPORTEDORDERS>
    <ORDERS>
        <ORDER>
            <CUSTNO>V70-50200022BL01</CUSTNO>
            <ORDERNO>297740</ORDERNO>
            <RELEASE_DT>09-24-2020</RELEASE_DT>
            <FULLNAME>GETPAID Administrator</FULLNAME>
            <PONUM>9010066064</PONUM>
            <DESCR></DESCR>
            <TOT_AMT>7066.50</TOT_AMT>
            <BO_AMT>0.00</BO_AMT>
            <COMMITAMT>0.00</COMMITAMT>
            <TERMS>NET 60</TERMS>
            <STATUS>APR-REL</STATUS>
            <SALESREP>NONE</SALESREP>
            <SALESEMAIL></SALESEMAIL>
            <INVNO></INVNO>
            <GROSS>3660.00</GROSS>
            <FREIGHT>0.00</FREIGHT>
            <INS>0.00</INS>
            <TAX>0.00</TAX>
            <COD_CHG>0.00</COD_CHG>
            <ORDER_DT>03-02-2020</ORDER_DT>
            <CLOSED_DT></CLOSED_DT>
            <POST_DT></POST_DT>
            <INV_DT></INV_DT>
            <SHIP_DT>04-21-2020</SHIP_DT>
            <SHIP_METH>WSI</SHIP_METH>
            <WH_NUM></WH_NUM>
            <DIV_NUM>0</DIV_NUM>
            <SH_REL_DT></SH_REL_DT>
            <REL_WH_DT></REL_WH_DT>
            <CURR_CODE>USD</CURR_CODE>
            <EXCH_RATE>0.00</EXCH_RATE>
            <LAST_MOD_DT>03-02-2020</LAST_MOD_DT>
            <FLEX_FLD1>0.00</FLEX_FLD1>
            <FLEX_FLD2>0.00</FLEX_FLD2>
            <FLEX_FLD3>0.00</FLEX_FLD3>
            <FLEX_FLD4>GLOVIA</FLEX_FLD4>
            <FLEX_FLD5></FLEX_FLD5>
            <FLEX_FLD6></FLEX_FLD6>
            <FLEX_FLD7></FLEX_FLD7>
            <FLEX_FLD8></FLEX_FLD8>
            <FLEX_FLD9></FLEX_FLD9>
            <PENDING_NOTES></PENDING_NOTES>
            <RELEASE_NOTES></RELEASE_NOTES>
        </ORDER>
    </ORDERS>
</EXPORTEDORDERS>

Continue reading...
 
Status
Not open for further replies.
Top