How to Populate_List ?
Developer 6i.
I have a table SKILL with two columns SKILL and DESCRIPTION.
I am trying to create a list item for SKILL column using Populate_List built_in.
1. First I create a poplist item SKILL_ITEM in the Datablock SKILL
2. Create a record group SKILL_record
(Select SKILL, SKILL
from SKILL
order by 1)
3. Create WHEN_NEW_FORM_INSTANCE Form trigger:
Begin
Retrieve_List ('Skill.Skill_item','Skill_record'); --I am not sure of what I am doing here...
Clear_List ('Skill.Skill_item');
Populate_List ('Skill.Skill_item','Skill_record');
End;
4. Run the form and receive this error:
FRM-30191: No list items defined for required poplist.
List SKILL_ITEM
Item: SKILL_ITEM
Block: SKILL
Form: JUSTSKILL
FRM-30085: Unable to adjust form for output.
Thanks a lot
Thank you for your advice!
The list gets populated once the form loads but BEFORE that it shows me this error:
FRM-30351: No list elements defined for list item.
List SKILL_ITEM
This is my WHEN_NEW_FORM_INSTANCE trigger:
Declare
X_var number;
Begin
X_var := populate_group ('skill_record');
IF
x_var = 0
THEN
populate_list ('skill_item', 'skill_record');
END IF;
End;
Do you know why I get this error?
Thanks a lot.
John Ravich
null
Similar Messages
-
How to set a default value to t-list when creating t-list programmatically
hi,
I'm creating a t-list programmatically
by calling
n = populate_group('groupname');
populate_list('form.list','groupname');
In this case how to set a default value for the t-list
thanks
raniI am not sure how it works in Web Dynpro for ABAP, but in Web Dynpro for Java to set default drop down value you will have to set the value for particular attribute (which is linked to the dropdown element) in the context
like
wdContext.currentContext<nodeName>Element.set<FieldName>(<defalut value>)
This generally done in Initialization method of the controller. -
Please tell me how to handle list item in this concern
please tell me how to handle list item in this concern
My problem is:
i have a category table with column categoryname(varchar type)
I want to display the records of categoryname in a drop down list (i.e., list item )
So ..please tell me how to do it
Thanks in advance..This code is just a sample from the Help documentation. It won't work until you modify it for your form.
Why do you have "steps" in your code? You are suppose to do what the steps tell you. You don't place the steps in your code. The steps must be removed from your code.
Step 1 code goes in a program unit, not in a trigger.
Step 2 and 3 code usually goes in a trigger.
You will have to replace the names of the items and record group with your own names as you have defined them in your form.
step 1: create a procedure in your application
procedure load_list(itm in VARCHAR2, rg in VARCHAR2) is
group_id RecordGroup := Find_Group(rg);
list_id Item := Find_Item(itm);
Begin
if Populate_Group(group_id)<>0 then
Message('Unable to populate record group');
Raise Form_Trigger_Failure;
end if;
Clear_List(list_id);
Populate_list(list_id, group_id);
end;
step 2: create a record group named rg_cat and assign Record Group Query to something like "select categoryname from category"
step 3: call this procedure as
load_list('categoryname','rg_cat'); -
How to get values/data stored in the database into a list-item.
how to get values/data stored in the database into a list-item.
i tried to make a list item without any values assigned to it...but i got the below error.
FRM-30191: No list items defined for required poplist.
or
FRM-32082: Invalid value for given item type.
List EMPNO
Item: EMPNO
Block: EMP
Form: MODULE5
FRM-30085: Unable to adjust form for output.
then according to some docs, i tried the the following for the trigger
when-new-form-instance
declare
rg_name varchar2(40) := 'emp_rec';
status number;
groupid recordgroup;
it_id item;
begin
it_id := Find_Item('empno');
groupid := create_group_from_query(rg_name, 'select empno from emp');
status := populate_group(groupid);
populate_list(it_id, groupid);
end;
but yet didnt work... :(
so how the heck do i get values fetched from the database table into the list item?for list items you need to values in the record group, one is the shown value and one is the returned value.
Check out the online help for the populate_list built-in.
You'll need something like select ename,ename from emp as the record group query. -
How to insert data values using Poplist to both block items....
Hi,
I have created a poplist which should return a sequence(which is stored in a db table) and a description .
The sequence(stored in table) is of number datatype and the description is of varchar2.....
I have created the required record group as:
rg_id := Create_Group_From_Query('TEXNIKOS_GROUP', 'select eponymo , to_char(seq_code_ergazomenoy)
from ref_ergazomenos,ref_eidikothta
where ref_ergazomenos.code_eidikothtas_type_id=ref_eidikothta.seq_code_eidikothtas
order by 1');
status := Populate_Group( rg_id );
if (status = 0)
then
POPULATE_LIST('MOD2_KLISI_VLAVIS.TEXNIKOS_FNAME','TEXNIKOS_GROUP');
end if;The field 'MOD2_KLISI_VLAVIS.TEXNIKOS_FNAME' is the description i described above ... and whereas this block item is filled with the selected poplist... the sequence - the code of the db table- is not.....
Is it possible to do so.... ????
NOTE: i use Dev10g.
Many thanks,
SimonI have two block items:
seq_code_ergazomenoy: number datatype , db item , invisible
eponymo:varchar2 datatype , non db item , visible
How to fill these both block items using the written record group...?????
Now , only the "eponymo" block item is filled but not the required "seq_code_ergazomenoy"....
In other words.... is there any manner to do the column mapping of the two selected columns (in the dynamically created record group) to the two block items....????
Thanks,
Simon
Message was edited by:
sgalaxy -
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 ... -
How to show the text, instead of number
Hi Buddies;
I'm creating a form, using oracle forms 10g. In this form I'm showing the equipment information. We sell services, and for some services, we provide the equipment, but we have a lot of a equipment, so we need to keep an inventory of these equipment. So for each equipment we have several status, example; Available, Returned ok, Assigned, Stolen, Returned by Damage .
These status resides in other table, but in the where I'm getting the info to show thru the screen, just have a code.
What I want, is to change this code, for the description of that code, example, 01 = Available. So, if the record for status has code 01, instead of 01, I want to show the word Avalaible.
Can somebody explain me, how to do this.
Thanks
ANGoooppss i missed one this there is you code mistake also...
Begin
Select status_name into :EQP.status_code -- Here use description field name not the same code field
from eqp_status
where status_code = :EQP.status_code ;
End;Also increase the size of datatype of description item so it can hold description.
I like to use LIST ITEM in these type of cases ;) Its easy and not required any POST-QUERY and POST-CHANGE code. As craig said you will have to keep on POST-QUERY and any performance issue etc.
So, i would prefer to use this method...
1. For that code field set the item type property to LIST ITEM.
2. Create one record group of your this query like...
Select status_code, status_name
from eqp_status3. Populate that record group into that list item. like
Trigger = WHEN-NEW-FORM-INSTANCE form-level
DECLARE
vGrp NUMBER;
BEGIN
vGrp:=POPULATE_GROUP('GROUP_NAME');
POPULATE_LIST('LIST_ITEM_NAME','GROUP_NAME');
END;Now at the time of query it will automatically show you saved status.
-Ammad
Edited by: Ammad Ahmed on Apr 29, 2010 10:02 PM -
How do i create a combo-box?
Dear guys..how do i create a simple combo-box that get populated with data fron the database at run-time? I can create pop-lists , but that is hardcoded and no good to me.
Kind Regardscheers folks..most helpful :)
<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by [email protected]:
Hi, Satnam Bihal
I think this code will solve your problem.
DECLARE
rgid RECORDGROUP ;
err NUMBER ;
BEGIN
:main.dynamic_list := '' ;
:main.list_value := '' ;
IF :main.sql_text IS NOT NULL THEN
CLEAR_LIST('main.dynamic_list') ;
rgid := CREATE_GROUP_FROM_QUERY('rg', :main.sql_text) ;
err := POPULATE_GROUP(rgid) ;
POPULATE_LIST('dynamic_list', rgid) ;
DELETE_GROUP(rgid) ;
END IF ;
END ;<HR></BLOCKQUOTE>
null -
How to create Static Record group in Oracle Forms??
Dear All,
I have the following values V1,V2 to be placed in my list item field during DML operations.
I have an example to create the record group based on the table; whereas i have never tried for static value creation.
Could you please guide me how can i acheive this.?
Thanks ....
Regards,
Sunil.GThanks dhivya for your reply.
Actually what happens is; when i use the same methodology as you mentioned, it is asking me to set the Initial value.
Whereas in my applications; user has to manually select any of the values i.e eithe V1 or V2 for the first time.
Moreover i have found the query:-
I have created a static record group RG_VERSIONS i.e creating a new record group with the static values mentioning the "Column names " as "Version_label" which i have given the column values as "V1" and "V2" and then another column name as "Version_value" with the column values as "V1" and "V2".
Then i used the below query in the WHEN-NEW-FORM-INSTANCE trigger:-
PROCEDURE p_when_new_form_instance
IS
l_rg_id recordgroup;
l_item_id item;
BEGIN
--Populating value for Version Type based on static record group
l_rg_id := FIND_GROUP ('RG_VERSION');
IF NOT ID_NULL (l_rg_id)
THEN
l_item_id := FIND_ITEM ('BLOCKNAME.COLUMN_NAME');
POPULATE_LIST (l_item_id, l_rg_id);
END IF;
END p_when_new_form_instance;
Then it was working fine.
Thanks for your time.
Regards,
Sunil.G
Edited by: Sunil G on Jun 27, 2010 6:00 AM -
How are listbox and radiobutton items working in oracle forms?!?
Hi all.
I need some help over may be a standard case in every real project.
Imagine i have a db table PERSONS -> PERSONID, NAME, TOWNID, MATRIALSTATUSID
and table TOWNS -> TOWNID, TOWNNAME
and table MATRIALSTATUS -> MATRIALSTATUSID, NAME
And i have a standard oracle form with text item person name, listbox item with many towns (from TOWNS table) and the town of the concrete person is selected when the form is inited, after that we can change it by selecting other town and saving it to db.
The same is with matrial status but lets make it as radio group with 3 buttons married, not merried, divorced.
So my questions is how to populate the listbox(radiogroup) for 1 person by selecting data from other preferenced tables. And most important how this data is populated in the list box for example i.e. every town name is indexed in some way or what. I am a java developer and for example in java the control listbox item has two attributes the name(string) that is displayed in the listbox and a index binded for that name, and i work with indexes and show strings. I read about LOV but couldn't understand how to "index" the populated values. Is it possible.
And please can you give me some example of how to load (populate + set current town), change and (if it is possible) "index". The same case appears to be valid with radio buttons and check boxes.
You could give me some tutorials too, i cant find simple and focused on the problem examples.
Thank you.
Best Regards.Hi,
well here is what i done for now.
First I created recordGroup with query SELECT GENDER, GENDERID FROM GENDERS (I want to select all genders and place them in listbox)
After that i created Listbox and on triger when-new-form i placed this code:
DECLARE
it ITEM:=FIND_ITEM('PERSONS_DETAILS.GENDER');
BEGIN
CLEAR_LIST(it);
POPULATE_LIST(it, 'RG_LIST');
DEFAULT_VALUE(NULL, 'GLOBAL.PERSONID');
IF :GLOBAL.PERSONID IS NOT NULL THEN
SET_BLOCK_PROPERTY('PERSONS_DETAILS', ONETIME_WHERE, 'PERSONID=' || :GLOBAL.PERSONID);
GO_BLOCK('PERSONS_DETAILS');
EXECUTE_QUERY;
:GLOBAL.PERSONID:=NULL;
END IF;
END;
Imagine i have a main form PERSONS that displays general information about many persons (the data is retrieved from PERSONS db table). The form PERSONS displays PERSONID, PERSON FIRSTNAME and PERSON LASTNAME. When a user double click on some row from the PERSONS FORM( i have tabular datablock that displays the person data) other form 'PERSONS_DETAILS' must be displayed with detailed information about the selected person. The data about the selected person is loaded well but i want gender to be listbox and the user can change it if he wants. So i have TABLE GENDERS 1:N with PERSONS and the table has GENDERID AND GENDER. When the user double clicks on single person i must populate the list with all possible genders from the GENDERS table and set the gender of the selected person. How to do that?
P.S.: The example with gender is not very good because it could be only male female, but don't worry about it. You may think about gender list as townlist :)
It finds me the GENDER LIST and populates it. After that i take the personId (that is global variable and comes from previous form) and displays all the data for the person with id personid.
When i compile the form it gives me :
FRM-30351: No list elements defined for list item.
List GENDER
Edited by: user9536806 on Nov 19, 2008 3:01 AM -
Hi All,
How to Handle Automatic Skip Property of Item in Oracle Forms through Custom.pll or from other methods.
This is a enhancement requirement.
When ever user enter value in field 1 then automatically cursor should go to next field.Hello Bobb,
You can create a trigger(when-list-changed) for each list item where you could:
1.recreate the record groups and then use POPULATE_LIST so you can hide the selected values. In forms builder online help there are some good examples about create record groups dynamically.
or
2.you can perform a validation instead of hiding the selected values. If the values is already selected the display a message 'Value already selected....'
Second option is much faster(only an 'if clause')
Hope this helps.
Regards,
Alex -
How to create button programmatically and assign trigger for it and add code
is that possible ?
How can I create item a button for example programmatically (at run time)
and create trigger (when-button-pressed) programmatically and write a code
in the trigger body as well programmatically.
thankxHello David
I used the way list and go button which is more safer than creating buttons because
you can populate the list on fly.
| dropdown list \/
| go button |
PROCEDURE populate_user_function_list IS
rg_list_id RECORDGROUP;
ret_code NUMBER;
BEGIN
rg_list_id := FIND_GROUP('RG_LIST');
IF NOT ID_NULL(rg_list_id) THEN
DELETE_GROUP(rg_list_id);
END IF;
rg_list_id := CREATE_GROUP_FROM_QUERY('RG_LIST','SELECT FUNCTION_ID, FUNCTION_ID FROM SMS_ROLE_FUNCTION WHERE SMS_ROLE_FUNCTION.DB_ROLE ='||''''||:GLOBAL.USER_ROLE||''''||' ORDER BY SEQUENCE_NO');
ret_code := POPULATE_GROUP(rg_list_id);
--Populate record group.
IF ret_code <> 0 THEN
bell;
MESSAGE('Record Group could not be populated');
RAISE FORM_TRIGGER_FAILURE;
END IF;
POPULATE_LIST('DYNAMIC_BLK.USER_FUNCTION','RG_LIST');
DELETE_GROUP(rg_list_id);
END;
--this is the button to go the user selection
begin
if :DYNAMIC_BLK.USER_FUNCTION is not null then
--go to selected form
call_form(:DYNAMIC_BLK.USER_FUNCTION,NO_HIDE,DO_REPLACE,NO_QUERY_ONLY,NO_SHARE_LIBRARY_DATA);
else
bell;
message('Please select a function');
end if;
end; -
How to demote to body from the keyboard in outline form?
How to demote to body from the keyboard in outline 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 ... -
How to Populate a List item with LOV'S
How to Populate a list of items with Lov's
and then how to dynamically change the Values of one LIST Item
Based on the Value of anothe List item976798 wrote:
--Hello..I want to ask that How to bind a list item with table values? this below code does not populate items from database to list item.Pls any body give me solution.
declare
group_id RecordGroup;
list_id Item:=Find_Item('LST_CLASS');
status number;
begin
group_id:=Create_Group_From_Query('Answer_List','select CLASS_ID,CLASS_NM from CLASS_MSTR');
status:=Populate_Group('Answer_List');
message(to_char(status));
Populate_List(list_id,group_id);
end;Welcome to the Oracle Forums. Please take a few minutes to review the following:
<ul>
<li>Oracle Forums FAQ
<li>Before posting on this forum please read
<li>10 Commandments for the OTN Forums Member
<li>How to ask questions the smart way
</ul>
Following these simple guidelines will ensure you have a positive experience in any forum; not just this one!
Check this link: How to Dynamically Populate a Pop List ?
Hope this helps
Hamid
If someone's response is helpful or correct, please mark it accordingly. -
How to populate a Drop Down List?
Hello all,
im having trouble populating my dropdown list... i would like to populate it using records from BOOK_INFO.BOOK_CN feild in my database..... could some one give me simple step -by -step instructions as to how i would achive this....
im using 6i forms with 10g database
thanks for your patience
RamiThis one,
--WHEN-NEW-FORM-INSTANCE
DECLARE
group_id RecordGroup;
list_id Item := Find_Item('MYBLOCK.myitem');
status NUMBER;
rg_name varchar2(10) := 'rgroup';
BEGIN
clear_list(list_id);
group_id := Find_Group(rg_name);
IF NOT id_null(group_id) then
Delete_Group(group_id);
End if;
group_id := Create_Group_From_Query(rg_name,
'SELECT ENAME ,ename FROM EMP');
status := Populate_Group(rg_name);
Populate_List(list_id, group_id);
END;Anyway, search in this forum, you'll find more and more samples.
Maybe you are looking for
-
How to get a List of fields in view
Hello, There are views with a lot of fields from various context nodes in the view. Is there any way to get a good list of the fields that are used in the view? When I use show technical details of the fields in the the configuration tab I can get de
-
MacBook Pro's Contacts will not sync with iPhone?
I have recently installed the IOS 5 on to my iPhone but for some reason it is not letting me sync my contacts. It wiped all my contacts off my phone. I tried to sync them back to it when I got home and nothing happens. There are still no contacts the
-
Is there a way in SAP or is it a bug.
I have a system id Zauto, we are sending mail from SAP to external system from this ID. But if an email id is wrong or undelivered, then we are not getting any confirmation in SAP.. is there a solution to this. Any help in this regard is appreciated.
-
PUSH NOTIFICATIONS DOESNT WORK IN LUMIA 925!!!!!
I have tried Facebook, Instance, Viber. Nothing pops out in the lock screen. It seems only txt and phone calls only register to Lumia 925. I am on 3G/4G LTE connection and even on the wifi it doesnt pop out. Why is it like this? Any social thing does
-
Bonjour, Je n'arrive pas à télécharger after effects CC, j'ai cliqué sur télécharger et rien ne se passe.