go_item doesen't works ! [message #541693] |
Wed, 01 February 2012 21:27 ![Go to next message Go to next message](/forum/theme/orafaq/images/down.png) |
![](http://www.gravatar.com/avatar/b0919056cea651e0a6d20a1437c20ade?s=64&d=mm&r=g) |
ollivier
Messages: 19 Registered: January 2012 Location: chihuahua
|
Junior Member |
|
|
I hab a button:
flag:=show_lov('lov16');
if :block.cliente_no is not null then
go_block('clientes');
execute_query;
go_item('block.codigo');
end if;
it calls a LOV and return a value to :block.cliente_no,
then execute a query in block clientes, but cursor doesn`t
goes to block.codigo it remains in the button !
Why doesn`t works ?
Note: if I insert a message before line go_item('block.codigo');
cursor goes to 'block.codigo' (message('hallo');
|
|
|
|
Re: go_item doesen't works ! [message #541732 is a reply to message #541708] |
Thu, 02 February 2012 01:26 ![Go to previous message Go to previous message](/forum/theme/orafaq/images/up.png) ![Go to next message Go to next message](/forum/theme/orafaq/images/down.png) |
![](http://www.orafaq.com/forum/images/custom_avatars/72104.gif) |
Littlefoot
Messages: 21818 Registered: June 2005 Location: Croatia, Europe
|
Senior Member Account Moderator |
|
|
Ollivier,
are these blocks related (i.e. master-detail blocks)? If so, you don't need GO_BLOCK('clientes') because executing a query in a master block (BLOCK) will automatically fetch related details records. Therefore, WHEN-BUTTON-PRESSED might look like this:declare
flag boolean;
begin
flag := show_lov('lov16');
if :block.cliente_no is not null then
execute_query;
go_item('block.codigo');
end if;
end;
First you need to enter query mode, then push that button, select a value and - that's it!
On the other hand, if these blocks are not related (but you created pseudo master-detail relationship), you can't enter query mode in BLOCK block because GO_BLOCK would be an invalid statement in query mode. Therefore, WHEN-BUTTON-PRESSED would look like this:declare
flag boolean;
begin
flag := show_lov('lov16');
if :block.cliente_no is not null then
go_block('clientes');
execute_query;
go_item('block.codigo');
end if;
end;
In any case, navigation to BLOCK.CODIGO works just fine in an example I created on Scott's DEPT and EMP table (master-detail), working on Oracle Forms Developer 10g (9.0.4).
There's nothing obvious (from what you posted so far) that would prevent navigation to that item. Is there any other code (such as SET_ITEM_PROPERTY for the target BLOCK.CODIGO item) you didn't mention?
What Forms version do you use? Could you create a sample form (based on DEPT and EMP tables) and attach it to your next message, so that we could see what you did?
Maybe you could set button's "Keyboard navigable" and "Mouse navigate" properties to "No" (button will still be functional).
P.S. Tomcrzy's code is invalid. GO_ITEM doesn't accept "colon" reference to items.
GO_ITEM(':codigo') is invalid (raises FRM-40105: unable to resolve reference to item).
GO_ITEM('codigo') is valid.
|
|
|
Re: go_item doesen't works ! [message #541862 is a reply to message #541732] |
Thu, 02 February 2012 21:19 ![Go to previous message Go to previous message](/forum/theme/orafaq/images/up.png) |
![](http://www.gravatar.com/avatar/b0919056cea651e0a6d20a1437c20ade?s=64&d=mm&r=g) |
ollivier
Messages: 19 Registered: January 2012 Location: chihuahua
|
Junior Member |
|
|
I resolved yet !
go_item doesen't jump after a LOV !
So First I go to desired item (:block.codigo), create a trigger and then call LOV !
Thanks any one !
|
|
|