iSelfSchooling.com  Since 1999     References  |  Search more  | Oracle Syntax  | Free Online Oracle Training

    Home      .Services     Login       Start Learning     Certification      .                 .Share your BELIEF(s)...

 

. Online Accounting        .Copyright & User Agreement   |
    .Vision      .Biography     .Acknowledgement

.Contact Us      .Comments/Suggestions       Email2aFriend    |

 

How to populate poplist item?

Hands-On problem

===================

Your client has a form that contains a product description. They don’t want that their data entry staffs to type a product description. You, as a programmer, have been asked to change their form so that the product description item is populated from the PRODUCT table. They therefore are able to select the product description. You need to change the “text item” object to the “list item” object with the item type as “poplist.”

 

 

Gathered By: John Kazerooni

Solution:

=========

Assuming that you have a form that has an item that contains the product description.

 

1-    Go to the object navigator window and open the “product description” property palette.

 

2-    Change “item type” to “list item.”

 

3-    Make sure that “list style” is “poplist.”

 

4-    Open the “Elements in list.” You do this just to avoid getting an error regarding with the “No value defined in the list item” error message. 

 

5-    Type “A” in “List Elements.”

 

6-    Type “A” in “List Item Value.”

 

7-    Close the “product description” property palette.

 

8- Create a record group and name it “rg_prod_desc” with the 

   following query:

(Make sure that the “Based on the query below” option is selected.)

 

   SELECT descrip A, descrip B 

     FROM product 

     ORDER BY 1  -- do not type “;” at the end.

 

Note that you must define the descrip column twice. The first one is for label, and the second one is for the value.

 

9-    Open the “rg_prod_desc” property palette and change the “Name” item and the “Record Group Fetch Size” item to your desire value.

For example:

Change “Name” to “rg_prod_desc.”

Change “Record Group Fetch Size” to 10.

 

10-Close the property palette. 

 

11- Create the “WHEN_NEW_FORM_INSTANCE” trigger with the following code:

 

DECLARE 

   STATUS NUMBER;

   Problem EXCEPTION;

 

BEGIN

 

   -- to populate the group

      STATUS:=POPULATE_GROUP('RG_PROD_DESC');

 

  -- Check that the select statement was executed successfully.

 

    IF STATUS <> 0 THEN

       RAISE problem;

    ELSE

       -- to populate the list item

       POPULATE_LIST('DESCRIP', 'RG_PROD_DESC');

    END IF;

 

EXCEPTION

      WHEN problem THEN

         MESSGAE ('We have a problem to query the PRODUCT table.');

END;

 

12- Compile and close the trigger.

 

13- Run the form, go to the product description item, and click on the description poplist. You should see the items listed.

 

Google
 
Web web site