Post record trigger

Hi ,
I need to use post record trigger, but it is not working in oracle forms 6 , do you have any suggestion ?
I want to use this trigger to prevent the cursor to go to the next record before commit the previuos one.
Thanks

The Post-Record trigger is a valid trigger in Forms 6i.  Can you show us your code in this trigger?
Craig...

Similar Messages

  • Post-query trigger ? save changes?

    I have a similar problem to that posted by 'nova' on Dec. 27, 2000. I have a form generated by Designer. The problem is that upon subsequent querying (F8 pressed twice), it asks me if I want to save my changes, when I have not made any changes.
    I looked in the generated code for the post-query trigger and found SET_RECORD_PROPERTY(:SYSTEM.TRIGGER_RECORD, 'NEW_CUST', STATUS, QUERY_STATUS) which is apparently not the problem, according to this prior post. I am at a loss and have tried everything I could think of.
    What else could be causing this? I checked to see if there were any items being set in the property sheet to default values, and removed the defaults - that did not work.
    ??? I would greatly appreciate any assistance. Thanks.

    Hi Pina,
    my similar problem I have solved like this:
    Post-Record trigger:
    BEGIN
    *** this is important to test the record status - without this I had the same problem
    IF :SYSTEM.Record_Status='INSERT' THEN
    IF :TRANZIT_ZADAJ.ID_SADZBY_TV_PRENOSOV IS NULL THEN
    :TRANZIT_ZADAJ.ID_SADZBY_TV_PRENOSOV:=:SADZBY_ZADAJ.ID;
    END IF;
    END IF;
    END;
    You can check Pre-... and Post-... triggers
    if there are any items being set to any values.
    I hope this will help you.
    Helena

  • When-validate-record trigger only if  a non database item is changed

    Hi,
    I am trying a code in the when-vaidate-record trigger in the BLOCK level.
    The trigger should fire only if a checkbox item value is ticked(Value ='Y) for the present record(i.e, if already existing other records have a value ticked (='Y), it doesnt matter and trigger shouldnt fire)
    Please help me achieve this :
    The code I have tried in when-vaidate-trigger, which does not work as what I want :
    DECLARE
    X NUMBER;
    BEGIN
    if
      nvl ( :DEFLOC.to_be_defaulted, 'N' ) = 'Y' and :DEFLOC.COMMENTS is NULL
      and :SYSTEM.RECORD_STATUS ='CHANGED'
         then
        set_alert_property(
             'err_alert',
             alert_message_text,
             'You must enter a comment when defaulting localities.');
              x := show_alert('err_alert');
              RAISE FORM_TRIGGER_FAILURE;
              end if;
    END;The above code does not fire at all..
    If I remove the part,
    and :SYSTEM.RECORD_STATUS ='CHANGED'
    it fires for "all records"(not just the currently changed records) where nvl ( :DEFLOC.to_be_defaulted, 'N' ) = 'Y' and :DEFLOC.COMMENTS is NULL
    Please help !!
    Note: :DEFLOC.to_be_defaulted is a non database item ; :DEFLOC.COMMENTS is a database item

    Hi kriti,
    There is one more way,
    In the when-checkbox-changed trigger,
    if :your_chk_box = 'Y' then
    set_Record_property(:system.cursor_Record, 'your_blk',status,changed_Status);
    else
    set_Record_property(:system.cursor_Record, 'your_blk',status,Query_Status);
    end if;
    Then it is easy for you to find out the changed records using get_Record_property((:system.cursor_Record, 'your_blk',status)
    Hey let me ask you one Question, is that check_box item is database item ???
    If so,
    it is easier..the fol. code will work for that
    if   nvl ( :DEFLOC.to_be_defaulted, 'N' ) = 'Y' and :DEFLOC.COMMENTS is NULL
      and nvl(get_item_property('DEFLOC.to_be_defaulted',database_value),'N') = 'N'      then
                      set_alert_property(
             'err_alert',
             alert_message_text,
             'You must enter a comment when defaulting localities.');
              x := show_alert('err_alert');
              RAISE FORM_TRIGGER_FAILURE;
              end if;otherwise
    If your are creating that temp. item, it should be in the same block as non-db item.
    I will explain this... You are setting the status of to_be_defaulted check box of some queried record to Y based on some conditions, right?
    These records anyways are not updateable. Now your requirement is to find out the newly checked check boxes.
    So in the post query or the place where you set to_be_defaulted as 'Y, we will default the new item with value Y, so that in the when validate trigger, you
    know which record needs to attacked, It is those records with nvl( new item ,'N') = 'N' and to_be_defaulted = 'Y'...
    Regards
    Dora...

  • Is there an Oracle Forms Post-Query trigger equivalent

    Hi.
    Jdeveloper 11.1.1.2
    Is there a way in ADF to populate extra read-only text-columns in an af:table (based on a ViewObject) as was possible in Oracle Forms with a Post-Query-Trigger:
    Post-Query
    Perform an action after fetching a record, such as looking up values in other tables based on a value in the current record.
    Fires once for each record fetched into the block.
    Best regards
    Erik

    Erik wrote:
    Hi.
    Jdeveloper 11.1.1.2
    Is there a way in ADF to populate extra read-only text-columns in an af:table (based on a ViewObject) as was possible in Oracle Forms with a Post-Query-Trigger:
    Post-Query
    Perform an action after fetching a record, such as looking up values in other tables based on a value in the current record.
    Fires once for each record fetched into the block.
    Best regards
    ErikHi,
    http://docs.oracle.com/cd/E15523_01/web.1111/b31974/appendix_formstriggers.htm#sm0350

  • Post Query Trigger with cursor

    Good afternoon to all of you!
    I need your help. I create a master detail form. I created also a post quey trigger, inside I wrote the code below.
    A cursor looks to another table and returns to the form some values i need!
    declare cursor C1 is select apofaa,startdate,enddate,transport
    from trapofdet
    where trapofdet.apofcode = :trapof.apofcode;
    begin
    open C1;
    loop
    fetch C1 into :TRAPODOSI_NEW_NEW.APOFAA, :TRAPODOSI_NEW_NEW.STARTDATE, :TRAPODOSI_NEW_NEW.ENDDATE, :TRAPODOSI_NEW_NEW.TRANSPORT;
    exit when C1%notfound;
    next_record;
    end loop;
    close C1;
    first_record;
    null;
    end;
    How to solve the a. frm-40737, illegal restricted procedure go block in post-query trigger
    b. It seems tha returns all the records but it appears only the last one.
    Please can anybody help with these?
    Thanks in advance!
    Christos

    Christos,
    The Post-Query trigger will fire once for each record returned to your form therefore you need to write your query to return a single row rather than a multiple rows. Using the Post-Query trigger to fetch additional data into your form can cause your form to be very slow - depending on the number of records returned and how many columns are fetched by your Post-Query cursor as well as how quickly the query executes.
    Is your Post-Query trigger on your Master or Detail block. Are you using the Post-Query trigger to populate your Detail block? Are you using a Block Relationship to coordinate your Master and Detail blocks?
    Also, it is helpful to know which version of Oracle Forms you're using.
    Craig B-)
    If someone's response is helpful or correct, please mark it accordingly.

  • Problem with post query trigger

    Hi,
    I have a multi record block and there is a post-query trigger on it. Based on values of this block I populate other values over the other control block.
    I wrote code in post-query trigger and when I execute the query and go to last but one record. The values in the control block are from last record instead of last but one record. Pls help me to fix
    Thanks,

    if you want to see the data in the control block synchronized with the database block then use the WHEN-NEW-RECORD-INSTANCE and not the POST-QUERY.
    with the POQ you add additional data (in non-basetable-items) to the records in the database block

  • Post insert trigger

    let say i define a post insert trigger for a datablock , then when this will be execute ?, after the insert is performed , in another words will the trigger wait till a comfirmation message is send from the database or let say that the insertion is not completed becuse of network failure then will the trigger execute?

    Hi,
    In Metalink document 61675.1 you can find the trigger execution sequence for Forms 4.5. I can't find the trigger execution sequence for Forms 6i, but I think this should be the same for most events.
    For the event "create record", see the following triggers:
    Create Record 1. Post-Change Block
    2. When-Validate-Item Block
    3. Post-Text-Item Block
    4. When-Validate-Record Block
    5. Post-Record Block
    6. Post-Block Block
    7. On-Savepoint Form
    8. Pre-Commit Form
    9. Pre-Insert Block
    10. On-Insert Form
    11. Post-Insert Block
    12. Post-Forms-Commit Form
    13. On-Commit Form
    14. Post-Database-Commit Form
    15. Pre-Block Block
    16. Pre-Record Block
    17. Pre-Text-Item Block
    18. When-New-Item-Instance Form
    So it seems the the Post-Insert trigger fires AFTER the insert is performed. The insert will be performed in the On-Insert trigger.
    HTH
    Kind regards,
    Lennart de Vos

  • Post-change trigger raising when query!!

    this trigger is form related: i just attach a post-change trigger with an item.
    contains the following code
    declare
    name varchar2(50);
    name1 varchar2(50);
    begin
    name1 :='%'||:BLK_EMP_MST.FATHER_NM||'%';
    select first_nm INTO name from hrt_emp_mst
    where father_nm like name1;
    if(name is not null) then
    MESSAGE(name||' has same father name');
    MESSAGE('WARNING');
    end if;
    exception
    when no_data_found then
    null;
    end;
    it working fine when we insert a new record. but when i query for record, it fires, which should not be

    I agree with Manu, rather than use a Post-Change trigger to validate user input, use the When-Validate-Item (WVI) trigger instead. This will allow you to validate the input from a user, but the WVI trigger won't fire when a record is queried into your block.
    @Manu
    POST-QUERY is kept only for backward compatibility in 10gI think you meant to say "Post-Change" instead of "Post-Query." The Post-Change trigger has been depricated, but the Post-Query trigger is still valid in all Forms versions.
    Craig B-)
    If someone's response is helpful or correct, please mark it accordingly.

  • POST-CHANGE TRIGGER

    Hi,
    I am using Forms Version 9.0.4.0.19.
    I created a form which consists of two blocks. Both blocks have a database field called city_code. I am trying to create a post-change trigger that would display the description and not the code of the city. Unfortunately, I keep getting no records found when I run the form although I now for certain there are records, there are records when I remove both triggers.
    Here is my code for the trigger for block1:
    =======================================================
    BEGIN
         SELECT DESCRIPTION
         INTO :INST.txtCITY
         FROM DICT
         WHERE CODE = :INST.CITY_CODE
    END;
    =======================================================
    Here is my code for the trigger for block2:
    =======================================================
    BEGIN
         SELECT DESCRIPTION
         INTO :CONTACT.txtCITY
         FROM DICT
         WHERE CODE = :CONTACT.CITY_CODE
    END;
    =======================================================
    Thanks in advance.
    VC

    Hi Again,
    I thought it worked, it didn't give me an error when I compiled it, but when I ran the form the data didn't appear. Below is my code, can somebody please help?
    DECLARE
         CURSOR LOOKUP_INST_TYPE IS SELECT DICT.DESCRIPTION
         FROM DICT
         WHERE DICT.CODE = :INSTITUTION.INST_TYPE
         AND DICT.TOPIC = 'INST_TYPE';
    BEGIN
         OPEN LOOKUP_INST_TYPE;
         FETCH LOOKUP_INST_TYPE INTO :INSTITUTION.TXTINST_TYPE;
         CLOSE LOOKUP_INST_TYPE;
    END;

  • Populate Form Field from Post-Query Trigger

    I have a form with some fields like "start_date", "company_id", "previous_start_date", "previous_company_id". Out of these, the "previous" fields are unbound and the others are bound to "my_companies" table. All are in the same block on the form. I have a post-query trigger which runs a cursor to select "previous" values based on the "start_date" and "company_id". More than one "previous" values is retrieved each time. My problem is that my cursor writes back only one value into my form field. I ran the cursor as a pl/sql block in TOAD to test and it fetches all the records that I need. I'm not sure what I'm doing wrong in writing the values into form items. The form items are of type "custom" and display type is "text" (I'm creating the form in Oracle Designer). My cursor code is something like this:
    declare
    cursor previous_data_cur is 
            select company_id,start_date
               from my_companies
               where company_id = :myblock.company_id
               and start_date < :myblock.start_date;       
    BEGIN 
        open previous_data_cur;
        LOOP
        fetch previous_data_cur into :myblock.prev_company_id, :myblock.prev_start_date;
        EXIT WHEN previous_data_cur%NOTFOUND;
        END LOOP;
        close previous_data_cur; 
    END; Can anyone provide any pointers on what I could be doing wrong or what I should do to make this work?
    Any help is greatly appreciated.

    Do you have several previous date fields per record?
    How are they named? Previous_date_1, previous_date_2,...?
    Try this:
    declare
    cursor previous_data_cur is 
            select start_date
               from my_companies
               where company_id = :myblock.company_id
               and start_date < :myblock.start_date;
       l_previous_data previous_data_cur%ROWTYPE;       
       l_count NUMBER;
    BEGIN 
       l_count := 1
       FOR l_previous_data IN previous_data_cur
       LOOP
           copy(l_previous_data.start_date, 'my_block.previous_start_date_'|| l_count);
        END LOOP;
    END; Caution:
    - number of retrieved records may not exceed number of previous_date fields.
    - not tested

  • FRM-40735 POST- UPDATE trigger raised unhandled exception ORA- 01403

    FRM-40735 POST- UPDATE trigger raised unhandled exception ORA- 01403
    I am getting the above error when i am trying to change the Assignment Category field of
    an employee from Junior Staff to Senior Staff.
    Navigation People> Enter & Maintain> (B)Assignment.
    Kindly assist me to resolve this error.
    Plz note there is a promotion that is suppose to be given to some employees in our company as of
    01-APR-2010 so i had to open the closed payroll periods and do the changes. I managed to change for all
    the 9 employees but 1 employee's assignment is giving me an error as follows :
    FRM-40735 POST- UPDATE trigger raised unhandled exception ORA- 01403
    The error displays after i try to save the changes made to the Assignment Category from Junior Staff to Senior Staff.
    NB: i have also tried to switch off the custom code...but its giving me same error.
    Also the element links have been defined for employment category on the links window.
    please help!!
    Edited by: 594647 on Jul 20, 2010 10:26 PM

    Release 12.1.1.
    OS is Red Hat Ent Ed 4
    i am trying to change the employee assignment category from Junior to Senior. so when i am updating the assignment details on the assignment screen (Navigation is People >Enter & Maintain> Assignment) and trying to save, the system gives error on the status bar of the application as follows:
    FRM-40735 POST- UPDATE trigger raised unhandled exception ORA- 01403
    NB: Error is appearing on the Assignment screen.
    Please help!!
    Edited by: 594647 on Jul 21, 2010 2:48 PM

  • Post-form trigger raised unhandled exception

    I have enabled TRANSLATION and ATTACHMENTS menu on my oracle form(form customization).
    but if i click on attachment menu the window opens for attachments but when i am going to close a window it throws an exception as
    **FRM-40735: POST_FORM trigger raised unhandled exception ORA-06502**
    and it is not allowing to close an window i have to terminate application every time.
    what shall i do in this situation ????????

    Hello,
    There is a related known issue for the Qualifications form of Oracle Human Resources -
    PERWSQUA Cannot add Attachments to the Qualification Form - FRM-40735: POST-FORM trigger raised unhandled exception ORA-06502 (Doc ID 1470386.1)
    Reference the solution steps and search on your form name as opposed to the PERWSQUA.
    If still not resolved, please open an SR with the owning application of the form or for Forms Developer.
    Thank you,
    Deborah Bourgeois
    Oracle Customer Support

  • Master-Detail Form - implementing some thing like Post-Query trigger

    Hi all,
    I am struggling to implement an eqivalent of a post-query trigger in Oracle Forms. Please bear with me as I am trying to explain in detail what the problem is.
    Here is my situation.
    I have three tables EMP, DEPT and LOCATION. I created a Master/Table pages on EMP and DEPT.
    Basic relationships.
    Each LOCATION has one or more DEPTs; Each DEPT is at one and only one LOCATION.
    Each DEPT has one ore more EMPs; Each EMP is assigned to only and only DEPT.
    Not getting too complicated, here are the table layouts:
    LOCATION:
    ID number(10,0) not null,
    NAME varchar2(20) not null
    DEPT
    ID number(10,0) not null,
    NAME varchar2(20) not null,
    LOC_ID number (10,0) not null foreign key from LOCATION
    EMP
    ID number(10,0) not null,
    NAME varchar2(20) not null,
    DEPT_ID number (10,0) not null foreign key from DEPT
    Assume I have all the constraints, BIU triggers, sequences defined properly.
    I am using the APEX page wizard to create a Master/Detail Form on DEPT and EMP. The first page is the Master Report on DEPT. I want to display the Location Name on this page also. Because the Master Report allows
    you to change the query, I was able to add the Location Name as part of the
    query. This was very simple.
    Select a.name "Department_Name",
    b.name "Location"
    from dept a, location b
    where a.loc_id = b.id
    Moving on, In the Master Detail Form, I would like to get the Location Name as part of the first Region (Dept Region).
    In this region, I would like to include the Location Name also. So my first region on the Master Detail form includes:
    Dept Id: ________
    Dept Name: _______
    Location Name: __________
    As Region are automatically populated using using a Fetch Row from EMP table (Automated Row Fetch) on an After Header process point, I don't have a way of including the Location as part of query. So I created a Region level Item called Location Name, made it Display only.
    In the old SQL*Forms, or Oracle Forms days, I used to use a Post-Query trigger, or Post-Change trigger to fire on the Loc_Id column to populate the Location Name. Simple fetch like:
    Select name
    into :P80_location_name
    from location
    where loc_id = :P80_loc_id
    However, I am struggling to implement some thing simple like this in APEX. Tried creating a processes, computatations etc, but nothing is working.
    I have seen some previous responses to fetching values from a foreign table
    using a button or AJAX script, but this should be very basic. What am I
    missing here?
    Appreciate any insights.
    Thanks.
    John

    Hi John,
    I'm not too familiar with the post-query triggers in Oracle Forms, but the use of a List of Values (LOV) on your LOCATION table might do the trick for you. If you create a dynamic LOV based on your LOCATIONS table, it can then be referenced by the LOC_ID item on the Master-Detail page, to display the Location Name. You could try doing the following:
    1. Create a new dynamic LOV, LOCATIONS, using a query similar to the following:
    select Name d, ID r
    from LOCATION
    order by 1
    2. Edit the "Create" button on the Master report page, and in the "Optional URL Redirect" section set "Request" to CREATE. Click Apply Changes, to save the setting.
    3. Edit the LOC_ID item on your Master-Detail page, and set the following:
    * in the "Name" region change the "Display As" setting to Select List
    * in the "Label" region change the Label to Location Name.
    * in the "List of Values" region set the "Named LOV" to LOCATIONS
    * in the "Read Only" section, set the condition to Request != Expression 1, and set Expression 1 to CREATE.
    Click Apply Changes to save the settings.
    When you run the pages now, the Location Name field will appear as Read-Only when editing a selected Master row. The item will appear as a Select List when the user clicks "Create" on the Master page, to create a new Master row.
    I hope this helps.
    Regards,
    Hilary

  • Execution of ddl statement  in post-insert trigger

    hi,
    I'm working on headstart 6.5. I wants to execute a DDL statement in post-insert-trigger.The problem is this trigger is executed in between pre-commit and post-forms-commit.In pre-commit the transaction is opened with a insert statement that is inserting "open" in field status which is having a deffered check constraint QMS_NEED_TO_CLOSE_TRANSACTION.In post-forms-commit it will check whether the transaction is open if yes will check the business rule will delete the data that was inserted into qms_transaction in pre-commit trigger and will close the transaction .
         In between if i execute a DDl statement a commit will be performed on the insert statement written in pre-commit trigger.This will violate the check-constraint and we will get the error qms_need_to_close_transaction violated.
         My business logic wants this statement to be executed at the post-insert trigger on the block.Is this possible??
         Does anyone have face the same problem?Whts the workaround for the same?

    Hello,
    You could use the execute_query after the commit_form called, by exeample in a KEY-COMMIT trigger.
    KEY-COMMIT trigger
      Commit_Form ;
      Go_block( 'master_block' ) ;
      Execute_Query ;Francois

  • Errors with post-insert trigger

    I had a POST-INSERT TRIGGER here.but i encountered some problems.can someone help me with the errors?
    begin
         insert into user_acct
         userid_n, user_m, coy_c, contact_n, emp_n,
         work_loc_c, curr_passwd_t, prt_f, indv_pc_f, pc_deploy_c,      
         ext_email_addr_t, other_na_sys_t, status_c, status_rmk_t, upd_d)
         values
         (:user_acct.userid_n, :user_acct.user_m, :user_acct.coy_c, :user_acct.contact_n, :user_acct.emp_n,
         :user_acct.work_loc_c, :user_acct.curr_passwd_t, :user_acct.prt_f, :user_acct.indv_pc_f, :user_acct.pc_deploy_c,                
         :user_acct.ext_email_addr_t, :user_acct.other_na_sys_t, :user_acct.status_c, :user_acct.status_rmk_t,                
         :user_acct.upd_d);
         exception
              when others then
                   clear_message;
                   Message('Insertion of Applicant Particulars failed');
                   SYNCHRONIZE;
                   RAISE Form_Trigger_failure;
    end;
    begin
    insert into user_acct_na_detl
         na_sys_c)
         values
         (:na_sys_cd.na_sys_c);
         exception
              when others then
                   clear_message;
                   Message('Insertion of Non-Application failed');
                   SYNCHRONIZE;
                   RAISE Form_Trigger_failure;
    end;
              when others then
                   null;      
    end;     
    the error:
    Error 103 at line 31, column 3
    Encountered the symbol 'WHEN' when expecting one if the following:
    begin declare end exception exit for goto if loop mod null
    pragma raise return select update while <an identifier>
    <a double-quoted delimited-identifier><a bind variable><<
    close current delete fetch lock insert open rollback
    savepoint set sql commit<a single-quoted SQL string>
    The symbol "exception"was substituted for "WHEN" to continue
    Error 103 at line 2, column 1
    Encountered the symbol "END"

    i delete the "END" already but when i compile again, i encountered some error again.
    Error 370 at line 27, column
    OTHERS handler must be last among the exception handlers of a block
    Error 0 at line 1, column 1
    Statement ignored

Maybe you are looking for

  • Cache problem question. What am I doing wrong?

    index.html page has ENTER button that leads to content.html. Content.html holds > content.swf.  I will be updating the content.swf file regularly so want content.html to always display latest content.swf file. Btw content.html is just a blank page wh

  • Error when using the Attach to Email... Feature

    I currently using Adobe Reader 8.0 as well as Adobe Acrobat Professional 8.0. Whenever I try to use the Attach to Email... feature I get a debugging error. It always brings up the Visual Studioi Just-In-Time Debugger. It will create the email, but it

  • HT4489 how do I print a copy of a month in iCloud calendar?

    Is it possible to print a monthly calendar from iCloud like I could from iCal ?

  • What to do when activation fails and no meaningful information provided

    Hello, I just tried activating an Activity in a track. It failed and the Activation Results tab just says "Activation failed. No DC specific results available" If I try to create another activity, it's going to consider this failed activity a predece

  • JDeveloper - Update Failure

    This post is intended to be more of an FYI than anything, For Build JDEVADF_11.1.1.1.0_GENERIC_090615.0017.5407, both Studio and Java Edition I could not get any of the updates to download. 1) I am running Windows 7 RTM (and really liking it) AND a X