Populate two poplist items on when-new-form-instance trigger

Hello!
I have a simple form with some text-items, datetime items, two poplist items and two buttons (exit and save to database).
Everything works well except the second poplist wont get populated. After wrote the code for the first i just wrote a similar one for the second poplist. Each poplist fetches its data from different tables. Nothing changed when i tried different list-item types (first worked, second didnt).
Here is the code in the when-new-form-instance trigger:
declare
     rg_query_sponsori varchar2(200) := 'select nume, sponsor_id from sponsori';
     rg_id_sponsori recordgroup;
     err_sponsori NUMBER:= 0;
rg_query_portari varchar2(200) := 'select nume, portar_id from portari';
     rg_id_portari recordgroup;
     err_portari NUMBER:= 0;
BEGIN
     rg_id_sponsori := create_group_from_query('recgrp1',rg_query_sponsori);
     err_sponsori := populate_group(rg_id_sponsori);
     clear_list('vizitatori.sponsor_id');
     populate_list('vizitatori.sponsor_id',rg_id_sponsori);
     rg_id_portari := create_group_from_query('recgrp2',rg_query_portari);
     err_portari := populate_group(rg_id_portari);
     clear_list('vizitatori.portar_id');
     populate_list('vizitatori.portar_id',rg_id_portari);
END;
Thx and have a nice weekend :)
Iulian

Try this by adding delete_group
declare
rg_query_sponsori varchar2(200) := 'select nume, sponsor_id from sponsori';
rg_id_sponsori recordgroup;
err_sponsori NUMBER:= 0;
rg_query_portari varchar2(200) := 'select nume, portar_id from portari';
rg_id_portari recordgroup;
err_portari NUMBER:= 0;
BEGIN
rg_id_sponsori := Find_Group('recgrp1');
if not id_null(rg_id_sponsori) then
delete_group('recgrp1');
end if;
rg_id_sponsori := create_group_from_query('recgrp1',rg_query_sponsori);
err_sponsori := populate_group(rg_id_sponsori);
clear_list('vizitatori.sponsor_id');
populate_list('vizitatori.sponsor_id',rg_id_sponsori);
rg_id_portari := Find_Group('recgrp2');
if not id_null(rg_id_portari) then
delete_group('recgrp2');
end if;
rg_id_portari := create_group_from_query('recgrp2',rg_query_portari);
err_portari := populate_group(rg_id_portari);
clear_list('vizitatori.portar_id');
populate_list('vizitatori.portar_id',rg_id_portari);
END;

Similar Messages

  • WHEN-NEW-FORM-INSTANCE trigger does not fire

    Hi,
    Does anyone have any idea why code placed in the when-new-form-instance trigger appears to be ignored when the form is executed from one login but runs fine when executed from another? A breakpoint on the first executable line of code in the trigger confirms that the trigger is not being fired.
    Regards,
    Ian Dodds.

    Hi again Duncan,
    I was able to solve it once I ran the form with the Forms Runtime Diagnostics enabled. I had a table in my schema containing old data used to build menu items. This was causing runtime errors to occur during calls to SET_MENU_ITEM_PROPERTY that were not being propagated to the UI so I didn't know they were occuring.
    The upshot was that the WHEN-NEW-FORM-INSTANCE trigger was not firing. Once I corrected the data it worked a treat.
    Thanks very much for pointing me towards FRD, it's the first time I've used it but it won't be the last.
    Cheers,
    Ian.

  • When-new-form-Instance trigger raised unhandled exception ORA-04062

    Hi,
    We are facing ORA-04062 (FRM-40735 WHEN-NEW-FORM-INSTANCE trigger raised unhandled exception ORA 04062) while trying to run the first form of our Application.
    We are using a PL/SQL LIBRARY(.pll) for forms.
    We are using 10G Application Server,10G DB and Oracle 9i Forms.
    DB Version----10.1.0.4.0
    Application Server--9.0.4.0
    During compilation, we are following the below steps:
    1. Compile the .pll
    2.Compile Forms.
    When we are running these compiled version of forms and pll in Development server where we are compiling it,we are not facing any error.
    But when we are taking these compiled version of forms and pll to the Production Server,we are getting the above error.
    When we are compiling the .pll in Production server, Application runs fine.
    But we should not compile form or pll in Production server.
    Searching in Metalink(Note:73506.1) , we find a solution that remote_dependency_mode if set to signature this problem may be resolved.
    We tried that by chaning ' REMOTE_DEPENDENCIES_MODE=SIGNATURE' in Init.ora file in both Production and Development server.
    But the error still persist.
    I think the problem is regarding .pll.Because for the time being to test the application,I compiled the pll in Production and we didnot get any error while running the Application.
    But whenever we are tring to deploy the compiled version of pll (compiling in Development sever) and to run the application in Production, we are facing the error.
    Also, pll calls one standard database package in SYS.That standard package has VALID status both in Production and in Development.
    We donot have priviledge to change/compile that package.So,we didnot change anything in that package. We didnot change anything in .pll also.
    We are upgrading our forms from 6i to 9i.And now when we are trying to deploy it to Production we are facing ORA-04062 error.
    Can anyone please help ?

    Exactly what procedure or package in SYS are you calling that causes this problem?
    <p>Are both test and production databases at the same version?
    <p>Do you know what procedure or package is named in the error? If not, then you need to improve your on-error trigger processing. I use a PLL_On_Error trigger to capture and improve a number of Oracle messages. It is posted here:
    <p> Re: FRM-40735:Pre_Insert trigger raised unhandled exception ORA-20011
    <p>Note especially the part near the end that deals with FRM-40735. (Not sure, but you may also want to display DBMS_ERROR_TEXT in your situation.)
    <p>If that doesn't help find the actual problem, I would pull out my Re: Zdebug -- Download a Forms debugging message tool, and add messages before every call in the when-new-form-instance process to zero-in on the offending call.
    <p>If it really IS a call to a system process, I would then experiment with creating a server-side package or stored procedure that calls the process, and then call that stored procedure from my form. That way, you effectively insulate your form from system differences.

  • How can i change the code in when new form instance trigger using JDAPI

    Hi all,
    Can anyone tell me how can i use JDAPI to modify the when-new-form-instance trigger in all my forms,coz we have around 500 FMB's ,if this is possible by using jdapi it will be better for us..
    Thanks in advance..
    Najeeb

    Hi Najeeb,
    The code I've given you should cover the basic steps - you will need to have a basic knowledge of Java if you want to use the JDAPI, there's no way around that unless you go and buy one of the off-the-shelf products for this kind of thing (I think there's one called orcltoolbox..?)
    I've written an application that does all kinds of things to Forms specific to our needs, so it's a bit tricky to just pull out the code you need, but again, the basics will be:
    String formName="C:\some_dir\some_form.fmb";
    FormModule mForm=FormModule.open(formName);
    Trigger myWNFITrig=Trigger.find(mForm,"WHEN-NEW-FORM-INSTANCE");
    String myText=myWNFITrig.getTriggerText();
    And there you have your trigger text, to do with what you please. You could put this code in the main() method of one class if you want to keep things really simple - but see how you get on, if you have any more specific questions, do come back.
    Eric - that's a very good point about using Regular Expressions. I haven't used them in my JDAPI app because I wanted to keep all my .fmbs 6i-compatible for the short-term, and a posting I saw somewhere recommended sticking to Java 1.3. Which rules out the regex facility, which only appeared in Java 1.4. Now, though, I think I needn't have worried - it surely shouldn't matter which version of Java I use to make the changes to the .fmbs. My stupid!
    James

  • WebUtil doesn't work when called from WHEN-NEW-FORM-INSTANCE trigger

    I need WEBUTIL_CLIENTINFO functions to know some information from the client, like IP, JavaVersion, Hostname, OS user, etc. This functions I call through WHEN-NEW-FORM-INSTANCE TRIGGER and this doesn't nor work. I obtain the next message and error:
    oracle/forms/webutil/clientinfo/GetClientInfo.class not found. WEBUTIL_CLIENTINFO.GET_IP_ADDRESS.
    But when I call this WebUtil functions through WHEN-WINDOW-ACTIVATED trigger or through a button it works. Why?. I need call WebUtils in the WHEN-NEW-FORM-INSTANCE trigger!
    Any help will be of great value.

    Basically make a timer...
    Do you have the wu_test_106.fmb file that comes with the webutil install?
    If you look in the wnfi trigger you will see this...
    declare
         fake_timer TIMER;
    begin
         -- Purpose of the fake timer is the we cannot call webutil in this trigger since the
         -- beans have not yet been instantiated.  If we put the code in a when-timer-expired-trigger
         -- it means that this timer will not start running until Forms has focus (and so the webutil
         -- beans will be instantiated and so call canbe made.
         fake_timer:= CREATE_TIMER('webutil',100,NO_REPEAT);
         --create_blob_table;
         null;
    end;And in the form level when-timer-expired you will see this...
         :global.user_home := webutil_clientinfo.get_system_property('user.home');
         :OLE.FILENAME := :global.user_home||'\temp.doc';
         SET_ITEM_PROPERTY('builtins.text_io_item',PROMPT_TEXT,'Write to '||:global.user_home||'\helloworld.txt');
         SET_ITEM_PROPERTY('files.userdothome',PROMPT_TEXT,:global.user_home);

  • FRM-40735: WHEN-NEW-FORM-INSTANCE trigger raised unhandled except ORA-06508

    Dear Colleague,
    I am migrating a Forms application from Forms 9i to Forms 10g. Most of my forms were originally created using the Oracle Designer Forms generator. I am also using the Webutil plugin. I just finished configuring Webutil, tested it and it seems to be working fine.
    I am able to compile all code and generate a Form executable. However at runtime, I get an error as soon as the first line of code in the WHEN-NEW-FORM-INSTANCE trigger.
    The error is:
    FRM-40735: WHEN-NEW-FORM-INSTANCE trigger raised unhandled exception ORA-06508
    and the beginning of the code is as follows. Using the debugger, I found out that the line:
    CGBS2$.SET_COORD_STYLE( 'P' );
    initiates an error.
    /* CGLY$INIT_CANVASES */
    /* Call procedure to ensure correct canvases are visible */
    BEGIN
    CGBS2$.SET_COORD_STYLE( 'P' );
    CGBS2$.SET_QRY_ON_ENTRY( 'Y' );
    CGBS2$.SET_NAV_FROM_BLOCK( 'PROJ_BLOCK' );
    CGLY$CANVAS_MANAGEMENT;
    END;
    Is the error telling me that this procedure was not found? How can I proceed to find the cause and solution of my problem? Are one of the Oracle Designer Forms Generator libraries missing?
    I would appreciate a tip to help me begin seeing the light at the end of the tunnel.
    Thanks and regards,
    Randy

    Randy,
    Glad I could help and you've got your Form running.
    @user9230833
    It is consider "bad form" to usurp another's post. Please create your own Forum post and include a link or links to any relevant posts. As to Randy's situation, he simply compiled the Forms 9i Library module (.pll) with Forms 10g's compiler. This may not be the cause of your error. When you post your own question, please include your Forms version (full version [eg; 10.1.2.0.2] not the release [6i, 9i, 10g, etc]). Also include any sample code that might help us help you! ;-)
    Craig....

  • 40735 WHEN-NEW-FORM-INSTANCE-TRIGGER raised unhandled exception ORA-06502

    After migrationg my form from 6i to 10g I am getting the 40735 WHEN-NEW-FORM-INSTANCE-TRIGGER raised unhandled exception ORA-06502 err msg. the field is a date field and should be automatically populated with sysdate- 365. but when i open the form to run it is not populated automatically. i have to enter the date manually. the code in the NEW-FORM-INSTANCE trigger is as follows:
    declare
    record_id RecordGroup;
    error_cd number;
    begin
    -- Set the main window properties
    set_window_property(forms_mdi_window, window_state, maximize);
    -- Menu Security
    set_menu_items;
    select sysdate - 365
    into :start_date
    from dual;
    end;
    I check the property palate for the start_date field and it looks ok. the form is working fine in windows but the above message is comming out while running the form in Unix.
    Any help will be greatly apreciated.

    First thing, try qualifying the start_date with the block name
    declare
    record_id RecordGroup;
    error_cd number;
    begin
    -- Set the main window properties
    set_window_property(forms_mdi_window, window_state, maximize);
    -- Menu Security
    set_menu_items;
    select sysdate - 365
    into :block.start_date
    from dual;
    end;

  • FRM 40735 : WHEN-NEW-FORM-INSTANCE Trigger raised unhandled exception

    Hi all,
    I'm from a support team.
    Here we have a 3 database in 2 servers connecting to a single application.
    Only one Db will be connected at all time , other DB's are backup.
    Here the issue is 2DB DBs residing on the same server were able to cennect to the application and doesn't through any error. But the 3rd one in different server gives the below error,
    FRM 40735 : WHEN-NEW-FORM-INSTANCE Trigger raised unhandled exception ORA-06508
    The Forms were compiled using the First DB , that time when i access the app using the 3rd db i'm getting the above error.
    But when I compile the form using the 3rd DB and connect to the App its working fine (The size of the form gets reduced during the compilation).
    Thanks for your help in advance.
    Srinivasan.K

    Could be a timestamp vs signature issue - forms is calling a database procedure in the WHEN-NEW-FORM-INSTANCE trigger and the procedures have different compile times on the different dbs and it's set to use timestamp to determine if a procedure has changed. You can change remote_dependecy_mode = 'Signature'.

  • FRM-40735: WHEN-NEW-FORM-INSTANCE trigger raised unhandled exception ORA-01

    Hello,
    when I run my form I am getting the following error:
    FRM-40735: WHEN-NEW-FORM-INSTANCE trigger raised unhandled exception ORA-01422
    My WHEN-NEW-FORM-INSTANCE trigger is calling to procedures. below is the code in my trigger
    begin
    Get_User_Info;
    Get_org_num;
    end;
    what could be the problem ?
    thanks in advanced,
    AJ

    One of your procedures must be doing a "select into" but the select is returning more than one row. Examine the queries your procedures are doing.
    Gary

  • 'WHEN-NEW-FORM-INSTANCE-trigger' in JDeveloper/ADF/JHeadstart

    Hello,
    I'm new to JDeveloper/ADF with JHeadstart.
    I want to execute a PL/SQL-procedure when the application starts. I've added the method to execute the PL/SQL-procedure to the Application module class.
    How can we execute this method?
    Thanks in advance.
    Richard Teunissen

    Richard,
    When using security, it is easier to add a servlet filter to your application that only calls the PL/SQL procedure when user just logged in , which is start of new session.
    Without security, it is easier to do it each time you enter a new page.
    You can drag and drop the app module method on your page, then create an invokeAction in the executables section of your page definition that executes the method binding, and set the refreshCondition of the invokeAction to #{!adfFacesContext.postback}.
    See ADF Developers guide, sections 8.4, 17.3 and 10.5.5 for more info:
    http://download-west.oracle.com/docs/html/B25947_01/toc.htm
    Now, if you are new to ADF this might sounds a bit cryptic, I strongly recommend you take some class on ADF, for example the ADF/JHeadstart workshop:
    http://blogs.oracle.com/jheadstart/workshop
    JHeadstart is a great help when moving from Forms to ADF, but you still need to learn how ADF works, to be able to fully leverage the power of JHeadstart. It is like generating Forms using Designer, thevbetter you know Forms, the more advanced functionality you can generate using Designer. The JHeadstart generator is very flexbile, using custom templates you can generate almost anything you want, but it requires knowledge of ADF Faces, JSF, ADF bindings and ADF Business Components to create those templates.
    Steven Davelaar,
    JHeadstart team.

  • How to uncheck all radio buttons in WHEN-NEW-FORM-INSTANCE trigger

    Hi,
    I have one radio group(RDBTNGRP) having three radio buttons (RDBTN1,RDBTN2,RDBTN3) in a control block, i want to uncheck all these three buttons through code.
    Any help please.
    Regards,

    Hello,
    I don't think you can achieve using the code or property to unselect all radio buttons.
    One possibility is there to create one extra radio button in that same group and set any value for that. Let say you have two radio buttons in the radio group and now you created one more radio button in the same group. And set the value like ABC. Now go to the property of new created radio button and set the X Position, Y Position, Width and Height to zero (0). And set the initial value for that radio group to ABC (new created radio button). So at runtime it will look like unselected all radio buttons. And while saving you can check if radio button selected on your criteria or not.
    -Ammad

  • Re: FRM-40735: WHEN-NEW-FORM-INSTANCE trigger raised unhandled exception OR

    hi all
    i am facing a problem.i hav a master detail form. my 'select into' has to fectch more than one record in detail which is tabular.
    it giving error(FRM-40735:WHEN-MOUSE-CLICK TRIGGER raised unhandled exception ORA-01422).
    so i had written cursor to fetch records.
    DECLARE
    CURSOR Fetch_Rec IS
    select bill_id,mat_id,mat_code,send_qty,rec_qty,ast_no,serial_no,transact_note
    from ship_dtl;
    BEGIN
         GO_BLOCK('ship_dtl');
    FOR Get_Rec IN (select bill_id,mat_id,mat_code,send_qty,rec_qty,ast_no,serial_no,transact_note
    from ship_dtl where rec_qty=null AND rec_qty != send_qty AND BILL_ID=:SHIP_MSTR.BILL_ID) LOOP
    :ship_dtl.bill_id:=get_rec.bill_id;
    :ship_dtl.mat_id:=get_rec.mat_id;
    :ship_dtl.mat_code:=get_rec.mat_code;
    :ship_dtl.send_qty:=get_rec.send_qty;
    :ship_dtl.rec_qty:=get_rec.rec_qty;
    :ship_dtl.ast_no:=get_rec.ast_no;
    :ship_dtl.serial_no:=get_rec.serial_no;
    :ship_dtl.transact_note:=get_rec.transact_note;
    NEXT_RECORD;
    END LOOP;
    FIRST_RECORD;
    END;
    it is not retriving any records.please help.i also put ship_mstr.bill_id in properties of ship_dtl.bill_id(copy value)
    so please guide me how to handle it.
    thanks in advance

    911229 wrote:
    hi all
    i am facing a problem.i hav a master detail form. my 'select into' has to fectch more than one record in detail which is tabular.
    it giving error(FRM-40735:WHEN-MOUSE-CLICK TRIGGER raised unhandled exception ORA-01422).
    so i had written cursor to fetch records.where you use the cursor ?
    it is not retriving any records.please help.i also put ship_mstr.bill_id in properties of ship_dtl.bill_id(copy value)Which one is not retrieving any record ? first one or second one... and
    check the sql separately first..
    select bill_id,mat_id,mat_code,send_qty,rec_qty,ast_no,serial_no,transact_note
    from ship_dtl
    where rec_qty is null
    AND rec_qty != send_qty
    AND BILL_ID=:SHIP_MSTR.BILL_ID  ---How you pass the value here ? do you give input or any other way ?Hamid

  • Populating a Pop List via WHEN-NEW-FORM-INSTANCE

    Vendor provided a form that attempts to populate a pop list within a WHEN-NEW-FORM-INSTANCE trigger. Unfortunately when the user enters the form there are no values in the list. User has access to the table (verified by running SQL of cursor in SQL*Plus). Here is the trigger:
    BEGIN
    G$_SET_INST_PROPERTY;
    G$_CHECK_FAILURE;
    G$_STARTUP;
    G$_CHECK_FAILURE;
         DECLARE
         CURSOR SFTVDTYP_C IS
         SELECT SFTVDTYP_CODE,SFTVDTYP_DESC FROM SFTVDTYP ORDER BY SFTVDTYP_DESC;
         i number := 1;
         BEGIN
         Clear_list('SFDBCOND_DTYP_CODE');
         for SFTVDTYP_REC in SFTVDTYP_C loop
         Add_list_element ('SFDBCOND_DTYP_CODE', i, sftvdtyp_rec.sftvdtyp_desc, sftvdtyp_rec.sftvdtyp_code);
         i := i+1;
         end loop;
         Set_item_property ('SFDBCOND_DTYP_CODE', REQUIRED, PROPERTY_TRUE);
         :SFDBCOND.SFDBCOND_DTYP_CODE := get_list_element_value('SFDBCOND_DTYP_CODE', 1);
         SYNCHRONIZE;
         END;
    END;
    Vendor claims that other sites this is working perfectly. Any ideas what has gone wrong at our site?

    seems like the select is not returning any values.
    try to put a message inside the cursor-for-loop to see if how often it loops.

  • Where's the WHEN-NEW-BLOCK-INSTANCE trigger gone?

    Not a rehash of my famous UKOUG presentation but a genuine question.
    If I start up a Form with ENTER_QUERY in the WHEN-NEW-FORM-INSTANCE trigger then WHEN-NEW-BLOCK-INSTANCE never fires. I just get a WHEN-NEW-RECORD-INSTANCE. This is true whether the query is executed or cancelled.
    I have replicated this behaviour inb both Forms 4.5 and 9i Forms so I assumed this is standard behaviour and well-known by everybody but me. The question is: why is Forms designed like this? I can just about see why WHEN-NEW-BLOCK-INSTANCE might not fire in QUERY-MODE, even though WHEN-NEW-RECORD-INSTANCE does, but why doesn't it fire after the query is executed or cancelled?
    Cheers, APC

    Interesting...
    I am aware that the when-new triggers do not run in some cases. On the other hand, the post- triggers run over and over again, to the point that I just don't use them because any code put there executes too many times.
    If you have several go_item or go_block triggers in a key trigger or when-button-pressed trigger, the when-new-item-instance trigger does not run each time you do a go_item. Instead, the when-new triggers ONLY run on the last item or block, just after my key-trigger code completes, and just before control returns to the user.
    So it would seem natural that if you go_block in a when_new_form_instance trigger, and execute an Enter_Query command, then the when-new-block-instance would not run.
    The fact that it does not run once you cancel the query just doesn't seem right, though.

  • Verifying Responsibility in a When-New-From-Instance Trigger

    Hi All,
    I want to restrict the accessability of a form to different responsibilities using resp_id, how do I do that? Is there any other method of by which I can restrict the accessibilty to different responsibilities?can we use system variables? Any help would be appreciated.
    Thanks,
    Karthik

    If you write code that is run by the when-new-form-instance trigger which checks resp_id against the userid in some type of access table, your form can then choose to continue or not. If it cannot continue, it could either exit or call another form, depending on how it was started.

Maybe you are looking for