Script to generate XML files... problem with null values

Hello everyone,

I come here with a question that troubled me for some time. I have a script which I run in SQLPLUS every now and then to generate an XML file.

Problem is that the data that must be in XML format are not allways <>NULL and I need to hide empty tags < / tag >.

I'll post my script below and if you could help me with it, it would be really great!

Thanks for reading!
set long 20000000
set long 20000000
set linesize 32000
SET ECHO OFF
SET TRIMSPOOL on
SET HEADING OFF
SET PAGESIZE 50000
SET VERIFY OFF
SET FEEDBACK OFF
SET TERMOUT OFF
spool C:\test.xml
set serveroutput on
begin
  dbms_output.put_line('<?xml version="1.0" encoding="utf-8" ?>');
end;
/
SELECT
XMLELEMENT("ReportRoot",XMLATTRIBUTES('http://www.w3.org/2001/XMLSchema-instance' as "xmlns:xsi", 'http://www.w3.org/2001/XMLSchema' as "xmlns:xsd" , '1.0' as "Version",sysdate as "CreationDate",to_char(sysdate,'hh:mm:ss') as "CreationTime",'1524544845' as "id"),
XMLELEMENT("Porocila",XMLELEMENT("JOLY",(SELECT XMLAGG (XMLELEMENT("RefNrReport",replace('SON'||to_char(ref_ST,'00000'),' ',''))) from access_table_2 where ref_ST = &1),
XMLELEMENT("ReportDate",sysdate),XMLELEMENT("Labeling",'545254450'),
 (SELECT XMLAGG     (XMLELEMENT("Reportf",
                                                                 XMLELEMENT("access",access),
                                                                 XMLELEMENT("date",date),
                                                                 XMLELEMENT("datep",datep),
                                                                 XMLELEMENT("ModificationInfo",'M'),XMLELEMENT("ModificationReason",modireason)))
                                             from v_xml_test where id_dok = &1 and ind_print = '1'))))
  .extract('/*')
  from dual
     /     
     spool off
/
exit
Now lets pretend that
XMLELEMENT("datep",datep),
sometimes is NULL and I don't want to see it.

Now lets pretend that

XMLELEMENT("datep",datep),

sometimes is NULL and I don't want to see it.

XMLForest that does exactly:

XMLForest(datep as "datep")

(internally, it is equivalent to what Alex has suggested)

Tags: Oracle Development

Similar Questions

  • Calculation of the sum of a column on a XML editor RTF with NULL values

    Hello

    I have a problem to get the sum of a column in XML editor RTF, if one of the lines has a null value.

    say, I have 4 columns and values

    CASES1:
    NULL, NULL, 4, NULL
    Sum, I expect is: 4

    CASE2:
    NULL, NULL, NULL, NULL
    I'm waiting for is a null

    Is there a way to do this?

    Thank you
    Anita

    Try this

    AMT's column

  • form2xml generate xml files with '? ' for non-Latin characters

    I used form2xml in oracle 10 g costume to convert formulas 5 .fmb .xml. using the command:

    frmf2xml.bat OVERWRITE = YES myform.fmb

    Forms contains the set of Arabic characters, but the xml file is generated with the character "?", and the xml file is unusable ".

    What can I do to keep the Arabic characters in the generated xml files.

    Edit:

    I run form2xml on windows xp SP3 with Arabic support (codepage = 1256)

    The xml file is generated in UTF-8 format

    I solved the problem.

    Step 1: Search the registry for each NLS_Lang key and change its value to the codepage 1256 using regedit

    Step 2: in the Panel of control-region and language, I changed the language to be Arab

    Now everything is good

  • Need to remove the tags file Nullable while generating XML files

    Hello.

    I have a requirement where I have to generate an XML file, but the generated XML file does not display the tags when the column is null. An example below:

    CREATE TABLE emp_tab (emp_id NUMBER PRIMARY KEY
    name VARCHAR2 (20).
    dept_id NUMBER);
    Table created.
    INSERT INTO emp_tab VALUES (30, 'Scott', NULL);
    1 line of creation.
    INSERT INTO emp_tab VALUES (31, 'Mary', NULL);
    1 line of creation.
    INSERT INTO emp_tab VALUES (40, 'John', NULL);
    1 line of creation.
    COMMIT;

    When I generate the XML code, you can find the output like below:
    < EMPLOYEE >
    < EMP_ID > 30 < / EMP_ID >
    Scott < NAME > < / NAME >
    < / EMPLOYEE >

    I just the Worklfow Developer's Guide and the example above was taken from Page 561 and 562 by looking at the DBMS_XMLGEN.setNullHandling using DBMS_XMLGEN procedure. DROP_NULLS as a parameter.

    Now, I understand the concept, but my requirement is a little different. I get a record as my procedure parameter PLSQL type, but requires the choice of a base table, which means maybe I have to insert first the folder I get as parameter in a table of basic and then select in the same when you set the context, which is what I don't want in the DBMS_XMLGEN.newContext. This is an additional burden.

    I've previously planned to use XMLELEMENT and XMLFOREST to generate the XML file (and was rather more simple), but this requirement to remove the tags altogether when the values are NULL led me to believe that maybe I might have to go down the path of using the API DBMS_XMLGEN.

    Can you suggest a better way, replacement to achieve what I want? Or perhaps give an example on how I can get there using XMLDB?


    Thank you and best regards,
    JD

    Can I use just the XMLElement and XMLForest to achieve?

    Sure. As said, XMLForest does not create elements for NULL values:

    http://docs.Oracle.com/CD/E11882_01/AppDev.112/e23094/xdb13gen.htm#ADXDB5006

    If the expression value is null, then no element is created for this expression.

    This is the code I wrote your above mentioned suggestion discussion forum

    Yes, but this solution is taken out of context.
    Here, it is obviously preferable to not generate empty items in the first place:

    SELECT XMLElement("Address"
           , XMLForest(
               lr_addr_rec.account_name     as "AccountName"
             , lr_addr_rec.address_line_1   as "Addressline1"
             , lr_addr_rec.lot_number       as "Addressline1"
             , lr_addr_rec.address_city     as "City"
             , lr_addr_rec.address_state    as "State"
             , lr_addr_rec.address_postcode as "PostCode"
             )
           )
    FROM dual;
    
  • Remove data with null value

    Hello

    I'm using Oracle 11 g. I have a table with an id of 3, node, the value column. Combination of the column id and node, that must be taken account for deletion on the registers.

    Here, I need to delete lines with the NULL value in the value column. If for a combination of id and node with non-null values, then I need to delete rows with a null value for this combination.

    If the combination of id, node is not null value then this records should not delete.

    Below table, I need to remove the second row, for which is a value not zero VOICE CAL '10' is there, so I need to delete the row with null values. (VOICE, CAL, NULL)

    Network, FL, there is no value is non-null then I should NOT delete this line.

    This table is to have 100 s of this association, we can delete data in a single delete query?

    Or how I can delete rows with nulls for this combination.

    Tab1

    VALUE OF THE NŒUD ID

    VOICE CAL 10
    VOICE CAL NULL
    NETWORK NULL FL

    Thank you

    Hello

    oradba11 wrote:

    Hello

    I'm using Oracle 11 g. I have a table with an id of 3, node, the value column. Combination of the column id and node, that must be taken account for deletion on the registers.

    Here, I need to delete lines with the NULL value in the value column. If for a combination of id and node with non-null values, then I need to delete rows with a null value for this combination.

    If the combination of id, node is not null value then this records should not delete.

    Below table, I need to remove the second row, for which is a value not zero VOICE CAL '10' is there, so I need to delete the row with null values. (VOICE, CAL, NULL)

    Network, FL, there is no value is non-null then I should NOT delete this line.

    This table is to have 100 s of this association, we can delete data in a single delete query?

    Or how I can delete rows with nulls for this combination.

    Tab1

    VALUE OF THE NŒUD ID

    VOICE CAL 10
    VOICE CAL NULL
    NETWORK NULL FL

    Thank you

    You can do this in a single DELETE statement (it is not a request), using an EXISTS or IN the subquery.  For example:

    REMOVE table_x m

    WHERE the value IS NULL

    AND THERE ARE)

    SELECT 0

    FROM table_x s

    WHERE s.id = m.id

    AND s.node = m.node

    AND s.value IS NOT NULL

    )

    ;

    If you would care to post CREATE TABLE and INSERT instructions for the sample data, and then I could test it.

  • How to display the line empty as a line with null values

    Hi all

    Pls advise me if it is possible to use a single query statement to display
    Empty row (i.e. not a single return line) as a line with null values.

    For example,.

    Select the names of names_mst whose name = "sgasfgs".

    Result:
    Names of
    =====
    < null >

    Hello
    If you desire to join external to double, as shown below, you still get at least a line of production

    SELECT  nm.names
    FROM            dual
    LEFT OUTER JOIN names_mst   nm  ON nm.name='sgasfgs';
    
  • Export a Final Cut Pro XML file problem any translation problem

    When I export the XML pro final cut, there is always a problem of translation like this "Transition... not translated, chained <>used instead."

    Most of type transition can cause translation problems, except the wipe and cross dissolve.

    Is there any body know the reason? Is it OK?

    Also, I use the trial version of cs5

    Hey Ani_,.

    I work for a long time with Adobe products and generally when you encounter an error that has nothing to with an XML file export problem its due to such things as the effects you may have added in, color correction, bland Crusaders or any type of video transitions between clips. Don't forget that your workflow must be

    Import your videos into Premiere Pro
    Name your clips (help to find things later)
    Place the clips on the timeline in the order you want (DO CUP that DO not add anything, transitions effects color nothing)
    Then once all of your clips are placed on the timeline in your voucher order you then EXPORT > Final Cut Pro XML

    Now you can put this in other programs for adjustment of colors, or whatever it is you do.  You will find there is no error on export.

    Once your fact is do what you do for the clips in another program (for example: the Divinci Resolve color adjustment) you can then export to your main project, and then add your effects and transitions.

  • link to the XML file problem

    I can't understand why I am getting an error when I try to publish a swf with a linked XML file?
    I had to have the original decompiled fla of swf file. all functions work well, no script error, but the file
    Homepage fla published in homepage.swf gives me "error opening URL"file:///Macintosh%20HD/Users/tuneraider/Desktop/valleefiles/xml/homepage.xml"

    the files are in the same folder. Any help?

    double checked that the files were in the same folder

  • Reading XML file problem

    Hi all

    I'm reading an xml file and displays the output. I get a blank screen. Can someone help me please.

    Thanks in advance

    I can't attach the xml file. Since this is not a valid extension. Please find the following xml code.


    Samsung

    Busan
    South Korea

    If you can change the saved .xml file, you can modify it to be compatible with Labview XML shema and use Unflatten of XML as in your VI. If you can't, you must use the XML parser library. Attached, you will find 2 exmaples for these situations.

  • Modifing XML file supplied with my application on PlayBook

    Hi all

    I have an app for Blackberry PlayBook WebWorks.

    It has a flash file that after reloading, reads an XML file which is of course included in the deployment of my product.

    My product has to change the XML file after a picture taken using the camera.

    The XML file essentially contains the path to the image that needs to be changed.

    Get the path to the image is fine, but it seems to me impossible to locate the XML file that I have 'ship' with the product.

    I can't find the flash applet or an other images used in the program.

    What is a security thing? I was just expecting to be able to find the path of the XML file and record a new on it with the new path to the image.

    dirs.app.storage.path
    

    Hello

    You should be able to reference the resources packaged in your BAR file using the local: / / / Protocol.  If you have a file settings.xml file in root of your application, so it should be local:///settings.xml.

    Note: You can not change this file after it was packed. At this point, it is read-only.  If you want to update these data after the fact, I suggest to load this information into localStorage (API HTML5) at the start of the first time and changing the numbers in there.  localStorage is a persistent store where you can save the values between the application restarts.

  • XML and problem with special characters

    Hi all

    I have an application, here and there, some customers complained that it doesn't. I studied their xml files, and eventually I found the problem. If there is a @ or & in the value of the item it does not work. I don't know if any of you have had this problem, if you could you please say regarding how I can manage these characters or even disable these as input.

    Thanks in advance

    Thanks for your help guys, I did a little more digging. UTF - 8 does not, but UTF-16 only and yes the & amp should be used instead of the & symbol.

  • . Corrupt Windows files, problems with fan keyboard keys,

    I had problems with windows 8 for some time. It does not load properly more and takes time. I ran the sfc scan and received a message he had corrupted files that could not be repaired. I also noticed a ticking sound from my hard drive. I ran a repair for the reader and found no problem. These files would be the source of the noise ticking? Also, I have a problem with my fan. Is a kind of grinding noise when the system is turned on. I cleaned up and it is a fairly new system, so I do not think that it should be replaced. What is a software problem? And is there a way to repair the keys that are unresponsive outside replacement. The guy who cleaned the fan forgot something in the screwdriver system directly or very loose keys does not. I removed, but the keys do not work

    Hello Pierre,.

    Thanks for posting your query in Microsoft Community.

    I understand that you have with the corrupted in the computer and other multiple issues in the computer files. Don't worry, we're here to help when fixing these issues.

    But I would like to know some more information on this issue to help you better.

    1. What troubleshooting utility did you use?
    2. When you get the ticking sound?
    3. Is that when you use an application or program?
    4. You get an error message while, key board is not working properly?
    5. What is the brand and model of the computer?

    In the meantime, please follow the following suggestions to solve the problem.

    Corrupted files may be one of the reasons for the system has as many questions together. So, you can try to manually fix the corrupted computer files and check if that helps. Follow the link below to do the same.

    Use the System File Checker tool to repair missing or corrupted system files

    (See the procedure below: how replace manually a file system damaged by a known good copy of the file)

    http://support.Microsoft.com/kb/929833/en-us

    And for problems with sounds from the hard disk:

    1. Noises may result from problems mounting. This is due to a high frequency in the mounting material vibration, or a drive failure.
    2. Repeated and regular, tap, grind or beep.
    3. Remove the side panel of the cover of your case and do operate the machine with the lid side for 30 to 60 minutes see if the noise subsides. If the noise disappears, your hard drive is probably overheating, causing the noise.

    You try to run the disk check and see if that helps in the setting of these noises and to detect if the hard drive is damaged or not. Follow the steps below to do the same thing:

    Run the disk check to find and fix errors on the disc.

    (a) click Start, type cmd, right-click on cmd , and then click run as administrator.

    (b) at the prompt, type chkdsk /f /r and press to enter.

    For more information on 'Check a drive for errors' please visit this link:

    http://Windows.Microsoft.com/en-us/Windows7/check-a-drive-for-errors

    Important: When running chkdsk on the drive hard if bad sectors are found on the disk hard when chkdsk attempts to repair this area so all available data on this risk be lost.

    Additional information:

    Optimize Windows performance
    http://Windows.Microsoft.com/is-is/Windows/optimize-Windows-better-performance#optimize-Windows-better-performance=Windows-7

    Note : Data files that are infected must be cleaned only by removing the file completely, which means there is a risk of data loss.

    I hope this helps. Otherwise, feel free to write us again for more assistance, and we will be happy to help you come.

  • Import of XML files problems

    So I've recently switched to a PC from a Mac.  I prefer Windows 8 for all other OS, I know I'm in the minority, but that's what I like.  My question is this: when I imported my catalogues from my Mac to my PC all imported fine with display correctly all files and images showing a history of changes, etc.  However, for some reason a wedding I shot did not in it.  The files are there and the sidecar files.  So I tried to import this file into the catalog, and he did.  However, it has not imported the sidecar files and all my previous edits do not show now.

    How to import these XML files so that my changes are restored?  I see no option to import to the inlcude the screen or not include XML files.  Are my changes lost forever, or can they be saved? Thank you.

    FYI: I use Lightroom 4.3

    Looking for your changes. Things like exposure and contrast and other items.

  • Grouping data in xml file problem

    Hi all

    Here is an example of xml file used as input source in my BEEP stand-alone report:

    rowset <>
    < SAMPLE_ROW >
    < ID > 1234 / < ID >
    < Code > < CODE > A1
    FIRST YEAR < TEXT > < / TEXT >
    B1 < CODE > < code >
    SECOND YEAR < TEXT > < / TEXT >
    < / SAMPLE_ROW >
    < SAMPLE_ROW >
    < ID > 6789 / < ID >
    < Code > < CODE > C1
    THIRD YEAR < TEXT > < / TEXT >
    B1 < CODE > < code >
    SECOND YEAR < TEXT > < / TEXT >
    < / SAMPLE_ROW >
    < / LINES >


    The expected output should be:

    ID # 1234
    Categories: A1
    FIRST YEAR
    B1
    SECOND GRADE

    ID # 6789
    Categories: C1
    THIRD YEAR
    B1
    SECOND GRADE

    And design that I created is:

    <? for-each-group: SAMPLE_ROW; / ID? >
    ID # <? ID? >
    Categories: <? CODE of? >
    <? TEXT? >
    <? end for each group -? >

    I could only show partial result but not able to reach my desired output. Please guide.

    Thank you.

    Ideally, what you want is:


         
              1234
              
              A1
              FIRST YEAR
              

              
              B1
              SECOND GRADE
              

         

         
              6789
              
              C1
              THIRD YEAR
              

              
              B1
              SECOND GRADE
         

         

    With this structure without having to regroup but only for each.
    Your third can reorganize?

    Jorge

  • Problem with Null

    Hi gurus,
    I have a requirement like this, whenever there is a null value in the table, it will be replaced by a zero. Is there a possible way to accomplish this task.
    Thank you

    Hi user13519477,

    You can try this link.
    http://total-bi.com/2010/10/replace-nulls-in-OBIEE-pivot-table/

    Thank you
    Don

Maybe you are looking for