XMLTYPE and Encoding value

Hello,
I am working with 10g under SQL PLUS.
I created a table with an XMLTYPE column and I inserted an XML document encoded in UTF-8 as follow.
create table Z_TEST_XMLTYPE (DATA XMLTYPE);
insert into z_test_xmltype values (xmltype('<?xml version="1.0" encoding="UTF-8" ?><test name="test_name">Hé</test>'));
Then when I select data, I'm surprised to see that the encoding attribute is no longer "UTF-8" but "WINDOWS-1252".
Why is that like this ? I'd like to keep my xml document in UTF-8.
SQL> select * from Z_TEST_XMLTYPE;
DATA
<?xml version="1.0" encoding="WINDOWS-1252"?>
<test name="test_name">Hé</test>

Hey Alex,
is this feature still on your list and if it is which API will be best set XmlType stored procedure parameters from the .NET side?
Today I would guess that there are three ways to set an XmlType parameter:
- by an XmlReader
- by an XmlDocument
- by a String
We are currently using strings. From my point of view this will have to be changed when planing on binary XML transfer.
Today XmlReader is probably the worst (you seem to build an XmlDocument and serialize that to a String). So how does the future look like?
You don't happen to have a beta testing programm? I might think about volunteering.
yours
Marc

Similar Messages

  • LabVIEW USB-6366 sample 2 AI and Encoder Value triggered with X1-Encoder (not with sample clock) - Help needed, please

    Hello World,
    after 10 years of LabVIEW experience I'm totally lost.
    This is my first project with DAQmx and I don't know how to handle it.
    My setup: Windows7; LabVIEW 2012 DevSuite; X-Series USB-6366
    My goal: Trigger the encoder value and 2 Analog Inputs
    I would like to get one result for the encoder value and each of the two analog inputs for each change of the encoder value (not more!!! I don't want to sort a huge amount of data afterwards)
    I've been able to configure it with the Measurement and Automation Explorer, but have no clue how to get this in a LabVIEW configuration.
    All examples I could find are reading the analog Inputs and the Encoder with SampleClock. That's not what I'm looking for.
    I would greatly appreciate if someone could guide me to my solution.
    I've attached the exported confiuration of the Measurement and Automation Explorer.
    Thanks in advance, best regards,
    Balze
    P.S.: Sorry I had to ZIP the *.nce file, because NI doesn't allow to attach *.nce files
    Solved!
    Go to Solution.
    Attachments:
    configData.zip ‏290 KB

    Hi RupiDo, hi Kevin P.
    thank you for your effort and your willingness to help me. I aprreciate it!
    @ RupiDo:
    I'm aware of the DAQmx Timing.vi but where do I find I/O filtering (which context menue?)
    DAQmx is a Monster for me. It's for sure felxible and powerfull but how to configure it is not obvious for me. Also the dependencies are unclear to me. I tried things and get an error at run-time that this or that is not supported, reserved, ....
    Nyquist Shannon doesn't matter very much for my task. I measure DC voltages with litlle changes. But thank you for pointing this out.
    Retriggerable property node?? Where's that? (This maybe not obvious for me, because it's a german LabVIEW I've got to work with)
    @ Kevin P.:
    Yes, it's a quad-encoder with A,B and Z but Z is still unused (and will be unused for now)
    I've got similar problems to setup your solutions.
    When I try to configure "Change Detection" I get error messages, that it's not supported. "allow buffer overwrites"??? I seached for it very thoroughly,but without success.
    I looked at a lot of examples but always found solutions with buffered aquisition. I'm already willing to use buffered aquisition, but I even can't setup this.
    I FEEL SO STUPID Over 10 years LabVIEW experience and the first DAQmx project let's me stumble.
    I tried a buffered aquisition based on an NI example. But it only works for one analog input channel. The other brings up en error (-50103). Which one of the two analog channels brings the error is randomly.
    Maybe someone could explain me, what leads to this error, that I could start understanding DAQmx.
    I've attached the VI (LV2012) and screenshots of the frontpanel and the blockdiagram.
    Thanks in advance, best regards
    Balze
    Attachments:
    Meas Angular Position-Buffered-Cont-CtrClk-1.vi ‏72 KB
    vi_panel.png ‏95 KB
    vi_block.png ‏87 KB

  • How to parse XML Column and insert values into a table

    Hello,
    I am working on a simple project to demonstrate how to load and extract XML using SQL, I have already made a table that contains a column of XMLTYPE and loaded an XML file into it (code below)
    create or replace directory XMLSRC as 'C:\XMLSRC';
    drop table Inventory;
    create table Inventory(Inv XMLTYPE);
    INSERT INTO Inventory VALUES (XMLTYPE(bfilename('XMLSRC', 'Inventory.xml'),nls_charset_id('AL32UTF')));
    select * from Inventory;
    I now however need to get the XML data back out of that and loaded into a new table. Troubleshooting guides I have read online seem to only be dealing with parsing an external XML document and loading it into a table, and not what I need to do which is parse a column of XML data and load that into a table. The project trivial with simple tables containing only 3 columns.
    The table that needs to be loaded is as follows:
    create table InventoryOut(PartNumber Number(10), QTY Number(10), WhLocation varchar2(500));
    The XML document is as follows:
    <?xml version="1.0" encoding="UTF-8"?>
    <dataroot xmlns:od="urn:schemas-microsoft-com:officedata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Inventory.xsd" generated="2012-04-09T17:36:30">
    <Inventory>
    <PartNumber>101</PartNumber>
    <QTY>12</QTY>
    <WhLocation>WA</WhLocation>
    </Inventory>
    </dataroot>
    Thank you for any help you can offer.

    First of all, thank you for your help!! Still stunned that you actually took the time to write out an eample using my tables/names/etc. Thank you!!
    Attached is the code, there seems to be an issue with referencing the other table, Inventory.Inv, I checked and that table and the Inv column are showing up in the database so I am not sure why it is having issues locating them, take a look at the code I wrote as well as the output (*I included the real version number for you this time :)
    EDIT: In your code right here:
    select xt.*
    3 from Inventory inve,
    4 XMLTable('/dataroot/Inventory'
    5 PASSING inve.Inv
    I think is where I am messing it up, perhaps not understanding fully what is going on, as you write "Inventory inve" and "inve.Inv" ---- Is inve a keyword that I am just not familiar with? I think this is where the issues lies in my code.
    END EDIT
    EDIT2: Well that looks like it was it, changed that to how you have it and it now works!!! Could you please explain what that few lines is doing, and what the xt.* and inve are doing? Thanks again!!!
    END EDIT2
    drop table InventoryOut;
    create table InventoryOut (PartNumber number(10), QTY number(10), WhLocation varchar2(500));
    insert into InventoryOut (PartNumber, QTY, WhLocation)
    select xt.*
    from Inventory Inv,
    XMLTable('/dataroot/Inventory'
    PASSING Inventory.Inv COLUMNS
    PartNumber number path 'PartNumber',
    QTY number path 'QTY',
    WhLocation path 'WhLocation')xt;
    select * from InventoryOut;
    select * from v$version;
    table INVENTORYOUT dropped.
    table INVENTORYOUT created.
    Error starting at line 4 in command:
    insert into InventoryOut (PartNumber, QTY, WhLocation)
    select xt.*
    from Inventory Inv,
    XMLTable('/dataroot/Inventory'
    PASSING Inventory.Inv COLUMNS
    PartNumber number path 'PartNumber',
    QTY number path 'QTY',
    WhLocation path 'WhLocation')xt
    Error at Command Line:8 Column:12
    Error report:
    SQL Error: ORA-00904: "INVENTORY"."INV": invalid identifier
    00904. 00000 - "%s: invalid identifier"
    *Cause:   
    *Action:
    PARTNUMBER QTY WHLOCATION
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
    PL/SQL Release 11.2.0.1.0 - Production
    CORE     11.2.0.1.0     Production
    TNS for 32-bit Windows: Version 11.2.0.1.0 - Production
    NLSRTL Version 11.2.0.1.0 - Production
    If this helps here is the code and output for the creation of the Inventory table itself:
    create or replace directory XMLSRC as 'C:\XMLSRC';
    drop table Inventory;
    create table Inventory(Inv XMLTYPE);
    INSERT INTO Inventory VALUES (XMLTYPE(bfilename('XMLSRC', 'Inventory.xml'),nls_charset_id('AL32UTF')));
    select * from Inventory;
    directory XMLSRC created.
    table INVENTORY dropped.
    table INVENTORY created.
    1 rows inserted.
    INV
    <?xml version="1.0" encoding="WINDOWS-1252"?>
    <dataroot xmlns:od="urn:schemas-microsoft-com:officedata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Inventory.xsd" generated="2012-04-09T17:36:30">
    <Inventory>
    <PartNumber>101</PartNumber>
    <QTY>12</QTY>
    <WhLocation>WA</WhLocation>
    </Inventory>
    </dataroot>
    Thanks again for your help so far! Hope we can get this working :)
    Edited by: 926502 on Apr 11, 2012 2:47 PM
    Edited by: 926502 on Apr 11, 2012 2:49 PM
    Edited by: 926502 on Apr 11, 2012 2:54 PM
    Edited by: 926502 on Apr 11, 2012 2:54 PM
    Updated issue to solved - Edited by: 926502 on Apr 11, 2012 2:55 PM

  • XSL Transformation - cut asx:abap and asx:values

    Hey all,
    I'm using a XSL Transformation to create a XML-File from an internal table.
    My problem is, that the transformation automatically puts the two tags "<asx:abap xmlns:asx="http://www.sap.com/abapxml">" and "<asx:values>" at the beginning of my file (or string):
    <?xml version="1.0" encoding="iso-8859-1" ?>
    <asx:abap xmlns:asx="http://www.sap.com/abapxml">
    <asx:values>
    <ROOT>
    </ROOT>
    </asx:values>
    </asx:abap>
    Does anyone have any idea how I can easily suppress these lines?
    The best course would be of course an XSL statement.
    Thanks and regards,
    Martin.

    Will using a Simple Transformation help your case ?

  • How can I use oracle function to decode the encode value

    Hi everybody,
    If the data is encode value how can I decode this value

    DBMS_OBFUSCATION_TOOLKIT
    DBMS_OBFUSCATION_TOOLKIT allows an application to encrypt data using either the Data Encryption Standard (DES) or the Triple DES algorithms.
    The Data Encryption Standard (DES), also known as the Data Encryption Algorithm (DEA) by the American National Standards Institute (ANSI) and DEA-1 by the International Standards Organization (ISO), has been a worldwide encryption standard for over 20 years. The banking industry has also adopted DES-based standards for transactions between private financial institutions, and between financial institutions and private individuals. DES will eventually be replaced by a new Advanced Encryption Standard (AES).
    DES is a symmetric key cipher; that is, the same key is used to encrypt data as well as decrypt data. DES encrypts data in 64-bit blocks using a 56-bit key. The DES algorithm ignores 8 bits of the 64-bit key that is supplied; however, developers must supply a 64-bit key to the algorithm.
    Triple DES (3DES) is a far stronger cipher than DES; the resulting ciphertext (encrypted data) is much harder to break using an exhaustive search: 2**112 or 2**168 attempts instead of 2**56 attempts. Triple DES is also not as vulnerable to certain types of cryptanalysis as is DES. DES procedures are as follows:
    DESEncrypt Procedure
    DESDecrypt Procedure
    Oracle installs this package in the SYS schema. You can then grant package access to existing users and roles as needed. The package also grants access to the PUBLIC role so no explicit grant needs to be done.
    This chapter discusses the following topics:
    Overview of Key Management
    Summary of DBMS_OBFUSCATION Subprograms
    Overview of Key Management
    Key management, including both generation and secure storage of cryptographic keys, is one of the most important aspects of encryption. If keys are poorly chosen or stored improperly, then it is far easier for a malefactor to break the encryption. Rather than using an exhaustive key search attack (that is, cycling through all the possible keys in hopes of finding the correct decryption key), cryptanalysts typically seek weaknesses in the choice of keys, or the way in which keys are stored.
    Key generation is an important aspect of encryption. Typically, keys are generated automatically through a random-number generator. Provided that the random number generation is cryptographically secure, this can be an acceptable form of key generation. However, if random numbers are not cryptographically secure, but have elements of predictability, the security of the encryption may be easily compromised.
    The DBMS_OBFUSCATION_TOOLKIT package does not generate encryption keys nor does it maintain them. Care must be taken by the application developer to ensure the secure generation and storage of encryption keys used with this package. Furthermore, the encryption and decryption done by the DBMS_OBFUSCATION_TOOLKIT takes place on the server, not the client. If the key is passed over the connection between the client and the server, the connection must be protected using Oracle Advanced Security; otherwise the key is vulnerable to capture over the wire.
    Key storage is one of the most important, yet difficult aspects of encryption and one of the hardest to manage properly. To recover data encrypted with a symmetric key, the key must be accessible to the application or user seeking to decrypt data. The key needs to be easy enough to retrieve that users can access encrypted data when they need to without significant performance degradation. The key also needs to be secure enough that it is not easily recoverable by an unauthorized user trying to access encrypted data he is not supposed to see.
    The three options available to a developer are:
    Store the key in the database
    Store the key in the operating system
    Have the user manage the key
    Storing the Key in the Database
    Storing the keys in the database cannot always provide bullet-proof security if you are trying to protect data against the DBA accessing encrypted data (since an all-privileged DBA can access tables containing encryption keys), but it can provide security against the casual snooper, or against someone compromising the database files on the operating system. Furthermore, the security you can obtain by storing keys in the database does not have to be bullet-proof in order to be extremely useful.
    For example, suppose you want to encrypt an employee's social security number, one of the columns in table EMP. You could encrypt each employee's SSN using a key which is stored in a separate column in EMP. However, anyone with SELECT access on the EMP table could retrieve the encryption key and decrypt the matching social security number. Alternatively, you could store the encryption keys in another table, and use a package to retrieve the correct key for the encrypted data item, based on a primary key-foreign key relationship between the tables.
    A developer could envelope both the DBMS_OBFUSCATION_TOOLKIT package and the procedure to retrieve the encryption keys supplied to the package. Furthermore, the encryption key itself could be transformed in some way (for example, XORed with the foreign key to the EMP table) so that the key itself is not stored in easily recoverable form.
    Oracle recommends using the wrap utility of PL/SQL to obfuscate the code within a PL/SQL package itself that does the encryption. That prevents people from breaking the encryption by looking at the PL/SQL code that handles keys, calls encrypting routines, and so on. In other words, use the wrap utility to obfuscate the PL/SQL packages themselves. This scheme is secure enough to prevent users with SELECT access to EMP from reading unencrypted sensitive data, and a DBA from easily retrieving encryption keys and using them to decrypt data in the EMP table. It can be made more secure by changing encryption keys regularly, or having a better key storage algorithm (so the keys themselves are encrypted, for example).
    Storing the Key in the Operating System
    Storing keys in the operating system (that is, in a flat file) is another option. With Oracle8i you can make callouts from PL/SQL, which you could use to retrieve encryption keys. If you store keys in the O/S and make callouts to retrieve the keys, the security of your encrypted data is only as secure as the protection of the key file on the O/S. Of course, a user retrieving keys from the operating system would have to be able to either access the Oracle database files (to decrypt encrypted data), or be able to gain access to the table in which the encrypted data is stored as a legitimate user.
    User-Supplied Keys
    If you ask a user to supply the key, it is crucial that you use network encryption, such as that provided by Oracle Advanced Security, so the key is not passed from client to server in the clear. The user must remember the key, or your data is nonrecoverable.
    http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96612/d_obtool.htm#ARPLS028
    Joel P�rez

  • How to retrieve version and encoding info from SAX parser

    I want to have access to the version and encoding info in a parsed XML document (when using SAX2). Who knows how this works?
    If not possible with SAX2, what other solutions are there?
    Second question: how to retrieve comments in XML files?
    Thanks in advance!

    thanks for answering, but ...
    LexicalHandler is fine for retrieving the comments,
    but does not give me the encoding (specified by
    encoding="UTF-8") and version (specified by
    version="1.0").
    I am feeding my parser with a byte stream, the parser
    resolves the correct encoding and i want to have
    access to this value!!hi , It is unlikely that you will get the encoding and version . This is being addressed by the DOM level3
    , see
    http://www-106.ibm.com/developerworks/xml/library/x-dom3.html?dwzone=xml .

  • C# Wrapper for Berkeley Db is not ptting proper key and data values

    Hi All,
    I am using C# wrapper for Berkeley Db which is available at sourceforge.net.
    Now when i am putting an integer as key value, it returns keysize as 9,
    instead of returning 4.
    That C# Wrapper contains a serialzing class called BDBFormatter which pass all the data into DBT .
    The file created using C# Wrapper is not read as key and data values are not coming properly if i try to read the file using only C berkeley db.
    Can anybody suggest me some way to create a berkeley Db file in C#. which can be accessible by Linux C berkeley Db APIs.
    Any help will be appreciated.....
    Thanks,
    Eric Hass

    user11218092 wrote:
    Hi All,
    I am using C# wrapper for Berkeley Db which is available at sourceforge.net.
    Now when i am putting an integer as key value, it returns keysize as 9,
    instead of returning 4.
    That C# Wrapper contains a serialzing class called BDBFormatter which pass all the data into DBT .
    The file created using C# Wrapper is not read as key and data values are not coming properly if i try to read the file using only C berkeley db.
    How data is encoded is up to the programmer. There is no defined way in BDB to do that, it is application dependent.
    The BDBFormatter class is just one way of encoding C# classes and structs (which includes the ability to serialize Nulls).
    It is written with BDB in mind and has some performance advantages over the standard .NET serialization classes.
    If you want to read back the data from code written in another language, you will have to duplicate how data is encoded/decoded.
    The source code is there to read. ;-)
    Karl

  • Color space, gamma, and code value range data

    Greetings!
    I'm getting close to submitting my film for professional DCP creation.  It's a ProRes 422 4096 by 1716, 2.39 - 1 file, created as a "master file" in a Premiere Pro CC export (the sequence being an "online" of sorts, built from SpeedGrade color-corrected DPX files).
    The Guidelines for "Digital Cinema Source Delivery" require me to provide information about Color Space, Gamma, and Code Value Range Information (head vs full).  Specifically, an order form asks for TRT, Color-Space, and Full or Head. 
    This is simply all Greek to me.  I know my film looks gorgeous, and the rest of what I've told you, but that's the limit of my experience.
    Can someone help me out?  Specifics are preferred to broad strokes.  Many thanks in advance.

    This is probably too late now for you anyway but here is some extra information:
    The "Digital Source Master" is the video footage before any D-Cinema formatting or encoding has been done.
    It can be literally anything. The DCI specification did not specify this.
    They did however specify exactly what the transcoded verison has to look like. The "D-Cinema Distribution Master" (16bit TIFF, XYZ)
    So in other words, you need to tell your service provider:
    The resolution, fileformat, frame rate and especially the colourspace that you used.
    For example r709 for HD or any other RGB colourspace with applied gamma value (2.3 for example).

  • Setting 6602 registers to latch encoder values on RTSI trigger

    Greetings,
    I am currently using the 6602, comedi driver, and  real time linux to read 6 quadrature encoders.  I would like to add some functionality to the comedi driver that would latch the encoder values from a RTSI trigger.  I have the register programming manual for the 6602; However, I am not quite sure how I should set up the registers for this task.  Any help would be greatly appreciated.
    Thanks,
    Greg

    Thanks Tom and David for your help.
    I have looked over the examples that Tom listed and I think I understand the necessary register settings.  Just in case I missed something I have includded an example configuration and read function for your review.  The configuration is a combination of gpct_ex7.cpp and gpct_ex8.cpp.  Also, am I correct in assuming that if using a RTSI signal to latch the encoder values that the encoder index can not be used to reset the counter?  It seems they would both need access to the gate.   Thanks again for your help,
    Greg
    // configuring 6602...
    void test(iBus *bus)
        tAddressSpace  cardSpace;
        tTIO *board;
        cardSpace = bus->createAddressSpace(kPCI_BAR1);
        board = new tTIO(cardSpace);
        //Reset
        board->G01_Joint_Reset_Register.writeG0_Reset(1);
        //Disarm
        board->G0_Command_Register.writeG0_Disarm(1);
        //load initial value of 0
        board->G0_Load_A_Registers.writeG0_Load_A(0x00000000);
        board->G0_Command_Register.writeG0_Load(1);
        //set the counting mode to quadrature encoding X4
        board->G0_Counting_Mode_Register.setG0_Encoder_Counting_Mode(3);
        //set source to the internal timebase (20 MHz)
        board->G0_Input_Select_Register.writeG0_Source_Select(0);
        //set gate to latch encoder value on rising edge of RTSI 0
        board->G0_Input_Select_Register.writeG0_Gate_Select(11);
        board->G0_Mode_Register.writeG0_Gate_Polarity(0);
        board->G0_Mode_Register.writeG0_Gating_Mode(2);
        board->G0_Mode_Register.writeG0_Trigger_Mode_For_Edge_Gate(3);
        //set counting direction to Gate IO connector
        board->G0_Command_Register.writeG0_Up_Down(2);
        //use the DMA registers as a two element FIFO
        //The TIO will alternate save locations between the HW save and SW
        //save registers.
        board->G0_DMA_Config_Register.writeG0_DMA_Enable(1);
        board->G0_DMA_Config_Register.writeG0_DMA_Int_Enable(1);
        //arm counter
        board->G0_Command_Register.writeG0_Arm(1);
    // reading the counter value would go something like this...
    void generic_read(tTIO *board)
        int HWsaveOrSWsave;
        //the DMA Read register tells us where the most recent sample was saved:
        // 1 for SW save register, 0 for the HW save register
        HWsaveOrSWsave = board->G0_DMA_Status_Register.readG0_DMA_Read_Register();
        if(HWsaveOrSWsave == 1)
            printf("SW Save Register is 0x%08lx\n",
                board->G0_Save_Registers.readRegister());
        else
            printf("HW Save Register is 0x%08lx\n",
                board->G0_HW_Save_Registers.readRegister());

  • Avoiding null and duplicate values using model clause

    Hi,
    I am trying to use model clause to get comma seperated list of data : following is the scenario:
    testuser>select * from test1;
    ID VALUE
    1 Value1
    2 Value2
    3 Value3
    4 Value4
    5 Value4
    6
    7 value5
    8
    8 rows selected.
    the query I have is:
    testuser>with src as (
    2 select distinct id,value
    3 from test1
    4 ),
    5 t as (
    6 select distinct substr(value,2) value
    7 from src
    8 model
    9 ignore nav
    10 dimension by (id)
    11 measures (cast(value as varchar2(100)) value)
    12 rules
    13 (
    14 value[any] order by id =
    15 value[cv()-1] || ',' || value[cv()]
    16 )
    17 )
    18 select max(value) oneline
    19 from t;
    ONELINE
    Value1,Value2,Value3,Value4,Value4,,value5,
    what I find is that this query has duplicate value and null (',,') coming in as data has null and duplicate value. Is there a way i can avoid the null and the duplicate values in the query output?
    thanks,
    Edited by: orausern on Feb 19, 2010 5:05 AM

    Hi,
    Try this code.
    with
    t as ( select substr(value,2)value,ind
            from test1
            model
            ignore nav
            dimension by (id)
            measures (cast(value as varchar2(100)) value, 0 ind)
            rules
            ( ind[any]=  instr(value[cv()-1],value[cv()]),
            value[any] order by id = value[cv()-1] || CASE WHEN value[cv()] IS NOT NULL
                                               and ind[cv()]=0     THEN ',' || value[cv()] END      
    select max(value) oneline
    from t;
    SQL> select * from test1;
            ID VALUE
             1 Value1
             2 Value2
             3 Value3
             4 Value4
             5 Value4
             6
             7 value5
             8
    8 ligne(s) sélectionnée(s).
    SQL> with
      2   t as ( select substr(value,2)value,ind
      3          from test1
      4          model
      5          ignore nav
      6          dimension by (id)
      7          measures (cast(value as varchar2(100)) value, 0 ind)
      8          rules
      9          ( ind[any]=  instr(value[cv()-1],value[cv()]),
    10          value[any] order by id = value[cv()-1] || CASE WHEN value[cv()] IS NOT NULL
    11                                             and ind[cv()]=0     THEN ',' || value[cv()] END 
    12          )
    13        )
    14   select max(value) oneline
    15   from t;
    ONELINE
    Value1,Value2,Value3,Value4,value5
    SQL>

  • NULL and Space value in ABAP

    Hi All,
           I like to know, is it NULL and Space value is same in ABAP, if it is not how to check null value.
    Thank you.
    Senthil

    everything is correct though some answers are not correct.
    A Database NULL value represents a field that has never been stored to database - this saving space, potentially.
    Usually all SAP tables are stored with all fields, empty fields are stored with their initial value.
    But: If a new table append is created and the newly-added fields do not have the 'initial value' marked in table definition, Oracle will just set NULL values for them.
    as mentioned: There is no NULL value to be stored in an ABAP field. The IS NULL comparison is valid only for WHERE clause in SELECT statement. WHERE field = space is different from WHERE field IS NULL. That's why you should check for both specially for appended table fields.
    If a record is selected (fulfilling another WHERE condition) into an internal table or work area, NULL values are convertted to their initial values anyway.
    Hope that sheds some light on the subject!
    regards,
    Clemens

  • Opening and Closing values on two separate rows for an indvidual A/c?

    Hi / Salam To all SAP Members,
    I am creating a COGS report in which i need to show opening and closing values for a stock account in two separate rows. The tool i am using is report painter.
    What i need to know is how can the system identify between opening and closing values for that account? Which characteristic/s do i need to include in the rows? The table i am using is FAGLFLEXT.
    Please provide help.
    Regards,
    Mohammed Ali Khan.

    Resolved Issue.

  • How to differentiate the EMPTY Records and Null Values in DSO

    Hello....how is everyone here?? Ehehehe!
    I try to load some data from the flat file which contains some EMPTY data and Null Values for the records. The data type for the InfoObjects of the fields "Quantity" is "number". The sample data from the flat file (CSV) are as below:
    Food              Quantity
    Hamburger  -       12
    Cheese        -       0
    Vegetable      -               (Empty)
    When I try to load the above sample data to the DSO, I get the results of the data as follow:
    Food              Quantity
    Hamburger     - 12.000
    Cheese           -  0.000
    Vegetable         - 0.000
    In this case, how can the user differentiate whether the records is contain empty value of null values in DSO? This is kinda of hard to differentiate the both scenarios above. Is there any way to differentiate the scenarios described here?
    Thanks alot =)

    Hi Fluffy,
    It depends on the initial values of the data type
    The inital values For quantity/Currency/ Numbers it takes spaces as 0
    for char it is SPACE
    We cannot differeniate between space and null values.
    IF you have to force this then define quantity as char and load the data. we will not have units and aggregation in this case.
    Hope this helps.
    PV

  • From two given tables, how do you fetch the values from two columns using values from one column(get values from col.A if col.A is not null and get values from col.B if col.A is null)?

    From two given tables, how do you fetch the values from two columns using values from one column(get values from col.A if col.A is not null and get values from col.B if col.A is null)?

    Hi,
    Use NVL or COALESCE:
    NVL (col_a, col_b)
    Returns col_a if col_a is not NULL; otherwise, it returns col_b.
    Col_a and col_b must have similar (if not identical) datatypes; for example, if col_a is a DATE, then col_b can be another DATE or it can be a TIMESTAMP, but it can't be a VARCHAR2.
    For more about NVL and COALESCE, see the SQL Language manual: http://docs.oracle.com/cd/E11882_01/server.112/e26088/functions119.htm#sthref1310
    I hope this answers your question.
    If not, post a little sample data (CREATE TABLE and INSERT statements, relevant columns only) for all tables involved, and also post the results you want from that data.
    Explain, using specific examples, how you get those results from that data.
    Always say which version of Oracle you're using (e.g., 11.2.0.2.0).
    See the forum FAQ: https://forums.oracle.com/message/9362002

  • Union two tables with diffrent count of fields with null and float value

    Hello,
    i want to union two tables, first one with 3 fields and second one with 4 fields (diffrent count of fields).
    I can add null value at end of first select but it does not work with float values in second table. Value form second table is convert to integer.
    For example:
    select null v1 from sessions
    union
    select 0.05 v1 from sessions
    result is set of null and 0 value.
    As workaround i can type:
    select null+0.0 v1 from sessions
    union
    select 0.05 v1 from sessions
    or simple change select's order.
    Is any better/proper way to do this? Can I somehow set float field type in first select?
    Best regards,
    Lukasz.
    WIN XP, MAXDB 7.6.03

    Hi Lukasz,
    in a UNION statement the first statement defines the structure (number, names and types of fields) of the resultset.
    Therefore you have to define a FLOAT field in the first SELECT statement in order to avoid conversion to VARCHAR.
    Be aware that NULL and 0.0 are not the same thus NULL+0.0 does not equal NULL.
    In fact NULL cannot equal to any number or character value at all.
    BTW: you may want to use UNION ALL to avoid the search and removal of duplicates - looks like your datasets won't contain duplicates anyhow...
    Regards,
    Lars

Maybe you are looking for

  • Downloading PDF problem

    I'm having a very random issue with my work website:  www.redroosterfabrics.com. In the pattern gallery, you have the option  to download a pdf of a quilt pattern. What's been happening is someone will download a pattern pdf and will be  unable to op

  • Retrieve a line of text in a TextField ?

    Is it possible to get the text on a specific line in a text field and appy it to the text property of another field? For example, given a dynamic text field: jack be nimble jack be quick jack jumped over the candlestick Somehow extract "jack be quick

  • Cannot change home page

    cannot change home page. have moved and home page continues from last residence (router: 192.168.1.1). I now want a different home page. I have tried Tools>Use Current>OK, but my old 192.168.1.1 keeps coming back.

  • Notifying techs of users with issues

    How does a tech get to know who to sort out when a ticket is assigned to him/her?I have tried to modify the ticket notification template but the tech still doesnt know who he is to sort out.Sometimes the techs are on the field and dont need to login

  • Why does the same pdf sometimes open in Photoshop with a white bkgd and sometimes transparent?

    I am opening the same pdf file on two different computers with the same version of photoshop.  Why does it open with a transparent background on one computer and a white background on the other?  Is there any way to force it to open with a transparen