Single form instance

i use a h-tree as menu.
when-tree-node-activated -> open_form(...);
each leaf-value is for a corresponding form.
how can i ensure that each form can be opened only once?
when someone clicks a node whichs form is already opened, the prog should jump to the already opened form.

I had a closer look at the examples and yes they are not exactly what you want. The following should do it:
DECLARE
form_id FORMMODULE;
BEGIN
form_id := FIND_FORM('myform');
if id_null(form_id) then
OPEN_FORM('my_form', activate);
else
GO_FORM(form_id);
end if;
END;

Similar Messages

  • Reverse auto-population to a shell attribute form/ single record instance BP.

    Hi All,
    I was wondering if anyone had experience in reverse auto-populating data from a BP within a shell to that same shell's attribute form or a single record instance BP like Project Information.
    My use case is that I have 7-10 BP's that gain more definition and have data within in them that changes from phase to phase. This leaves a need for one place with the most current information, which I thought Shell Attributes or Project Information.
    That being said as the information changes in theses 7-10 BP's throughout the life of the project the Shell Attribute form and Project Information should be updated via Reverse auto-population.
    Can anyone tell me if this scenario is possible, or if there is another way that i can achieve this?
    Your help would be appreciated!!!

    Yes, it is possible and fairly simple. Make sure that the DEs from the various BPs that will be passed are on the form of the shell or single instance record.  And make sure that integration is defined for those DEs on the shell or SI record. This is a common mistake, as people forget to define the integration and that is a must for reverse auto-pop.
    Then, on the BPs passing the data, open the form from which they will be passed and look at the properties. Define the reverse auto-pop normally, SI records are always available for this, and shells should be too.
    Sean

  • 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'.

  • Multiple users of single forms

    Hi,
    I have a situation whereby I'd like to be able to have multiple users haveing input to a single form. This is to establish a type of jobcard system.
    e.g.
    A form is distributed out to a number of people, they complete a certain section, the forms are then submitted ie returned to the distributor, from here they can be forwarded onto someone else who will compete aditional information onto the form and again submit it.
    The coordinator can then review the form data and then forward or save the forms off.
    This is likely to be from a PC to PC in the first instance and PC to tablet in the second, ideally with the ability to add photographs.
    Many Thanks

    Hi,
      WIth FormsCentral, you can share a single form with multiple users as Co-Authors. Your shared user will have right to edit/modify/save the form at anytime.
    Now, your shared users will need to create (free or paid) accounts in FormsCentral to be able to collaborate on the form.
    Please take a look a this FormsCentral tutorial, Share and collaborate section: http://forums.adobe.com/docs/DOC-1413
    Thanks,
    Lucia

  • Multiple Selects in a single form

    I have six select boxes and I want them in a single form.
    Below are the outputs for the select boxes.
    <cfform
    action="Resolution_History.cfm?year=#year#&sessiontype=#sessiontype#&btype=res"
    name="form">
    <select name="SRINPUT">
    <option value="">SR
    <CFOUTPUT Query="findSR"><Option
    Value="#BILLNUMBER#">#BILLNUMBER#</cfoutput>
    </select>
    <select name="HRINPUT">
    <option value="">HR
    <CFOUTPUT Query="findHR"><Option
    Value="#BILLNUMBER#">#BILLNUMBER#</cfoutput>
    </select>
    <select name="SCRINPUT">
    <option value="">SCR
    <CFOUTPUT Query="findSCR"><Option
    Value="#BILLNUMBER#">#BILLNUMBER#</cfoutput>
    </select>
    <br>
    <select name="HCRINPUT">
    <option value="">HCR
    <CFOUTPUT Query="findHCR"><Option
    Value="#BILLNUMBER#">#BILLNUMBER#</cfoutput>
    </select>
    <select name="SJRINPUT">
    <option value="">SJR
    <CFOUTPUT Query="findSJR"><Option
    Value="#BILLNUMBER#">#BILLNUMBER#</cfoutput>
    </select>
    <select name="HJRINPUT">
    <option value="">HJR
    <CFOUTPUT Query="findHJR"><Option
    Value="#BILLNUMBER#">#BILLNUMBER#</cfoutput>
    </select>
    <INPUT TYPE="Submit" VALUE="Submit" alt="submit
    button">
    </cfform>
    Once a user selects a number it will send them to an action
    page. On the action page I need the below IF statement to work so
    it will set the variables. It isn't working at this time. Its not
    bringing the values of billnumber, houseorig or the billtype.
    Does anyone have any thoughts? I know it is close to working
    and I need to set all of the inputs to input4 to generate my
    queries so I don't have to duplicate them.
    <cfif form.srinput gt "0">
    <cfset s = '#houseorig#'>
    <cfset r = '#billtype#'>
    <cfset input4 = '#srinput#'>
    <cfelseif form.hrinput gt "0">
    <cfset h = '#houseorig#'>
    <cfset r = '#billtype#'>
    <cfset input4 = '#hrinput#'>
    <cfelseif form.scrinput gt "0">
    <cfset s = '#houseorig#'>
    <cfset cr = '#billtype#'>
    <cfset input4 = '#scrinput#'>
    <cfelseif form.hcrinput gt "0">
    <cfset h = '#houseorig#'>
    <cfset cr = '#billtype#'>
    <cfset input4 = '#hcrinput#'>
    <cfelseif form.sjrinput gt "0">
    <cfset s = '#houseorig#'>
    <cfset jr = '#billtype#'>
    <cfset input4 = '#sjrinput#'>
    <cfelse>
    <cfset h = '#houseorig#'>
    <cfset jr = '#billtype#'>
    <cfset input4 = '#hjrinput#'>
    </cfif>

    give'em a break. he is probably under pressure (like we all
    have been). in response, i do not even see some of the variables
    you are checking in the second script in the first. get this one
    straight and i think it'll work.

  • Multiple DataBase Connection in a Single Form

    hi all
    Is it Possible to have Multiple Database Connection With a Single Form
    Block a : Retriving data from a database Service a/Schema A.
    Block b : Retriving data from a Remote Database Service b / Schema B.
    If yes how to do this.
    regards
    jai
    email:[email protected]

    Sure you can access a database this way,
    but can you base a block on this database connect? No you can't.
    Frank

  • How do I insert multiple rows from a single form ...

    How do I insert multiple rows from a single form?
    This form is organised by a table. (just as in an excel format)
    I have 20 items on a form each row item has five field
    +++++++++++ FORM AREA+++++++++++++++++++++++++++++++++++++++++++++++++++++
    +Product| qty In | Qty Out | Balance | Date +
    +------------------------------------------------------------------------+
    +Item1 | textbox1 | textbox2 | textbox3 | date +
    + |value = $qty_in1|value= &qty_out1|value=$balance1|value=$date1 +
    +------------------------------------------------------------------------+
    +Item 2 | textbox1 | textbox2 | textbox4 | date +
    + |value = $qty_in2|value= $qty_out1|value=$balance2|value=$date2 +
    +------------------------------------------------------------------------+
    + Item3 | textbox1 | textbox2 | textbox3 | date +
    +------------------------------------------------------------------------+
    + contd | | | +
    +------------------------------------------------------------------------+
    + item20| | | | +
    +------------------------------------------------------------------------+
    + + + SUBMIT + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    Database Structure
    +++++++++++++++++
    + Stock_tabe +
    +---------------+
    + refid +
    +---------------+
    + item +
    +---------------+
    + Qty In +
    +---------------+
    + Qty Out +
    +---------------+
    + Balance +
    +---------------+
    + Date +
    +++++++++++++++++
    Let's say for example user have to the use the form to enter all 10 items or few like 5 on their stock form into 4 different textbox field each lines of your form, however these items go into a "Stock_table" under Single insert transaction query when submit button is pressed.
    Please anyone help me out, on how to get this concept started.

    Hello,
    I have a way to do this, but it would take some hand coding on your part. If you feel comfortable hand writing php code and doing manual database calls, specificaly database INSERT calls you should be fine.
    Create a custom form using the ADDT Custom Form Wizard that has all the rows and fields you need. This may take a bit if you are adding the ability for up to 20 rows, as per your diagram of the form area. The nice thing about using ADDT to create the form is that you can setup the form validation at the same time. Leave the last step in the Custom Form Wizard blank. You can add a custom database call here, but I would leave it blank.
    Next, under ADDT's Forms Server Behaviors, select Custom Trigger. At the Basic tab, you enter your custom php code that will be executed. Here you are going to want to put your code that will check if a value has been entered in the form and then do a database INSERT operation on the Stock_table with that row. The advanced tab lets you set the order of operations and the name of the Custom Trigger. By default, it is set to AFTER. This means that the Custom Trigger will get executed AFTER the form data is processed by the Custom Form Transaction.
    I usually just enter TEST into the "Basic" tab of the Custom Trigger. Then set my order of operations in the "Advanced" tab and close the Custom Trigger. Then I go to the code view for that page in Dreamweaver and find the Custom Trigger function and edit the code manually. It's much easier this way because the Custom Trigger wizard does not show you formatting on the code, and you don't have to keep opening the Wizard to edit and test your code.
    Your going to have to have the Custom Trigger fuction do a test on the submitted form data. If data is present, then INSERT into database. Here's a basic example of what you need to do:
    In your code view, the Custom Trigger will look something like this:
    function Trigger_Custom(&$tNG) {
    if($tNG->getColumnValue("Item_1")) {
    $item1 = $tNG->getColumnValue("Item_1");
    $textbox1_1 = $tNG->getColumnValue("Textbox_1");
    $textbox1_2 = $tNG->getColumnValue("Textbox_2");
    $textbox1_3 = $tNG->getColumnValue("Textbox_3");
    $date1 = $tNG->getColumnValue("Textbox_3");
    $queryAdd = "INSERT INTO Stock_table
    (item, Qty_In, Qty_Out, Balance, Date) VALUES($item1, $textbox1_1, $textbox1_2, $textbox1_3, $date1)"
    $result = mysql_query($queryAdd) or die(mysql_error());
    This code checks to see if the form input field named Item_1 is set. If so, then get the rest of the values for the first item and insert them into the database. You would need to do this for each row in your form. So the if you let the customer add 20 rows, you would need to check 20 times to see if the data is there or write the code so that it stops once it encounters an empty Item field. To exit a Custom Trigger, you can return NULL; and it will jump out of the function. You can also throw custom error message out of triggers, but this post is already way to long to get into that.
    $tNG->getColumnValue("Item_1") is used to retrieve the value that was set by the form input field named Item_1. This field is named by the Custom Form Wizard when you create your form. You can see what all the input filed names are by looking in the code view for something like:
    // Add columns
    $customTransaction->addColumn("Item_1", "STRING_TYPE", "POST", "Item_1");
    There will be one for each field you created with the Custom Form Wizard.
    Unfortunately, I don't have an easy way to do what you need. Maybe there is a way, but since none of the experts have responded, I thought I would point you in a direction. You should read all you can about Custom Triggers in the ADDT documentation/help pdf to give you more detailed information about how Custom Triggers work.
    Hope this helps.
    Shane

  • How to running a single form on the browser

    Hi below is the link for deployment of our application on app server.
    http://100.180.127.225:7779/forms90/f90servlet?config=abc
    and this is the entries in formsweb.cfg file.
    [abc]
    form=G:\Oracle10gBinaries\abc\FMX\test.fmx
    otherparams=prm_init_file=G:\abc.INI prm_itype=0 prm_impli_type=9W prm_debug_mode=NO
    pageTitle=Heading
    envFile=abc.env
    separateFrame=TRUE
    lookAndFeel=generic
    archive_jini=f90all_jinit.jar
    imagebase=codebase
    Now i want to run a form named test2.fmx directly by passing the value as *test2.fmx on the browser.
    what change i needs make in the formsweb file to achieve this.

    Hi all thanks for ur help.
    i am able to run the .fmx directly .this i have achieved by putting the .fmx in the forms90 folder and using the link.
    http://100.180.127.225:7779/forms90/f90servlet?form=test2.fmx
    it is working fine and showing the single form but now i want to pass a parameter
    from the link to the test2.fmx directly/
    when launched from the link ,test2.fmx shows all the records. as this form contains customer information so it list all the customer no.
    i want to launch this form with only the customer id passed thro the link.
    i am trying something like
    http://100.180.127.225:7779/forms90/f90servlet?.fmx&PRM_CUST_NO=000000014
    where 000000014 is the customer no.
    when launch the forms it still gives all records and not this customer record.
    prm_cust_no is the oracle form parameter which is defined in the form.
    please suggest?

  • To change the JDBC driver for a single OC4J instance

    Hello,
    I implemeted an app with oracle adf (Jdeveloper 10.1.2 ) and it use Oracle Domain objects.
    I have an oas 10g (9.04.1) in windows
    and I want to change the default jdbc driver for a single oc4j instance
    in metalink i found the following information:
    1.- From OTN, download and copy the 10.1.0.x JDBC driver to a directory on the server. E.g OH/newjdbc
    2.- Opening EM-Website, navigate to the OC4J instance that should be altered.
    3.- Find the "Java-Options" and, add the -Xbootclasspath option to it, pointing to the new JDBC driver.
    E.g. -Xbootclasspath/p:$OH/newjdbc/ojdbc14.jar
    4.- Restart the OC4J instance
    my 'Java-optios' default is
    -server -Xrs -Djava.security.policy=C:\oracle\904\j2ee\test_adf\config\java2.policy -Djava.awt.headless=true
    my new 'Java optios' now is
    -server -Xrs -Djava.security.policy=C:\oracle\904\j2ee\test_adf\config\java2.policy -Djava.awt.headless=true -Xbootclasspath/p = D:\jdev1012\jdbc\lib\classes12.jar
    is this correct?
    now I cannot deploy my app
    Rigoberto

    Seems you missed something in step 3. From those steps the driver should be installed under C:\oracle\904\newjdbc and used in classpath, not d:\jdev1012.

  • 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.

  • 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.

  • 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;

  • 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

  • Mutiple Canvases Single form

    Hi,
    I'm facing a problem of having multiple canvases(3) in single form.
    I've two Data blocks(Master & Detail). Master having one canvas. But details have two different canvases.
    I've created 3 different menus for 3 canvases.
    say Master,Detail1,Detail2. Now the problem is when i try to open detail1 or detail2 from oracle apps menu it opens master canvas only.
    i've created functions in apps & in NEW_FORM_INSTANCE trigger coded like
    If (fnd_function.current_form_function = 'CRM_FC_PPC') then
    GO_BLOCK('CRM_CUSTO_FORCAST_DET');
    SHOW_VIEW('PPC');
    HIDE_VIEW('CUST_FORECAST');     
    HIDE_VIEW('SHIPPING');
    Elsif (fnd_function.current_form_function = 'CRM_FC_SHIP') then
    SHOW_VIEW('SHIPPING');
    HIDE_VIEW('PPC');
    HIDE_VIEW('CUST_FORECAST');     
    Else
    SHOW_VIEW('CUST_FORECAST');
    HIDE_VIEW('PPC');
    HIDE_VIEW('SHIPPING');
    Go_item('CRM_CUST_FORCAST_HDR.CUSTOMER_ID');also my master canvas is Content & details are stacked. should i create different windows for details canvases ? i also did that but failed.
    what could be the solution here ?
    Forms 6i
    DB 9.2
    Regards

    Hi,
    Sorry for delayed reply.
    Francois,
    I've tried with go_item but it doesn't worked. i knew it & tried it before asking here. but thanks anyway.
    Ahmed,
    i've only one window show all these canvases.I'm now trying with multiple windows.
    The code is as follow
    If (fnd_function.current_form_function = 'IRS_CRM_FC_PPC') then
         GO_ITEM('IRS_CRM_CUSTO_FORCAST_DET.CUSTOMER_ID');
    Set_window_property('CF_PPC',VISIBLE,PROPERTY_TRUE);     
    Set_window_property('MAIN',VISIBLE,PROPERTY_FALSE);     
    Set_window_property('CF_PPC',TITLE,'IRS CRM PPC Details'||:global.div);
    GO_BLOCK('IRS_CRM_CUSTO_FORCAST_DET');
    SHOW_VIEW('PPC');
    HIDE_VIEW('CUST_FORECAST');     
    HIDE_VIEW('SHIPPING');
    Elsif (fnd_function.current_form_function = 'IRS_CRM_FC_SHIP') then
    SHOW_VIEW('SHIPPING');
    HIDE_VIEW('PPC');
    HIDE_VIEW('CUST_FORECAST');     
    Else
    SHOW_VIEW('CUST_FORECAST');
    HIDE_VIEW('PPC');
    HIDE_VIEW('SHIPPING');
    Go_item('IRS_CRM_CUST_FORCAST_HDR.CUSTOMER_ID');Regards
    PS. Master is Content & details are stacked.
    Edited by: user10569054 on Apr 5, 2010 3:10 PM edited for canvas details

  • 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);

Maybe you are looking for