Reputation: 187
I have created Oracle Forms 10g form and want to display LOV by pressing the button. On When-Button-Pressed trigger I have:
go_item('MyBlock.Item1');
do_key('LIST_VALUES');
LOV has 6 columns and 2 of them are bound to 2 items: MyBlock.Item1 and MyBlock.Item2. When I press the button LOV appears and I can make a choice. LOV inserts data into MyBlock.Item1 and MyBlock.Item2 and everything is fine. But if I want to make another choice and press the button again LOV doesn't appear. I don't know what is the problem.
Button and both items are in the same data block, I set Update Allowed and Required to No for both items and Mouse Navigate to No for button (I saw this on few forums).
Upvotes: 1
Views: 2358
Reputation: 187
I finally found solution (using oracle's OTN discussion). The problem was stored procedure I call after first popping up of LOV. First time, after I chose a value I delete record of another block using stored procedure. In that procedure I set values of columns MyBlock.Item1 and MyBlock.Item2 are connected with. But on the form the old values remains on items. I removed update this two columns in procedure and it works now. But I needed this two fields to be updated to null automatically.
The solution is that I first change values of those items on form and then I call stored procedure. It works now.
Upvotes: 0
Reputation: 679
Try putting synchronize command between these two lines:
go_item('MyBlock.Item1');
Synchronize;
do_key('LIST_VALUES');
Upvotes: 0