I have seen the example of dependent comboxes. I can not make it to work though if the dependent comboboxes are within the same row on a grid. This is my code

XML

 <column headerLabel="MATERIAL">
        <comboBox name="materialtypecombo" displayColumn="NAME" valueColumn="MATERIALID" column="MATERIALID" listDataSource="MATERIAL1">
        <events>
            <valueChanged action="populateMaterialDetail"></valueChanged>
          </events>
         </comboBox>   
      </column>
      <column headerLabel="MATERIAL DETAIL">
          <comboBox name="materialdetcombo" displayColumn="MATDTNAME" valueColumn="MATERIALDETAILID" column="MATERIALDETAILID" listDataSource="MATERIALDETAIL1"/>
      </column>

Procedure

PROCEDURE populateMaterialDetail IS

component_NM varchar2(100);

BEGIN api_component.setValue('PRESTIMATIONWASTE.materialdetcombo','');

api_datasource.setBindvar('MATERIALDETAIL1.MATERIALID', api_component.getValueNR('PRESTIMATIONWASTE.materialtypecombo'));

api_datasource.executeQuery('MATERIALDETAIL1');

END;

asked 13 Feb '14, 05:59

chris2014's gravatar image

chris2014
117
accept rate: 0%


Hi Christos,

I think there is a broader issue here than your code not working. Even if it did work, I don't think it would do what you expect it to do. The problem is when the second combobox's data is refreshed, it will be refreshed in all the comboboxes in the Grid. That's probably not what you want. You want each combo box in the grid to show a different set of values. However, since they are all tied to the same datasource (MATERIALDETAIL1 in your case), if that datasource's data is refreshed with the executeQuery API, all the comboboxes in the Grid will show the same values.

In your case I would use an LOV bound to the MATERIALDETAIL1 datasource, instead of a combobox for the second field which's dependent on the first combobox.

Hope this helps.

Kind regards,
Yalim

link

answered 14 Feb '14, 01:35

Yalim's gravatar image

Yalim ♦♦
2.8k5
accept rate: 21%

edited 14 Feb '14, 01:35

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×30

Asked: 13 Feb '14, 05:59

Seen: 1,031 times

Last updated: 14 Feb '14, 01:35


© Copyright Gerger 2017