Populate list item dynamically

Hi all.
I have a problem. I must populate a list item with a select, using the add_list_element statement inside a loop, using a cursor. My problem is that I must parametrize the select of the cursor: I pass a parameter in the procedure which is a field of the select of the cursor, but I have no result. The statement is the follow
cursor c1 is
select distinct("name of the parameter")
from table
order by 1;
When I execute this statement I have no result. Is there anyone to help me???
Thank you all for your collaboration.

Hi dear,
as for as i understood your problem, you want to populate the element list with a select query and your are using cursor and add_elements for this purpose which is complex and lenghtly,
why dont you use populate_group and populate_group_with_query built-ins instead of add_elements built in, by above mentioned two builts ins, you can populate the element list with a query and even you can refresh your element list at any time during runtime by populate_group_by_query. here is an example, you can also take benefit from forms builder help;
in new_form_instance trigger write following code to populate a list with select query;
DECLARE
rg_id RecordGroup;
errcode NUMBER;
BEGIN
rg_id := Create_Group_From_Query( 'LIST1_GRP','select code_name, code_no from any_table where code_name = ''0107''',FORM_SCOPE,200);
errcode := Populate_Group( rg_id );
Clear_List('CNOTE_TYPE');
Populate_List('CNOTE_TYPE','ACCNO_GRP');
end;
user populat_group_by_query to refresh list elements after the forms is already load and elements list is already populated.
any further question, feel free.

Similar Messages

  • How to populate multiple list items dynamically?

    Dear members,
    I have a form there are 3 list items i want to populate these from a record group by dynamically.
    but i can be able to populate only one list item. the others give errors.
    frm-41337 cannot populate the list from record group.
    following is the program unit:
    PROCEDURE POPULATE_LIST_WITH_QUERY
         (p_list_item in varchar2,
         p_query in varchar2)
    IS
         cst_rg_name constant varchar2(30) :=
              GET_ITEM_PROPERTY(p_list_item,item_name);
         v_rg_id RECORDGROUP;
    BEGIN
         v_rg_id := FIND_GROUP(cst_rg_name);
         if id_null(v_rg_id) then
              v_rg_id := create_group_from_query(cst_rg_name, p_query);
         end if;
         if populate_group(v_rg_id) =0 then
              populate_list(p_list_item, v_rg_id);
              copy(get_list_element_value(p_list_item,1),p_list_item);
         end if;
    END;
    i call this in the when-create-record
    populate_list_with_query('gl_users.location_id',
    'select location_name, to_char(location_id) from gl_locations');
    populate_list_with_query('gl_users.company_id',
    'select company_name, to_char(company_id) from gl_company');
    populate_list_with_query('gl_users.group_id',
    'select group_name, to_char(group_id) from gl_user_groups');
    only one is populated others give errors.
    what is wrong?
    thanks
    Muhammad Nadeem
    Oracle Programmer
    CHIMERA
    Lahore
    0092-0301-8334434

    Hi again,
    Did the popup work ?
    For the list item , use the built-in add_list_element in a loop. Example : in the pre-form or when-new-form-instance trigger ,
    clear_list('block_name.list_item_name');
    for rec in (select column1,column2 from t_table order by 1 desc) loop
    ADD_LIST_ELEMENT('block_name.list_item_name', 1, rec.column1, rec.column2);
    end loop;
    See you

  • Dynamic populate list item

    Hello All,
    I have a list item for status. I need to dynamic build the item for list item depend on the status on the database.
    Status is 0, 1, and 2.
    If status 0 : list item contains status (1,2)
    if status 1 : list item contains status (2)
    if status 2 : list item contain status (1)
    Please give me the step how to do it.
    Any help from you is appreciated
    Jenny

    Hello All,
    Thank you very much for all your help.
    Instead of using the list item, my manager wants to use the text item with specific LOV based on the status code existed on the table.
    My question are
    1. Do I need to build multiple LOVs and call the specific LOV depend on the value of status code?
    LOV1 for status 1
    LOV2 for status 2
    2. Do I need to dynamic build the record group based on the value of the status code and call by 1 LOV?
    LOV
    Record group (where statement for status 1) and (where statement for status 2)
    If you do not understand my post, please let me know.
    Please give me your suggestion and any sample code.
    Any help from you is appreciated.
    Jenny

  • Unable to populate list items with criteria

    Hi
    I want to populate some values based on condition in a text field.
    I tried the code wihtout condition in new form instance and its working fine but when i tried with an condition on when mouse click on list item and its working for first action.If list having more than 1 values in list its became blank and not working
    DECLARE
    group_name varchar2(40) :='LSTCUR';
    group_id RecordGroup;
    list_id item := Find_item('TB.LSTCUR');
    status NUMBER;
    begin
    IF Id_null(group_id) THEN
    group_id := Create_Group_From_Query('LSTCUR','select distinct curr,curr from REC_CURR_V where br =:TB.PSRCH');
    END IF;
    Clear_list(list_id);
    status := Populate_Group('LSTCUR');
    Populate_list(list_id,group_id);
    end;
    rgds
    soumya

    soumya,
    Try this code.
    DECLARE
         RG_Group_ID RECORDGROUP;
         Num_Status NUMBER;
    BEGIN
         RG_Group_ID := FIND_GROUP('LSTCUR');
      IF NOT Id_Null(RG_Group_ID) THEN
              DELETE_GROUP(RG_Group_ID);
      END IF;
         RG_Group_ID := CREATE_GROUP_FROM_QUERY('LSTCUR', 'SELECT DISTINCT CURR, CURR FROM REC_CURR_V WHERE BR = ''' || :TB.PSRCH || '''');
         CLEAR_LIST('TB.LSTCUR');
         Num_Status := POPULATE_GROUP('LSTCUR');
         POPULATE_LIST('TB.LSTCUR', RG_Group_ID);
    END;Regards,
    Manu.
    If my response or the response of another was helpful, please mark it accordingly

  • How to populate List Item from the table in a form builder

    I want to know how to populate the List Item (pop up menu and combo box) from a table.
    Supposing I have a table Customer(cust_id,cust_name)
    and now I want to populate it in such a manner that I can update the data back to the database and also access the list on the form.

    This is the method i am using to populate a list.
    1- First of all you need to create a non-database list item for customer_name.
    2-create this procedure
    PROCEDURE populate_list_with_query
    --Populates the given list item with the specified query.
    (p_list_item in VARCHAR2
    ,p_query in VARCHAR2)
    IS
    /* Name the record group after the list item (no
    block prefix). */
    cst_rg_name constant VARCHAR2(30) :=
    GET_ITEM_PROPERTY(p_list_item,item_name);
    v_rg_id RECORDGROUP;
    BEGIN
    v_rg_id := FIND_GROUP(cst_rg_name);
    IF ID_NULL(v_rg_id) THEN
    v_rg_id := CREATE_GROUP_FROM_QUERY(cst_rg_name,p_query);
    END IF;
    IF POPULATE_GROUP(v_rg_id) = 0 THEN
    POPULATE_LIST(p_list_item,v_rg_id);
    /* Force display of first list element label
    in the list item. */
    COPY(GET_LIST_ELEMENT_VALUE(p_list_item,1),p_list_item);
    END IF;
    END populate_list_with_query;
    3- Create When-Create-Record on the block level and write this code
    BEGIN
    POPULATE_LIST_WITH_QUERY('bk1.customer_name',
    'SELECT customer_name, to_char(customer_id) FROM customer');
    END;
    In this example, the customer name is the (visible) list label and the customer ID is the (actual) list value
    i hope this will solve your problem ...

  • Populate list Item with a recordgroup?

    Hi Friend
    I want to populate a list Item with a "Recordgroup". Does it possible without using the add_eliment function?
    I did it through the Loop to read the item from record group. If the database changes the record does not change in my list item. because the list containing the added items which was delivered in the load time. But like Pressing F9, we can easily see the last changed data of the database.
    If possible please send me the detail code to me. Here I delivered the detail procedure which i did for that purpose.
    Farhad
    ==========================================================
    PROCEDURE Populate_Item_In_List (     List_name VARCHAR2,
                                                                                         QUERY_Text VARCHAR2,
                                                                                         rg_Level_Col_name VARCHAR2,
                                                                                         rg_Value_Col_name VARCHAR2) IS
         HERE THE PROCEDURE POPULATE THE LIST WITH THE REQUIRED DATA UNDER A CORRCET SQL (SELECT) COMMAND
         List_name                     THE LIST ITEM WHICH HAS TO BE LOADED BY THIS PROCEDURE
         QUERY_Text                     THIS CONTAINS THE QUERY TEXT BY WHICH THE LIST ITEM WILL LOAD
         rg_Level_Col_name THIS IS THE LEVEL OF THE REQUIRED ITEM THAT OBVIUSLY A CHAR DATA TO BE RETRIVE
         rg_Value_Col_name THIS IS THE VALUE OF THE REQUIRED ITEM THAT OBVIUSLY A NUMBER DATA TO BE RETRIVE
                   R_Group          RecordGroup;
                   Rowcount      NUMBER;
                   rg_name      VARCHAR2(40) := 'DefaultRG';
                   rg_id      RecordGroup;
                   errcode      NUMBER;
                   Lid                    Item;
    BEGIN
         --+++++++++++++++++++++THIS IS USED TO POPULATE THE RECORD GROUP+++++++++++++++++++++++++++++++++
                   rg_id := Find_Group(rg_name);                                             Find the record group                                                   +
                                                      --+
                   IF Id_Null(rg_id) THEN                                                                                                                                                                          --+
                             rg_id := Create_Group_From_Query(rg_name,Query_Text);                                                                                     --+
                             errcode := Populate_Group(rg_id);                                                                                                                                       --+
                   else                                                                                                                                                                                                                       --+
                             errcode := Populate_Group_With_Query(rg_id,Query_Text);                                                                            --+
                   END IF;                                                                                                                                                                                                                  --+
         --+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     
              If errcode = 1403 then
                   Message('There is no data to be retrive......');
              else
         --+++++++++++++++++++++THIS IS USED FOR LOADING DATA TO THE LIST ITEM++++++++++++++++++++++++++++
                   Rowcount      :=      Get_Group_Row_Count(rg_id);                              Counting the total rows in RGroup          +
                   Lid                    :=     Find_Item(List_name);                                                                                                                                            --+
                   Clear_list(Lid);                                                                                          Clear the list which is loaded now     +
                   FOR J IN 1..Rowcount LOOP                                                                                                                                                                     --+
         Add_List_Element(List_name,                                                            the name of the list item                              +
                                                      J,                                                                                index of the list                                                  +
                                                      Get_Group_Char_Cell('DefaultRG.'||rg_Level_Col_name,j),     Level of item+
                                                      Get_Group_Number_Cell('DefaultRG.'||rg_Value_Col_name,j) value of item+
                                                      );                                                                                                                                                                               --+
                   END LOOP;                                                                                                                                                                                                             --+
         --+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
              end if;
    END;
    ===============================================================

    Hi Farhad,
    You can make use of Populate_List built-in.
    Populate_List(list_id, 'RECGRP');
    You can find more information in online documentation of forms.
    Cheers
    Zakiy

  • Is it possible to populate list item in TAB CANVAS

    Hi,
    I have two datablock first is master and second is detail (master detail block) I want to populate second datablock fields on the basis of first data block selection (second block is displayed on Tabuler or Grid like canvas) I made list item type data fields on second or Tabuler canvas(detail block) and want to populate this list at run time on WHEN-NEW-BLOCK-INSTANCE trigger, is it possible, if yes what's wrong I am doing because this list population works fine on master block
    (master block with canvas type of FORM).
    Thanks and Regards.
    Khawar
    Message was edited by:
    skhawar03

    Hi,
    Fifty percent of my problem is solved second canvas list item values now populated successfully, but another problem is that it populates when I click second time on a required button, the button and queried items are in same datablock
    the code behind the WHEN-BUTTON-PRESSED trigger button is:
    declare
         exist_chk number:= 0;
    begin
         select count(*) into exist_chk
         from incident
         where ref_no = :incident.ref_no
         and inc_type_code = :incident.inc_type_code;
         IF exist_chk <> 0
              THEN
    SET_RECORD_PROPERTY(:system.cursor_record,'INCIDENT',status,new_status);
    Set_Block_Property('INTERP_DETAIL', ONETIME_WHERE, ' WHERE ref_no ='||:incident.ref_no||' and inc_type_code='||''''||:incident.inc_type_code||'''');
    execute_query;
    else
    display_message('msgbox_stop','No Master Data','First Enter Master Record ');
         end if;
    end;

  • How to populate list item depending another

    hello all,
    Am newbie to using Oracle forms 6i i have 3 list items namely CITY_NAME, STATE_NAME ,COUNTRY_NAME and i want to display city_name depending on state_name and display state_name depending on country_name... help me

    Hi
    Pls Study , try & Test the following...
    http://andreas.weiden.orcl.over-blog.de/article-28957008.html
    Hope this helps...
    Regards,
    Abdetu...

  • How to populate active directory users in to drop down list items dynamically in Share point 2010 ?

    Hi My self Arun in my current project i have a task on that active directory user  need to automatically populate in share point list drop down  please help me.  is that any out of box feature in share point 2010 ?   
    Thanking You 
    Arun 

    Arun,
    If you plan to implement the "Querying the Active Directory" based on my code snippet,
    and if you do not have permission [your account must be the part of domain admin] to do so,
    Then still you can do it in least effort through code,
    string usersInXml = SPContext.Current.Web.AllUsers.Xml;your xml string look like this.
    <Users><User ID="2" Sid="" Name="Administrator"
    LoginName="i:0#.w|murugesan\administrator" Email="" Notes="" IsSiteAdmin="True" IsDomainGroup="False" Flags="0" /><User ID="1" Sid="" Name="Murugesa Pandian" LoginName="i:0#.w|murugesan\murugesan" Email="" Notes="" IsSiteAdmin="True" IsDomainGroup="False" Flags="0" /><User ID="1073741823" Sid="S-1-0-0" Name="System Account" LoginName="SHAREPOINT\system" Email="" Notes="" IsSiteAdmin="False" IsDomainGroup="False" Flags="0" /></Users>
    You can user Linq to XML to filter the "LoginName,Name and Email and then populate your drop down list.
    * User must be logged into the site at least once.
    Murugesa Pandian.,MCTS|App.Devleopment|Configure

  • List item problem - couldn't pick a value

    Dear professionals,
    i used Andreas's code to dynamically populate list item (http://andreas.weiden.orcl.over-blog.de/article-28957008.html) and it works fine (nice work Andreas)!
    My problem is that i couldn't pick any value from list - I see many values, but there is now way to choose any of them. (video and picture are here: http://imageshack.us/g/3/property.jpg/)
    Also, i spotted that it's not possible to use Combo-box property along with encapsulating procedure - the form is just not opened...
    I'm using JRE 1.6, 10gR2 (10.1.2) F&R...
    Does anyone know why is that ?
    Thanks in advance,
    Adnan
    Edited by: adnanBIH on Jul 5, 2011 8:33 AM

    Andreas Weiden wrote:
    You didn't show us the query you use to populate the list. I would guess that all entries have the same value for the VALUE-column of the select, so that they are all "identical" from the value.Andreas bravo ! :))
    Yes, you're right - my select statement looks like this:
    select a value, "Word" label
    from emp;I'll fix it tomorrow - thx once again, generic procedure is excellent !
    Adnan

  • List item format mask

    hi dear
    possible to used format mask in list item DATE. i want that date will appear only 2007. possible this 'YYYY'
    but i tried to put in intial values but dont work error. i put $$YYYY$$.. anyone knows?

    There is no Format Mask for list items in the property palette. But you can enter years by clicking on Elements in List. Then type in each year (e.g., 2007) in both the List Element and List Element Value.
    Also look in the property palette for Initial Value and enter the desired year.
    If you don't want to hardcode the year(s), then you can populate the list item dynamically at runtime using built-ins. See "Manipulating List Items at Runtime" in the Help documentation for examples.

  • List Item in Oracle forms

    Hello, I am using oracle weblogic 10.3.5 with oracle forms 11g at windows 7 platform.I have an oracle form with a list item(database item). Now I have attached a record group from another database table to populate list item.My list item is by default set at null value but I want  to show a particular value in list item as when new instance  of list item is occurred:
    |                 ABC                                    |             
    |__________________________________|
    it is a list item.It has 4 values as
    Name          Value
    ' '                    NULL
    A                    1
    B                    2
    ABC                3
    D                    4
    and when list item instance is loaded then I want to show the ABC (able name) and  3 (value) in list item.
    thank You
    regards aaditya

    Block Level Trigger: When new record instance
    :list_item:=3;

  • Problem with List Item in oracle forms

    Hello Experts,        
                         I am new in oracle forms and i am using oracle forms 11g with weblogic 10.3.5 at windows 7.
    I have 3 database tables say(tbl_city,tbl_state,tbl_address).
    tbl_city
    C_ID
    C_name
    S_ID
    0
    None
    0
    1
    XYZ
    1
    2
    AS
    2
    3
    AXD
    2
      tbl_state
    ID
    s_ID
    S_Name
    0
    None
    1
    XY
    2
    ASD
    tbl_address
    A_ID
    A_Street
    S_ID
    C_ID
    1
    ABC
    1
    1
    Now I have made an oracle form having data block tbl_address with base table name tbl_address. In the form there are two list: one(list_state) for State_Name & State_ID and another(list_city) for City Name & C_ID display.
    Here I want when I set State_name to ASD then List item list_city should be populated with the values having State_NAME=ASD not of State_Name=XY or None.I have tried it to make but not succeeded.I have made a procedure to populate list_city list item as:
    -- here item_nm-->List item Name,  sel_val & sel_val2 for selecting C_ID and C_NAME,   tablNm---->tbl_CITY,  whr for where condition,   mtch--->selected value of list_State(list item in form)
    PROCEDURE list_item(block_nm varchar2,item_nm varchar2,sel_val varchar2,sel_val2 varchar2,tablNm varchar2,whr varchar2,mtch varchar2) IS
    group_id RecordGroup;
    group_name varchar2(10) :='abc';
    status NUMBER;
    query1 varchar2(350);
    item_name varchar2(20);
    match varchar2(50);
    BEGIN
        match:=mtch;
        item_name:=block_nm||'.'||item_nm;
      group_id := find_group(group_name);
    if not id_null(group_id) then
    delete_group(group_id);
    end if;
    --if whr='' then
    --    match:='0';
    --    end if;
    query1:='select '|| sel_val || ',TO_CHAR('|| sel_val2 || ') from '|| tablNm ||' where '||whr||' = '||mtch;
    message(query1);
    group_id := Create_Group_From_Query(group_name,query1);
    /* Select statement must have two column*/
    status := Populate_Group(group_id);
    Populate_List(item_name,group_id);
    exception
        when others then
        message('error');
    END;
    I am not  able to guess what trigger  in oracle forms should be used to populate list item(list_city). Please help by giving useful suggestion.
    Thank You
    regards
    aaditya

    979801 wrote:
    If I use LOV in place of List Item,Then I have to populate a LOV at run time.How could I maintain a record group n attach to LOV at run time?
    On my previous post I have mentioned record group as follows:
    select * from tbl_state where s_id=:tbl_address.s_id;
    If :tbl_adress.s_id chaned during the time of run, then output values of list_city (LOV) is also changed.

  • Populate list from recordset on Parent/Child form

    We have a parent/child form and want to populate several lists from recordsets. We can populate the child canvas by calling a procedure from the WHEN NEW FORM INSTANCE trigger but the same code fails when trying to populate a list on the Parent canvas. If I move the code to a PRE-BLOCK trigger on the parent block, then it works. I just kept moving the code until I found something that works. Can anyone tell me why it wouldn't work from the WHEN NEW FORM INSTANCE trigger? Is PRE-BLOCK the correct place?

    WHEN-NEW-FORM-INSTANCE trigger
    Add_Orgs_Lists('HR_PERSONS.OFFICE_SYMBOL');
    PROGRAM UNIT
    PROCEDURE Add_Orgs_Lists (list_name VARCHAR2) is list_id ITEM;
         col_name VARCHAR2(80) := SUBSTR(list_name, INSTR(list_name, '.')+1);
         sql_stat VARCHAR2(2000);
         BEGIN
         --Find ID for list item.
              list_id := FIND_ITEM(list_name);
              IF ID_NULL(list_ID) THEN
                   MESSAGE('List Item ' ||list_name|| ' does not exist.');
                   RAISE FORM_TRIGGER_FAILURE;
              END IF;
         --Build the SQL statement.
         --     message('In Get_Org');
         sql_stat := 'SELECT Distinct Org_Name, Org_Name FROM HR_Organizations
         ORDER BY 1 ASC';
         Populate_the_List(list_id, sql_stat);
              EXCEPTION
                   WHEN OTHERS THEN
                        MESSAGE('Internal error occurred in Add_Orgs_List.');
                        RAISE FORM_TRIGGER_FAILURE;
    END Add_Orgs_Lists;
    PROCEDURE Populate_the_List (list_id ITEM,
                                                           sql_stat VARCHAR2) is
         group_id RecordGroup;
         outcome NUMBER;
         --List_Elements  VARCHAR2(40);
    BEGIN
              --message('In Populate_the...');     
    --Create temporary record group.
    group_id := CREATE_GROUP_FROM_QUERY('List_Elements', sql_stat);
    IF ID_NULL(group_id) THEN
         MESSAGE('Record Group could not be created in Populate_the_List.');
         RAISE FORM_TRIGGER_FAILURE;
    END IF;
    --Populate record group.
         outcome := POPULATE_GROUP(group_id);
         IF outcome <> 0 THEN
              MESSAGE('Record Group could not be populated in Populate_the_List.');
              RAISE FORM_TRIGGER_FAILURE;
         END IF;
    --Populate list item
         POPULATE_LIST(list_id, group_id);
    --Destroy the temporary record group to release resources
         DELETE_GROUP(group_id);
    EXCEPTION
         WHEN OTHERS THEN
         MESSAGE('Internal error occured in Popluate_the_List.');
         RAISE FORM_TRIGGER_FAILURE;
    END Populate_the_List;
    The error is FRM-41337 Cannot populate the list from record group. It happens when we open the form. We are using the same code to populate the lists on the child form (except the SQL statement is different) and it works correctly.
    I appreciate your help.

  • Populating List Item

    HI !
    I want to populate List item , from table using SQL query,
    e.g. select * from dept_name,dept_no from dept; and want to save deptid. i.e list item disply only dept_name and store/save dept_id as it is foreign key.
    Thanks & Regards !

    Hi !
    I have adopted this technique.
    I have made function combo_population :
    PROCEDURE COMBO_POPULATION(COMBO_NAME VARCHAR2, COMBO_LIST VARCHAR2)
    IS
         rg_num number;
    BEGIN
         rg_num := populate_group(combo_name);
    populate_list(combo_list, combo_name);
    END;
    I create record group dept_rg (select deptname,to_char(deptid) from dept)
    And i called function at when-new-form-instance
    combo_population('dept_rg','emp.empdepart');
    It works very well only it shows list of department Name, and save department id only.(noted that, on form the list item is deptid and only change its type to varchar2 then above function works well).
    Regards!

Maybe you are looking for

  • Need help for converting c# encryption code to javascript

    I have this below code in c# i need to convert it into nodejs i would really appriciate some help in this. Rfc2898DeriveBytes passwordDb2 = new Rfc2898DeriveBytes(passphrase, Encoding.ASCII.GetBytes(DeriveSalt(grains))); byte[] nonce = passwordDb2.Ge

  • Forward Inbound - IDOC process

    Has anyone used this option WE45- forward Inbound for  inbound IDOC automatic processing? <b> The help says "Specify a job as a logical address for forwarding the data from an inbound IDoc or from a status confirmation".</b> But need more details if

  • Advice for problem

    I'm having trouble with an inheritance problem. I'm trying to use menu-based inheritance on a problem. Can someone look at this and give me some input. In particular when I try to pass user input to savings or checking, what am I doing wrong. Here is

  • Back up disk is hugh

    My MacBook Pro's HD has 38 GB on disk. My back up disk has 64 GB on disk. All it has on is the back ups it does from my laptop. Why does it have twice the stuff on it? I also have another Macbook, and same story. The backup disk, which only has bacup

  • GPU Problems with my GT60 2OC-024US

    Hi guys! A couple of days ago, I opened up my GT60 to add a new SSD I bought and, since I was opening it up, I also repasted the GPU and CPU. It was the first time I was doing it on this computer, but its not the first time I do a repasting on a pc.