Home » Developer & Programmer » JDeveloper, Java & XML » Problem in generating a XML document (Oracle 11g)
Problem in generating a XML document [message #533048] |
Sun, 27 November 2011 21:16 |
|
suedemby
Messages: 9 Registered: October 2011 Location: USA
|
Junior Member |
|
|
I need to generate a document that include fields provided in following.
CREATE TABLE t
(x_customer_po VARCHAR2(20 BYTE),
x_accessory_code VARCHAR2(3 BYTE),
x_install_loc CHAR(3 BYTE));
INSERT INTO apps.T
VALUES('N45882','D0C','MFG');
INSERT INTO apps.T
VALUES('N45882','K0B','MFG');
INSERT INTO apps.T
VALUES('N45882','LK2','MFG');
INSERT INTO apps.T
VALUES('N45882','R0B','MFG');
INSERT INTO apps.T
VALUES('N45883','B0A','MFG');
INSERT INTO apps.T
VALUES('N45883','M0E','MFG');
INSERT INTO apps.T
VALUES('N45883','R0B','MFG');
INSERT INTO apps.T
VALUES('N45884','D0A','MFG');
INSERT INTO apps.T
VALUES('N45884','K0B','MFG');
INSERT INTO apps.T
VALUES('N45884','LK2','MFG');
INSERT INTO apps.T
VALUES('N45884','Q0F','MFG');
INSERT INTO apps.T
VALUES('N45885','D00','MFG');
INSERT INTO apps.T
VALUES('N45885','H8B','MFG');
INSERT INTO apps.T
VALUES('N45886','D0A','MFG');
INSERT INTO apps.T
VALUES('N45886','D0B','MFG');
INSERT INTO apps.T
VALUES('N45886','OYF','MFG');
INSERT INTO apps.T
VALUES('N45887',NULL,'MFG');
INSERT INTO apps.T
VALUES('N45888',NULL,'MFG');
COMMIT;
select XMLSerialize
( DOCUMENT(
SELECT XMLAGG (
XMLELEMENT ( "OrderAcknowledgments",
XMLELEMENT ("Sender",
XMLATTRIBUTES (decode (fnd_global.CONC_REQUEST_ID,-1,999999999) AS "ID",
'Cars' AS "Name" )
), --Sender
XMLELEMENT ( "DateTime",REPLACE (to_char(systimestamp,'YYYY-MM-DD HH24:MI:SS.FF1'),' ','T') ),
XMLELEMENT ("Acknowledgments",
(SELECT xmlagg(
XMLELEMENT ("Acknowledgment",
XMLELEMENT ( "Vehicle",
XMLELEMENT ("CustomerPONum", x_customer_po) ,
XMLELEMENT ("Options",
XMLAGG (
XMLELEMENT ("Option",
XMLForest ( x_accessory_code AS "Code",
x_install_loc AS "InstallLocation")
) --"Option"
)
-- WHERE t.X_CUSTOMER_PO = x_customer_po
--GROUP BY x_customer_po
--xmlag
) --options
)--vehicles
) --ack
)--xmlagg
FROM t
GROUP BY x_customer_po
) ----select
) --acks
) --orderacks
)--xmlagg
FROM dual ) --select
)--document
FROM dual;
How can I get the output as formated XML?
--output:
<OrderAcknowledgments><Sender ID="999999999" Name="Cars"></Sender><DateTime>2011-11-27T22:00:14.3</DateTime><Acknowledgments><Acknowledgment><Vehicle><CustomerPONum>N45882 </CustomerPONum><Options><Option><Code>D0C</Code><InstallLocation>MFG</InstallLocation></Option><Option><Code>R0B</Code> <InstallLocation>MFG</InstallLocation></Option><Option><Code>LK2</Code><InstallLocation>MFG</InstallLocation></Option><Option ><Code>K0B</Code><InstallLocation>MFG</InstallLocation></Option></Options></Vehicle></Acknowledgment><Acknowledgment><Vehicle ><CustomerPONum>N45883</CustomerPONum><Options><Option><Code>B0A</Code><InstallLocation>MFG</InstallLocation></Option><Option ><Code>R0B</Code><InstallLocation>MFG</InstallLocation></Option><Option><Code>M0E</Code><InstallLocation>MFG</InstallLocation ></Option></Options></Vehicle></Acknowledgment><Acknowledgment><Vehicle><CustomerPONum>N45884</CustomerPONum><Options><Option ><Code>D0A</Code><InstallLocation>MFG</InstallLocation></Option><Option><Code>Q0F</Code><InstallLocation>MFG</InstallLocation ></Option><Option><Code>LK2</Code><InstallLocation>MFG</InstallLocation></Option><Option><Code>K0B</Code><InstallLocation >MFG</InstallLocation></Option></Options></Vehicle></Acknowledgment><Acknowledgment><Vehicle><CustomerPONum>N45885</CustomerPONum ><Options><Option><Code>D00</Code><InstallLocation>MFG</InstallLocation></Option><Option><Code>H8B</Code><InstallLocation >MFG</InstallLocation></Option></Options></Vehicle></Acknowledgment><Acknowledgment><Vehicle><CustomerPONum>N45886</CustomerPONum ><Options><Option><Code>D0A</Code><InstallLocation>MFG</InstallLocation></Option><Option><Code>OYF</Code><InstallLocation >MFG</InstallLocation></Option><Option><Code>D0B</Code><InstallLocation>MFG</InstallLocation></Option></Options></Vehicle ></Acknowledgment><Acknowledgment><Vehicle><CustomerPONum>N45887</CustomerPONum><Options><Option><InstallLocation>MFG</InstallLocation ></Option></Options></Vehicle></Acknowledgment><Acknowledgment><Vehicle><CustomerPONum>N45888</CustomerPONum><Options><Option ><InstallLocation>MFG</InstallLocation></Option></Options></Vehicle></Acknowledgment></Acknowledgments></OrderAcknowledgments >
|
|
|
|
|
|
|
|
Goto Forum:
Current Time: Mon Feb 03 17:20:51 CST 2025
|