Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

xml with multi node

kaericnApr 16 2019 — edited Apr 17 2019

Dear community,

In the below sample how we can list out the multi-node valude

we get this error

The required out is

661-01727

661-01727

with xml_str as (

select '<?xml version = ''1.0'' encoding = ''UTF-8''?>

<EVENT spec="IDL:com/sapamr_rfcevents/RfcCallEvents:1.0#Z_BAPI_UPDT_SERV_NOTIFICATION">

   <eventHeader>

      <objectName/>

      <objectKey/>

      <eventName/>

      <eventId/>

   </eventHeader>

   <TAB_DETAIL_DATA>

      <ZNEWFLAG>X</ZNEWFLAG>

      <FENUM>2</FENUM>

      <BAUTL>661-01727</BAUTL>

      <OTEIL/>

      <FECOD>KBB</FECOD>

      <URCOD>B08</URCOD>

      <ZCOMPMDF>A</ZCOMPMDF>

      <ZOPREPL/>

      <ZWRNCOV>LP</ZWRNCOV>

      <ZWRNREF/>

      <ZNEWPS>C07XMAAEJCLD</ZNEWPS>

      <ZOLDPN/>

      <ZOLDPD/>

      <ZOLDPS>C07XMAACJCLD</ZOLDPS>

      <MAILINFECOD/>

      <ZUNITPR/>

      <ZNEWPD/>

      <ZNEWPN/>

      <ZABUSE/>

      <ZRPS>S</ZRPS>

      <ZEXKGB/>

      <ZKGBMM/>

      <ZINSTS>000</ZINSTS>

      <ZACKBB/>

      <ZCHKOVR/>

      <ZSNDB/>

      <ZNOTAFISCAL/>

      <ZCONSGMT/>

      <ZPRTCONS/>

      <ZZRTNTRNO/>

      <ZZRTNCAR/>

      <ZZINSPECT/>

      <ZZPR_OPT/>

   </TAB_DETAIL_DATA>

   <TAB_DETAIL_DATA>

      <ZNEWFLAG>X</ZNEWFLAG>

      <FENUM>1</FENUM>

      <BAUTL>661-01727</BAUTL>

      <OTEIL/>

      <FECOD>KBB</FECOD>

      <URCOD>B08</URCOD>

      <ZCOMPMDF>A</ZCOMPMDF>

      <ZOPREPL/>

      <ZWRNCOV>LP</ZWRNCOV>

      <ZWRNREF/>

      <ZNEWPS>C07XMAAEJCLD</ZNEWPS>

      <ZOLDPN/>

      <ZOLDPD/>

      <ZOLDPS>C07XMAACJCLD</ZOLDPS>

      <MAILINFECOD/>

      <ZUNITPR/>

      <ZNEWPD/>

      <ZNEWPN/>

      <ZABUSE/>

      <ZRPS>S</ZRPS>

      <ZEXKGB/>

      <ZKGBMM/>

      <ZINSTS>000</ZINSTS>

      <ZACKBB/>

      <ZCHKOVR/>

      <ZSNDB/>

      <ZNOTAFISCAL/>

      <ZCONSGMT/>

      <ZPRTCONS/>

      <ZZRTNTRNO/>

      <ZZRTNCAR/>

      <ZZINSPECT/>

      <ZZPR_OPT/>

   </TAB_DETAIL_DATA>

   <TAB_HEADER_DATA>

      <QMNUM>030334920069</QMNUM>

      <ZGSXREF>CONSUMER</ZGSXREF>

      <ZVANTREF>G338005317</ZVANTREF>

      <ZSHIPER/>

      <ZSHPRNO/>

      <ZRVREF/>

      <ZTECHID>4HQ2OD6C19</ZTECHID>

      <ZADREPAIR/>

      <ZZKATR7/>

   </TAB_HEADER_DATA>

</EVENT>

' as xml_txt

from dual

)

--select * from xml_str;

SELECT EXTRACTVALUE(xmltype(xml_txt), '/EVENT/TAB_DETAIL_DATA/BAUTL/text()')

FROM xml_str;

ORA-19025: EXTRACTVALUE returns value of only one node

19025. 00000 -  "EXTRACTVALUE returns value of only one node"

*Cause:    Given XPath points to more than one node.

*Action:   Rewrite the query so that exactly one node is returned.

Comments
Post Details
Added on Apr 16 2019
1 comment
3,049 views