3 Replies Latest reply: Aug 6, 2013 4:22 AM by Christian Erlinger RSS

    About Query Data Source Columns property

    Tiep

      Hello everyone,

      I'm new to Oracle Forms version 10.1.0.2.

      When I create a data block based on a table using Data Block Wizard, the block's Query Data Source Columns property is automatically populated with column definition entries corresponding to the columns of the base table.

      I tried making changes to these entries, for example by changing the data types to wrong data types or even deleting them, and I found that those changes had no effect on the block at all. The form was still working as I wanted.

      Please explain what is exactly the role of the block's Query Data Source Columns property.

       

      Thank you very much.


      p.s: The F1 key help says "The Query Data Source Columns property is valid only when the Query Data Source Type property is set to Table, Sub-query, or Procedure". So, please explain in each context of Query Data Source Type.

        • 1. Re: About Query Data Source Columns property
          Tiep

          Someone help me, please!

          • 2. Re: About Query Data Source Columns property
            Tiep

            No one knows??? Help me

            • 3. Re: About Query Data Source Columns property
              Christian Erlinger
              p.s: The F1 key help says "The Query Data Source Columns property is valid only when the Query Data Source Type property is set to Table, Sub-query, or Procedure". So, please explain in each context of Query Data Source Type.

              IMHO those properties are very self-explaining: It is the data source of the block, or in other terms: how it is populated.

              Table means the data block is based on a table and subsequently will be populated by

               

              select col1, col2, col3 from your_table
              

               

              With sub-query the block will be populated with your subquery; forms will issue

               

              select col1, col2, col3 from (
                -- this is your subquery
                select col1, col2, col3 from tab1, tab2 where [....]
              )
              

               

              With Procedure in short you'd have a stored procedure which returns a ref cursor and the block will be populated by the ref cursor.

               

              As for your question about the name: this actually should matter; the default is NULL which means that there needs to be a column which has the exact name as the item so in the above sample with table the item associated with your_table.col1 should be named col1. If it isn't the property should be named like the column. If this property also doesn't reflect the name this shouldn't work IMO.

               

              cheers