Capturing KFF Event to update fields.

Hi,
I have created a custom OAF page with an advanced table.
I am trying to capture the event when the Chart of accounts KFF is invoked and updates the ccid column as I then have to update an additional few fields when this is updated as part of selecting the charge code from the CCID.
so far I acannot seem to get an event to fire either after the CCID is populated or when the KFF is finished.
Does any one have any suggestions?
Thanks,
P

not in this case.
KFF Actions appear to be operating on a different level.
I had that code in there, but it never fired anything, there is never an event when a KFF was fired.
I have a code combination field in a table, so when the code combination is selected, I want to fire off some post actions to update the table row.
The charge code KFF field works correctly, but I cannot seem to get hold of an event at all to complete my post processing to update information such as description of share codes etc.
Surely someone has had to work with this???
Edited by: pburke on 27/02/2012 17:01

Similar Messages

  • Unable to capture Action_Success event during update

    Hi I am using SAP-B1 2004. Using UIAPI, i am trying to do something when an item information in item master is updated.
    On update button click i am capturing the Before_Action =True event to do something. If the Item information is successfully updated, i am trying to capture Action_Success = True event to do something.
    The problem i am encountering is that, the Action_Success event is not getting fired.
    After Before_Action =True , Before_Action =false event is getting fired and after that the item uid value changes from 1 (for update button) to some other value.
    Any idea why this is happening? My code is as follows:
    If pVal.FormType = 150 And pVal.FormMode = 2 Then
       If pVal.ItemUID = "1" And pVal.EventType =   
           et_ITEM_PRESSED And pVal.Before_Action = True Then
           **Do Something***
       End If
       If pVal.ItemUID = "1" And pVal.EventType = 
           et_ITEM_PRESSED And pVal.Action_Success = True Then
           **Do Something***
       End If
       If pVal.ItemUID = "1" And pVal.EventType = 
          et_ITEM_PRESSED And pVal.Action_Success = false Then
           **Do Something***           
       End If
    End If
    Thanks.

    Just change the second condition from
    If pVal.ItemUID = "1" And pVal.EventType =
    et_ITEM_PRESSED And pVal.Action_Success = True Then
    to
    If pVal.ItemUID = "1" And pVal.EventType =
    et_ITEM_PRESSED And pVal.BeforeAction = false Then
    and forget ActionSuccess.
    If there is an error in between, the "et_ITEM_PRESSED pVal.BeforeAction = false" is not sent. This means, whenever you get the event "et_ITEM_PRESSED pVal.BeforeAction = false", the action actually was successful.
    You may want to test it with following proof-snippet:
    If pVal.FormType = 150 And pVal.FormMode = fm_UPDATE_MODE Then
        If pVal.ItemUID = "1" And pVal.EventType = _
            et_ITEM_PRESSED And pVal.Before_Action = True Then
            Debug.Print "before"
        End If
        If pVal.ItemUID = "1" And pVal.EventType = _
            et_ITEM_PRESSED And pVal.Before_Action = False Then
            Debug.Print "after"
        End If
        If pVal.ItemUID = "1" And pVal.EventType = _
            et_ITEM_PRESSED And pVal.Action_Success = True Then
            Debug.Print "success"
        End If
        If pVal.ItemUID = "1" And pVal.EventType = _
            et_ITEM_PRESSED And pVal.Action_Success = False Then
            Debug.Print "no success"
        End If
    End If
    Case 1: Update successful
    Output: before, after, no success
    Case 1: Update fails
    Output: before, no success
    Means: forget ActionSuccess, use BeforeAction true/false.
    (That's how solved the problem did it when I encountered the same problem.)
    Problem is, you're not able to to something if there was an error. But why would you want to? User sees a red error message and tryes again...
    Florian
    Message was edited by: Florian Zeller

  • Double click event on subscreen field

    Hello,
    I have created a customer subscreen to be included in a Quality notification. The field that I have added is a Purchase Order number.
    I want to code the double click event for this field, such that when I double click the PO number it navigates to the Display PO transaction.
    As it is a subsreen, I cannot use the user command 'PICK'.
    I tried capturing the sy-ucomm and entering the following commands:
      IF sy-ucomm = 'AZOB'.
        SET PARAMETER ID 'BES' FIELD viqmel-zzponumber.
        CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
      ENDIF.
    However, this gives a problem because there is already a Purchasing Doc field in the notification and it navigates to the wrong PO.
    Can anyone give me alternate suggestions to navigate to the customer PO field?
    Thanks,
    Rugmani

    I tried your code and it worked fine for me. However I debugged ME23N a bit and found this:
    CASE l_t160-vorga.
        WHEN 'XP'.
          GET PARAMETER ID 'BES' FIELD l_ebeln.
          GET PARAMETER ID 'BSP' FIELD l_ebelp.
    and later on
    IF NOT sy-subrc IS INITIAL AND        
       ( ch_document-trtyp EQ 'A' OR      
         ch_document-trtyp EQ 'V' ).      
    Parameter bei Calls                   
      CHECK sy-binpt EQ space.            
      GET PARAMETER ID 'BES' FIELD l_ebeln.
      GET PARAMETER ID 'BSP' FIELD l_ebelp.
    When I ran this in my sandbox system, the document trtyp field was 'A' so the program did the second GET PARAMETER call and the document displayed correctly.
    my point is that the GET PARAMETER is conditional - so maybe the program (subroutine INIT_TRANSACTION in program RM_MEPO_GUI) is not actually doing it? There is also some code that IMPORTs values from shared ABAP memory, so the wrong document number could be coming from that as well... try debugging from your code inro the next program and see where it is going wrong.

  • Capture Hyperlink event and set value

    Hello everyone,
    I have a hyperlink on a report column and when I click on the hyperlink it takes me to an URL. Now I need to capture the time the user clicked on the URL and update a DB table column. So I created a Dynamic event to update an item, but I am not able to get the hyperlink event. When I select the Event as 'Click' and 'Selection Type' as 'Item', the report column does not show up on the Item(s) LOV. Can Dynamic Actions be based only on click of page items?
    If so, is there any other to capture this Hyperlink event and set value? Also, as my 'Column Link' target is 'URL', I cannot set any value for items there!
    Please help,
    Ramya

    Thanks a lot Vee, that was very helpful.
    I added the dummy page with 'OnLoad' page process with the PL/SQL code and my current page redirects to a new page with the new page's attributes set. Now I am able to update the timestamp on the table with the sysdate when I click on the click. However, my URL does not work. A page cannot be found error is returned. I displayed the P2_URL_ITEM on the page and it displays only until 'http', the rest of the text is cut. Is there a way I can increase the length of this page item?
    As the URL value assigned to the page item did not work, I tried to hardcode the URL. Below is my page process on the load of dummy page,
    BEGIN
    UPDATE xxnf.XXNF_APEX_RR_REPORTS
    SET last_used = SYSDATE
    WHERE report_id = :P2_REPORT_ID;
    sys.owa_util.redirect_url('www.google.com');
    --owa_util.redirect_url(:P2_URL_ITEM);
    END;
    However, still the page not found error comes up. Could you please help fix both these issues?
    1) P2_URL_ITEM - not having the complete URL
    2) redirect_url not working.
    Looking forward to any helpful pointers,
    Ramya

  • Capturing mouse events from a loaded module.

    I've defined a module and have it to were the mouse
    coordinates (through mouse events) are updating bindable, public
    variables in the module itself.
    In the app parent app (that's loaded the module), i want to
    display the coordinates from the loaded module as it moves around.
    Like I said, I'm close, to where I capture and handle the
    move event in the module itself, I just need to access that info
    from the parent app, etc...
    Any help is appreciated.
    -fd

    not that it matters now, but i figured it out.
    thanks anyway...
    -fd

  • Capture ENTER event in alv

    Hi friends  ,
    I want capture "enter " event whenever user presses enter at ALV fields .
    Well i have used an event "handle data changed" but then it wont get triggered
    Unless data in ALV field is changed .
    Please suggest me how to capture event without data getting changed ,
    As i want validate data , when user presses enter on alv fields .
    Thanx in advance .

    If you want to trigger PAI for Enter key even when no data is changed, then you need to set I_APPL_EVENTS flag when creating the alv grid.
    create object alv_grid
      exporting
        i_parent = cust_ctrl
       i_appl_events = 'X'.
    But this may bring in more problems because you have to now call check_changed_Data in PAI which will trigger data_Changed, but there are workarounds.
    Regards,
    Rao A

  • Class or method needed to capture the event triggered

    Hi All,
           Help needed in finding the event triggered in ALV container.
    As per my requirement , I am registering the event mc_evt_modify for getting the search help(MEKK) in a ALV container . However it is triggered when ever I am inserting a row in ALV container and also the method data_changed is also triggered with that. But I don't want the method data_changed to be triggered.
    Is there any method or class which captures the event triggered so that I can put a condition on mc_evt_modify event.
    Please help me to resolve this issue.
    Regards,
    Srinivas

    Hi,
    You can check event ONF4
    "1 . --------------------   first register it
      DATA: it_f4 TYPE lvc_t_f4,
            wa_f4 TYPE lvc_s_f4.
      wa_f4-fieldname = 'CONNID'.
      wa_f4-register = 'X'.
      wa_f4-CHNGEAFTER = 'X'.
      APPEND wa_f4 TO it_f4.
    CALL METHOD g_alv_grid_ref->register_f4_for_fields
        EXPORTING
          it_f4 = it_f4.
    "2. --------------------------- now handle it
    handle_on_f4 FOR EVENT onf4 OF cl_gui_alv_grid
                               IMPORTING e_fieldname e_fieldvalue er_event_data,
    METHOD handle_on_f4.
        DATA: repid LIKE sy-repid,
              dynnr LIKE sy-dynnr,
              field TYPE help_info-dynprofld.
        repid = sy-repid.
        dynnr = sy-dynnr.
        field = e_fieldname.
    CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
          EXPORTING
            tabname           = 'SFLIGHT'
            fieldname         = 'CONNID'
            searchhelp        = "give search help here
            dynpprog          = repid
            dynpnr              = dynnr
            dynprofield       = field.  "return picked value to the one you are in
        "prevent furhter standard processing
        er_event_data->m_event_handled = 'X'.
      ENDMETHOD.                  
    Regards
    Marcin

  • Capture MDM EVENTs

    Dear MDM experts,
    Kindly let me know how we can capture an MDM event and trigger an external program.
    I have this requirement of populating a field in the main table based on the ENTER event when the user is entering a main table data record and has has pressed ENTER.
    There is this external program that needs to be called to do the job.
    Pls let me know.
    Would appreciate your prompt inputs.
    Thanks.

    Hi,
    I guess you r using Eventing as a function  to create UI integration between iViews and between iViews and web applications. 
    There are two types of eventing:
    a)URL eventing
    Where an event is triggered to open a browser popup window. Possible use of this is in accessing a back-end system or an external web application
    B)EPCF eventing 
    Where an event is published to another iView on the same page.possible use of thsi is in displaying related objects from different repositories.
    With the parameters that you define when creating the event, the iView event builder is programmed to build a valid string with the correct syntax to generate a valid EPCF or URL link.[for external access]
    <b>The procedure to capture MDM events,in a nutshell, is as follows:</b>
    a)Double-click the Result Set iView to launch the editor. The iView is now in edit mode.
    b)Select the Custom Events radio button to open the Event Builder. 
    c)Select Add and define the new custom event with the parameters as per the table below.
    Hoever there are certain event builder parameter about which detailed description is given on
    <a href="http://help.sap.com/saphelp_mdm550/helpdata/en/45/c89e544c52570be10000000a114a6b/content.htm">this URL</a>
    I hope it will help you.
    Regards,
    Krutarth

  • Unable to capture button event in pageLayout Controller

    Hi Guys,
    I have the following layout
    pageLayout
    pageLayoutCO (controller)
    ----header (Region)
    ----------messageComponentLayout (Region)
    -----------------MessageLovInpurt
    -----------------MessageChoice(Item)
    -----------------MessageTextInput
    -----------------MessageLayout
    ----------HideShow (Region)
    -----------------MessageLovInpurt(Item)
    -----------------MessageChoice(Item)
    -----------------MessageTextInput(Item)
    -----------MessageComponentLayout (Region)
    -----------------MessageLayout
    ------------------------SubmitButton(ID:SearchBtn)
    ------------------------SubmitButton(ID:ClearBtn, fires partial action named clear)
    -----------header(Region)
    I am not able to capture the event fired by the button ClearBtn in the controller of the pagelayout.....
    The two methods I used as follows aren't worked:
    if ("clear".equals(pageContext.getParameter(OAWebBeanConstants.EVENT_PARAM)))
    if (pageContext.getParameter("ClearBtn") != null) {
    what should i do in order to capture the button event in the pageLayout Controller
    Thanks in advance
    Mandy
    Edited by: user8898100 on 2011-8-2 上午7:49

    Mandy,
    Its really strange that its not able to caputure the event in CO.
    Below is the way in which we handle to Submit action at CO level.
    /Check whether ClearBtn is same in case too.
    if(pageContext.getParameter("ClearBtn")!=null){
    System.out.println("Inside the Clear Btn Action");
    Regards,
    Gyan

  • Unable to capture onClick event of htmlb:image in a controller

    Hi,
    I am trying to capture onClick event of an htmlb:image (which is present in my view) in DO_HANDLE_EVENT method of my controller.
    Surprisingly, when I click the image, page does refreshes. But the event in not captured in do_handle_event method. Control never reaches that method. Whereas if I put onClick event of a button, it is easily captured in do_handle_event method.
    Ex. code in my view is:
    <%@page language="abap"%>
    <%@extension name="bsp" prefix="bsp" %>
    <%@extension name="htmlb" prefix="htmlb"%>
        <htmlb:image id      = "searchimg"
                     src     = "consvalue.jpg"
                     onClick = "search"  />
        <htmlb:button id="searchbutton" onClick="search"
                                     text="Event Test"/>
    Now, the button event is captured, but not the image event.
    Any idea why this might be happening?
    Regards,
    Kaushal

    Hi Kaushal,
    are image and button enclosed by <htmlb:form> ?
    Please post your of do_handle_event, where you look for the event.
    Regards,
    Sebastian

  • How to capture the event in driver JSplitPane

    Hi all, i have some problem with the JSplitPane.
    What i want to do is that:
    i need to capture the event throw when the user press the button in the driver of the JSplitPane, this is because i want to know wich side of the splitpane is complet visible.
    Thanks for your time!
    Luca

    I thought I would do up an example just for fun. As you drag the splitter bar the size of the two components and the splitter component is reported to the console along with the divider location. Interestinly, on my system (Windows XP, Java 1.41_02) when you move the bar downwards the divider location is consistantly two pixels past the height of the top component but when you drag the bar upwards the divider location and the height of the top component are the same.
    Does anyone have any ideas why that would be?
    Here is the test app:package splitPaneMonitor;
    import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.beans.PropertyChangeEvent;
    import java.beans.PropertyChangeListener;
    import javax.swing.JFrame;
    import javax.swing.JSplitPane;
    import javax.swing.JTextArea;
    public class SplitPaneFrame extends JFrame implements PropertyChangeListener  {
         public SplitPaneFrame()  {
              super ("Split pane test");
              //  Create the components to show in the split pane
              myTopComponent = new JTextArea ("This is the top component", 10, 40);
              myBottomComponent = new JTextArea ("This is the bottom component", 15, 40);
              //  Create the split pane
              mySplitter = new JSplitPane (JSplitPane.VERTICAL_SPLIT , true, myTopComponent, myBottomComponent);
              mySplitter.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, this);
              getContentPane ().setLayout(new BorderLayout ());
              getContentPane ().add (mySplitter, BorderLayout.CENTER);
         public void propertyChange (PropertyChangeEvent evt) {
              if (evt.getPropertyName () == JSplitPane.DIVIDER_LOCATION_PROPERTY)  {
                   System.out.println ("Split pane divider moved");
                   Dimension size = myTopComponent.getSize ();
                   System.out.println ("    The top component's size is: " + size.height +" h, "+ size.width + " w");
                   myBottomComponent.getSize (size);
                   System.out.println ("    The bottom component's size is: " + size.height +" h, "+ size.width + " w");
                   mySplitter.getSize (size);
                   System.out.println ("    The splitter's size is: " + size.height +" h, "+ size.width + " w");
                   System.out.println ("    The splitter divider location is: " + mySplitter.getDividerLocation ());
         private JTextArea myTopComponent;
         private JTextArea myBottomComponent;
         private JSplitPane mySplitter;
         public static void main(String[] args) {
              SplitPaneFrame appFrame = new SplitPaneFrame ();
              appFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
              appFrame.pack();
              appFrame.setVisible (true);          
    }

  • How to Capture Button event on TrainBean navigation

    Hi All
    i m being required to capture a button event in train bean Navigation, i m doing customization in Iexpense Module,here in Create IExpenseReport i need to capture the events of Remove,Return etc.how is it possible any clue would be very helpful.
    Thanx
    Pratap

    try this..
    if (GOTO_PARAM.equals(pageContext.getParameter(EVENT_PARAM))
    "NavBar".equals(pageContext.getParameter(SOURCE_PARAM))
    // This condition checks whether the event is raised from Navigation bar
    // and Next or Back button in navigation bar is invoked.
    int target = Integer.parseInt(pageContext.getParameter(VALUE_PARAM));
    // We use the parameter "value" to tell use the number of
    // the page the user wants to visit.
    String targetPage;
    switch(target)
    case 1: targetPage = "/oracle/apps/dem/employee/webui/EmpDescPG"; break;
    case 2: targetPage = "/oracle/apps/dem/employee/webui/EmpAssignPG"; break;
    case 3: targetPage = "/oracle/apps/dem/employee/webui/EmpReviewPG"; break;
    default: throw new OAException("ICX", "FWK_TBX_T_EMP_FLOW_ERROR");
    HashMap pageParams = new HashMap(2);
    pageParams.put("empStep", new Integer(target));
    pageContext.setForwardURL("OA.jsp?page=" + targetPage,
    null,
    OAWebBeanConstants.KEEP_MENU_CONTEXT,
    null,
    pageParams,
    true, // Retain AM
    OAWebBeanConstants.ADD_BREAD_CRUMB_NO, // Do not display breadcrumbs
    OAWebBeanConstants.IGNORE_MESSAGES);
    --Prasanna                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Not able to capture button event in pageLayout Controller

    Hi Guys,
    I have the following layout
    pageLayout ------------------------ pageLayoutCO (controller)
    ----messageComponentLayout (Region)
    ----------messageComponentText (item)
    ----------messageComponentText (item)
    ----------messageComponentText (item)
    ----------messageLayout (Region)
    ----------------header(Region)
    ----------------------button (item) (say BTN1) (fires partial action)
    I am not able to capture the event fired by the button BTN1 in the controller of the pagelayout..... but if i set a controller at the messageComponentLayout iam able to capture the event.
    what should i do in order to capture the button event in the pageLayout Controller
    Thanks in advance
    Tom.

    Tom,
    Two things:
    1)The button ur using is of type submitbutton or button?.In this scenario it should be button.
    2)The correct coding practice is using:
    if("QUERY".equals(pageContext.getParameter(OAWebBeanConstants.EVENT_PARAM)))
    instead of
    String _event = pageContext.getParameter("event");
    if("QUERY".equals(_event))
    because you never know if Oracle in any upgrade or patch change the value of the constant EVENT_PARAM in class OAWebBeanConstants.
    3)If first point is followed by you, just match the exact event name in code and in property inspector for the button.
    --Mukul
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • PHP Show if hides update fields, but they get overwritten with an empty string

    I have an issue with a page where some update fields are displayed depending on who is logged, for example:
    <?php if ($row_Users['UserID']=="101"){ ?>
    <input <?php if (!(strcmp($row_lodges['101_finalist'],"Yes"))) {echo "checked=\"checked\"";} ?> type="checkbox" name="101_finalist"  value="Yes"/>
    <input type="text" class="rankfield" name="101_rank" value="<?php echo($row_lodges['101_rank']); ?>" />
    <?php }  ?>
    <?php if ($row_Users['UserID']=="102"){ ?>
    <input <?php if (!(strcmp($row_lodges['102_finalist'],"Yes"))) {echo "checked=\"checked\"";} ?> type="checkbox" name="102_finalist"  value="Yes"/>
    <input type="text" class="rankfield" name="102_rank" value="<?php echo($row_lodges['102_rank']); ?>" />
    <?php }  ?>
    The issue I have is that if User101 is logged in and updates fields 101_finalist and 101_rank, it overwrites 102_finalist and 102_rank with an empty string.
    Is it possible to prevent each user from seeing the other fields for other users, and prevent the existing values for those other users not be overwritten?
    Hope that makes sense!
    Thank you.

    That would mean multiple nominations when really there only needs to be one nomination per category in any given country.
    It would be:
    1, 345, 101, Borana Lodge, 7, 2, Yes, 1
    1, 345, 102, Borana Lodge, 7, 2, Yes, 3
    1, 345, 103, Borana Lodge, 7, 2, No, NULL
    Instead of:
    1, 345, Borana Lodge, 7, 2, Yes, 1, Yes, 3, No, NULL
    Sorry, Lodge isn't in the nominations table, the list above is what is displayed on the site. Lodge gets looked up in the Ldoges table.
    At the moment it works like this:
    People can visit a website and vote for lodges in different categories, giving them a score out of 10 for each.
    If a lodge gets a vote in a particular category an admin person creates a nomination for that lodge, in that category.
    And the last bit is where judges login and tag the ones they think should be finalists.

  • How to update fields in multiple tables ?

    Dear all,
    What is the fastest way to update fields in multiple tables... from a single change table...as below is my code to update the fields but it is taking long time to update as i need to keep log file if any one update fails....
    CREATE OR REPLACE
    package body DO_DC_NAME_UPDATE_OTHER_TAB
    as
    type rowidArray is table of rowid index by binary_integer;
    type custRec is record
    n_cust_ref_no dbms_sql.number_table,
    v_name dbms_sql.varchar2_table,
    v_name_chg dbms_sql.varchar2_table,
    rowid rowidArray,
    changed dbms_sql.varchar2_table
    procedure VALIDATE_CUST_NAME( p_n_cust_ref_no in number,p_v_name_chg in out NOCOPY varchar2, p_changed in out NOCOPY varchar2 )
    is
    begin
    FOR cr_cust IN (SELECT --a.n_cust_ref_no,a.v_name,UPD_V_NAME, a.n_weight,a.V_LASTUPD_INFTIM
    from GNMT_CUSTOMER_MASTER_CHG where n_cust_ref_no=p_n_cust_ref_no)
         loop
    -- v_name
    if nvl(trim(cr_cust.v_name),0) != nvl(p_v_name_chg,0)
    then
              p_v_name_chg := p_v_name_chg;
              --p_v_name := p_v_name;
              p_changed := 'Y';
    end if;
         end loop;
    end;
    procedure DO_NAME_UPDATE_OTHER_TAB
    is
    l_record custRec;
    l_array_size number default 20000;
    l_done boolean;
    l_cnt number default 1;
    cursor c is select a.n_cust_ref_no, a.v_name,a.v_name_chg, a.rowid, 'N'
                        from GNMT_CUSTOMER_MASTER_CHG a--,GNMT_CUSTOMER_MASTER b
                        where a.v_name <> trim(a.v_name_chg); --and  a.n_cust_ref_no in (1434775,1561181,1601870);
    begin
    open c;
    loop
    dbms_application_info.set_client_info
    ( 'processing ' || l_cnt || ' thru ' || (l_cnt+l_array_size-1) );
    fetch c bulk collect into l_record.n_cust_ref_no, l_record.v_name,l_record.v_name_chg,l_record.rowid, l_record.changed
    LIMIT l_array_size;
    l_done := c%notfound;
    --dbms_output.put_line ('message10');
    for i in 1 .. l_record.n_cust_ref_no.count
    loop
    VALIDATE_CUST_NAME(l_record.n_cust_ref_no(i),l_record.v_name_chg(i),l_record.changed(i) );
    end loop;
    --dbms_output.put_line (l_record.n_cust_ref_no(i)||','||l_record.V_OCCUP_CODE(i)||','||l_record.CHANGED(i));
    /*forall i in 1 .. l_record.n_cust_ref_no.count
    update GNMT_CUSTOMER_MASTER q
    set q.v_name = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.v_name) = l_record.v_name(i)
    and l_record.changed(i) = 'Y';*/
    -- update v_name in all the related tables
    forall i in 1 .. l_record.n_cust_ref_no.count
    update ADE_CUSTOMER_MASTER q
    set q.v_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.v_name) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update GNMT_POLICY_DETAIL q
    set q.v_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.v_name) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update GNMT_QUOTATION_DETAIL q
    set q.v_NAME =l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.v_name) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update NBDT_BENEFICIARY q
    set q.V_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.V_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update PSDT_NOMINATION_TRANSACTION q
    set q.V_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.V_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update PSMT_POLICY_BENEFICIARY q
    set q.V_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.V_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    commit;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update PSMT_POLICY_TRUSTEE q
    set q.V_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.V_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update PSMT_QUOTATION_BENEFICIARY q
    set q.V_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.V_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update PSMT_QUOTATION_TRUSTEE q
    set q.V_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.V_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_NAME is not null;
    commit;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update GNDT_BLACKLIST_DETAIL q
    set q.v_FNAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.v_FNAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_FNAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update INDT_LIAM_DETAIL q
    set q.v_FNAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.v_FNAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.v_FNAME is not null;
    commit;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update GNMT_POLICY q
    set q.V_PAYER_NAME = l_record.v_name_chg(i)
    where q.N_PAYER_REF_NO = l_record.n_cust_ref_no(i)
    and trim(q.V_PAYER_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.V_PAYER_NAME is not null;
    commit;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update GNMT_QUOTATION q
    set q.V_PAYER_NAME = l_record.v_name_chg(i)
    where q.N_PAYER_REF_NO = l_record.n_cust_ref_no(i)
    and trim(q.V_PAYER_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.V_PAYER_NAME is not null;
    commit;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update GNMT_QUOTATION q
    set q.V_PROPOSER_NAME = l_record.v_name_chg(i)
    where q.N_PROPOSER_REF_NO = l_record.n_cust_ref_no(i)
    and trim(q.V_PROPOSER_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.V_PROPOSER_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update GNMT_POLICY q
    set q.V_PROPOSER_NAME = l_record.v_name_chg(i)
    where q.N_PROPOSER_REF_NO = l_record.n_cust_ref_no(i)
    and trim(q.V_PROPOSER_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.V_PROPOSER_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update CLMT_CLAIM_MASTER q
    set q.V_CLIENT_NAME = l_record.v_name_chg(i)
    where q.N_CLIENT_REF_NO = l_record.n_cust_ref_no(i)
    and trim(q.V_CLIENT_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.V_CLIENT_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update CLMT_CLAIM_MASTER q
    set q.V_INTIMATOR_NAME = l_record.v_name_chg(i)
    where q.N_CLIENT_REF_NO = l_record.n_cust_ref_no(i)
    and trim(q.V_INTIMATOR_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.V_INTIMATOR_NAME is not null;
    forall i in 1 .. l_record.n_cust_ref_no.count
    update PYMT_VOU_MASTER q
    set q.V_PAYEE_NAME = l_record.v_name_chg(i)
    where q.n_cust_ref_no = l_record.n_cust_ref_no(i)
    and trim(q.V_PAYEE_NAME) = l_record.v_name(i)
    and l_record.changed(i) = 'Y'
    and q.V_PAYEE_NAME is not null;
    /*forall i in 1 .. l_record.n_cust_ref_no.count
         INSERT INTO GNMT_CUSTOMER_MASTER_LOG
              (N_CUST_REF_NO, V_TITLE_CODE, V_NAME, D_BIRTH_DATE, V_SEX, V_RELIGION_CODE, V_NATION_CODE, V_OCCUP_CODE, V_ALIVE, V_SMOKER,
              N_NO_STICKS, D_DEATH_DATE, V_BUMI_NON_BUMI, V_AGE_ADMITTED, V_SHORT_NAME, V_FIRST_NAME, V_LAST_NAME, V_EMAIL, V_DESIGNATION,
              N_HEIGHT,N_WEIGHT,V_TITLE_CODE_CHG, V_NAME_CHG, D_BIRTH_DATE_CHG, V_SEX_CHG,V_RELIGION_CODE_CHG,V_NATION_CODE_CHG, V_OCCUP_CODE_CHG, V_ALIVE_CHG,
              V_SMOKER_CHG, N_NO_STICKS_CHG, D_DEATH_DATE_CHG,V_BUMI_NON_BUMI_CHG, V_AGE_ADMITTED_CHG, V_SHORT_NAME_Chg, V_FIRST_NAME_Chg,
              V_LAST_NAME_Chg, V_EMAIL_Chg, V_DESIGNATION_Chg,N_HEIGHT_Chg,N_WEIGHT_Chg, V_UPD_STATUS_DC,-- V_LASTUPD_PROG, V_LASTUPD_INFTIM,
              V_LASTUPD_USER_DC, V_LASTUPD_PROG_DC,V_LASTUPD_INFTIM_DC
              SELECT N_CUST_REF_NO, V_TITLE_CODE, V_NAME, D_BIRTH_DATE, V_SEX, V_RELIGION_CODE, V_NATION_CODE, V_OCCUP_CODE, V_ALIVE, V_SMOKER,
              N_NO_STICKS, D_DEATH_DATE, V_BUMI_NON_BUMI, V_AGE_ADMITTED, V_SHORT_NAME, V_FIRST_NAME, V_LAST_NAME, V_EMAIL, V_DESIGNATION,
              N_HEIGHT,N_WEIGHT,V_TITLE_CODE_CHG, V_NAME_CHG, d_birth_date_chg, V_SEX_CHG, V_RELIGION_CODE_CHG,V_NATION_CODE_CHG, V_OCCUP_CODE_CHG, V_ALIVE_CHG,
              V_SMOKER_CHG, N_NO_STICKS_CHG, D_DEATH_DATE_CHG, V_BUMI_NON_BUMI_CHG, V_AGE_ADMITTED_CHG, V_SHORT_NAME_Chg, V_FIRST_NAME_Chg,
              V_LAST_NAME_Chg, V_EMAIL_Chg, V_DESIGNATION_Chg,N_HEIGHT_Chg,N_WEIGHT_Chg--, V_LASTUPD_USER, V_LASTUPD_PROG, V_LASTUPD_INFTIM
              ,'PROCESSED'
              ,user,--P_USER,
              'DC_PAKAGE',
              sysdate--P_DATE
              FROM GNMT_CUSTOMER_MASTER_CHG where n_cust_ref_no =l_record.n_cust_ref_no(i)
              --and n_cust_ref_no not in (select n_cust_ref_no from GNMT_CUSTOMER_MASTER_LOG);*/
    exit when (l_done);
    l_cnt := l_cnt + l_array_size;
    end loop;
    commit;
    end;
    end;
    thank You

    Dear SeánMacGC thanks for reply,
    But "a.changed" is not a field in GNMT_CUSTOMER_MASTER_CHG. what i am doing in this procedure is i am collecting bulck data and validating field by field from GNMT_CUSTOMER_MASTER_CHG with GNMT_CUSTOMER_MASTER table as their structure is same.. if v_name is not same as v_name_chg then i am setting changed flag to "Y" changed is "changed dbms_sql.varchar2_table" and updating GNMT_CUSTOMER_MASTER in bluck where changed flag ='Y'...
    type custRec is record
    n_cust_ref_no dbms_sql.number_table,
    v_name dbms_sql.varchar2_table,
    v_name_chg dbms_sql.varchar2_table,
    rowid rowidArray,
    *changed dbms_sql.varchar2_table*
    i cannot use simple SQL as i need to validate field for each records with GNMT_CUSTOMER_MASTER_CHG and insert into log file as well.....
    to run this procedure:
    execute DO_DC_NAME_UPDATE_OTHER_TAB.DO_NAME_UPDATE_OTHER_TAB;
    Thanks...

Maybe you are looking for

  • Cant activate my iPhone 3gs after upgrading it from 4.1 to ios 5, it says no sim card insert?

    upgraded from 4.1 to ios 5, it was jailbroken before i upgraded it and i used another phone-card while jailbroken and now i've switched back to the original and it doesnt work whats the problem?

  • JAVASCRIPT ERROR  DW CC

    Hey there guys, Hope you can assist. We have a client with a number of MACs running 10.8.4 and CC. All of them generate an error when doing an HTM preview in DW. Complete CC reinstalls, and erasing and reinstalling the entire OS - even with a new har

  • Looking for appropriate TV-Out cable

    Hey guys... I lost my tv-out cables in a recent move.  Looked all over for them, but they're gone.  The card that these fit is an XFX 7900GT. I really have two options.  The first, preferred option is to get a new 7-pin tv-out cable.  I have found on

  • How can I view photos on the iPad in order of the name of the photo instead of the date the photo has been taken

    On the PC I edited the "file"names of photos in a photo-album, so that the photos are in a logical order after the file names. When I synchronise this photos with the iPad, they are shown on the iPad in the chronological order when the photo has been

  • Apex 4.01 bug with security policy

    Hi! I have install Apex 4.01 on Oracle 11gR2 EE x86 on Windows XP SP3... Previously uninstalled Apex version that original Oracle installation. When I logged in Admin pages, I have changed password policy to minimum. [http://rapidshare.com/files/4235