Re: Displaying Current Record After Delete

Hi all,
I am using Jdeveloper 11.1.2.3.0
I have two tables which has parent child relation among the both.
I dragged the parent table as a adf form on to the .jspx page.
Now if i am trying to delete fifth record in the parent table it is giving error message like "Table has child record, delete unsuccessful"
It is fine, but the control going to first record after deletion.
But i want to display current deleting record on the page if deletion is unsuccessful.
Can anybody help me to resolve the above one.
Thanks,
Syam

In this code when the bolded if condition fails i want to delete that record. I tried "delete struct1 index sy-tabix" but that record is not deleted.
I tried "clear  struct1 ". its deletes the current record.
but in some field its getting zero value & it is appending as a additional record.
Please help me.
loop at cdhdr.
if ( it1-tcode = 'FSS0' or it1-tcode = 'FS00' ).
    w1_saknr = it1-objectid+4(10).
    w_orgid = it1-objectid+14(4).
   loop at it_cdpos  where changenr eq it1-changenr
                  and objectid eq it1-objectid
                   and   objectclas eq it1-objectclas.
   <b>If w_orgid in r_orgid.</b> 
  IF ( it_CDPOS-FNAME = 'XLOEV' AND it_cdpos-value_new eq 'X' ).
     replace struct1-change_ind with 'D' into struct1-change_ind.
            struct1-bukrs = w_orgid.
            struct1-cost = space.
            struct1-plant = space.
            append struct1.
      else.
         struct1-bukrs = w_orgid.
         struct1-change_ind = w_chngid.
         struct1-cost = space.
         struct1-plant = space.
         append struct1.
      endif.
   <b> else</b>.
    <b>delete struct1 index sy-tabix</b>.
  endif.
    append struct1.
       endloop.
endif.
endloop.

Similar Messages

  • Keeping current record after refreshing iterator (iterator refresh)

    Greetings,
    I'm using the following code to refresh a master iterator, so that when data is saved\edited it is automatically refreshed in the user interface. I'm using BC for the model layer.
    public String commandButton_save_action() {
    BindingContainer bindings = getBindings();
    OperationBinding operationBinding =
    bindings.getOperationBinding("Commit");
    OperationBinding operationBinding2 =
    bindings.getOperationBinding("Execute");
    System.out.println("Now @ Global bean ... going to ...");
    operationBinding.execute();
    operationBinding2.execute();
    // It should be a error page
    if (!operationBinding.getErrors().isEmpty()) {
    return null;
    // Refresh main view object
    DCBindingContainer bc =
    (DCBindingContainer)FacesContext.getCurrentInstance().getExternalContext().getRe
    questMap().get("bindings");
    FirstCareAppModuleImpl fc =
    (FirstCareAppModuleImpl)bc.findDataControl("FirstCareAppModuleDataControl").getD
    ataProvider();
    ViewObject vo_SitSocProf = fc.findViewObject("EpisodiosMain");
    vo_SitSocProf.executeQuery();
    System.out.println(" All done. Ciao ");
    return "back";
    I just want to refresh data from database and still show the current record. This is always taking me to the first record in the iterator.
    The issue is: How to show the current record after the refresh? If the above
    code is not correct, or not the most adequate, please don't hesitate and tell
    me.
    Thanks.

    You can do this as follow:
    1) In your ApplicationModule (e.g ScottAM) define function:
    public void refreshView(){
    getMainViewObject().executeQuery();
    2) Expose this function to client
    3) In your manage bean define:
    public String commandButton_save_action() {
    String dc = "#{data.ScottAMDataControl.dataProvider}";
    FacesContext ctx = FacesContext.getCurrentInstance();
    ValueBinding vb = ctx.getApplication().createValueBinding(dc);
    ScottAM am = (ScottAM)vb.getValue(ctx);
    am.refreshView()
    return null;
    Note, that this solution will set you on the first row after invoke.

  • Set current record after dataset filter or sort

    How do you set the current record as the first record after a
    filter or sort? I have multiple dataset filters and sorts on the
    page and the current record always remains the first record after
    using them. Is there a way to force the current(viewed product,
    picture or whatever) to the first record after the Filter has been
    completed?

    thanks for your help,
    I was wanting the latter, "Or were you asking how to make the
    first row of the filtered data selected?" After the filter runs I
    want the current record set (to be displayed) to the first record
    in the filtered data.
    I am using the non-destructive filter method filter(), so I
    dont have to reload the data to bring the dataset back to original
    data, I can provide a reset button or set back to all records
    button.
    What I am using this for is a Home/Standard Plan Catalog. I
    want to filter our plans by square footage, number of bedrooms or
    baths, garage size, etc. so initalally it loads the complete
    catalog. the user selects the square footage range they want or any
    combination of specs and the filter works to narrow the dataset to
    the appropriate records. The filter works fine it returns the
    correct records from the dataset but after the filter I want the
    current (displayed) record to change after the filter, to the first
    record in the newly filtered data.
    Eventually we are going to have all 200 or so standard plans
    we have in the dataset and giving the user the ability to filter by
    these specs is the ultimate goal to help our customers make
    decisions. The page loads thumbnails of the exterior renderings for
    each standard plan. they click the thumbnail and it opens. With 200
    or so eventully I will have to page the results of the dataset or
    something else eventually, but I will cross that bridge when I get
    too it.
    here is my filter:
    >>>>>>>>
    function StartFilterTimerALL(){
    if (StartFilterTimerALL.timerID)
    clearTimeout(StartFilterTimerALL.timerID);
    StartFilterTimerALL.timerID = setTimeout(function() {
    StartFilterTimerALL.timerID = null; FilterDataALL(); }, 100);
    function FilterDataALL(){
    var SqFtVal = document.getElementById("sqft").value;
    if (!SqFtVal){
    dsStandards.filter(null);
    return;
    // for each value get the matching records sqftage
    if (SqFtVal == 1){
    var filterFunc = function(ds, row, rowNumber){
    var str = row["sqftage"];
    if (str < 1000)
    return row;
    return null;
    dsStandards.filter(filterFunc);
    if (SqFtVal == 2){
    var filterFunc2 = function(ds, row, rowNumber){
    var str = row["sqftage"];
    if ((str > 1000) && (str < 1501))
    return row;
    return null;
    dsStandards.filter(filterFunc2);
    if (SqFtVal == 3){
    var filterFunc3 = function(ds, row, rowNumber){
    var str = row["sqftage"];
    if ((str > 1500) && (str < 2001))
    return row;
    return null;
    dsStandards.filter(filterFunc3);
    if (SqFtVal == 4){
    var filterFunc4 = function(ds, row, rowNumber){
    var str = row["sqftage"];
    if ((str > 2000) && (str < 2501))
    return row;
    return null;
    dsStandards.filter(filterFunc4);
    if (SqFtVal == 5){
    var filterFunc5 = function(ds, row, rowNumber){
    var str = row["sqftage"];
    if ((str > 2500))
    return row;
    return null;
    dsStandards.filter(filterFunc5);
    thanks Jim

  • Moving to current record after execute query

    Hi all,
    I have a form where i can list all db jobs which can be start or stop.
    for more details, form is having columns like jobs, current db status, action(start/stop drop down)
    The user will view list of jobs in the screen and he straightly goes to a record and start (submit) the job using drop down for that record.
    once they start/stop the job, execute query will fire to show the current status of the job.
    Now going to my requirement,after execute query, I want to go to the record (job) which user has started the job .
    Currently the cursor will go to first record.
    Is there any oracle 10g AS property where i can get current record , put it in parameter and go to that record after execute query?
    Is there any other way?
    Regards,
    Leonard

    Hello,
    If you are sure the record after query will keep the same position, you can before, store the current record in a number variable with Get_Block_Property( CURRENT_RECORD) built-in, then after query use the Go_Record() with stored number variable in parameter.
    If you think that after re-query the record number can change, you have to loop through your records, then stop navidation while you find the corresponding key.
    Francois

  • Search page displaying all records after create

    Hi,
    I have created the search and the create page using the help of tutorial example. I have run into a 2 problems.
    1. After I create the a transaction and click on apply button it directs me to the search page and diaplays all the records in the table. Instead I was looking to display only the record that I created in the create page.
    I tried to change the parameter of the "pageContext.forwardImmediately" to "false" for retainAM, it is working fine, but at the same time it is not displaying the confirmation message that it ised to display.
    2. Is there a spellchecker that I could add to my page for 3 columns that are of "CLOB" type. Any advise.
    Thanks,
    Ali

    Hi Shiv,
    I have added this in the processformrequest method. I do not know how and where to add it in the processrequest methos. Can you please guide me through it. I am pasting my CO file.
    Thanks in advance for all your help.
    Ali
    package saf.oracle.apps.saf.jobperf.server.webui;
    import oracle.apps.fnd.common.VersionInfo;
    import oracle.apps.fnd.framework.webui.OAControllerImpl;
    import oracle.apps.fnd.framework.webui.OAPageContext;
    import oracle.apps.fnd.framework.webui.beans.OAWebBean;
    import oracle.apps.fnd.framework.OAApplicationModule;
    import oracle.apps.fnd.framework.webui.OADialogPage;
    import oracle.apps.fnd.framework.webui.TransactionUnitHelper;
    import oracle.jbo.domain.Number;
    import oracle.apps.fnd.common.MessageToken;
    import oracle.apps.fnd.framework.OAApplicationModule;
    import oracle.apps.fnd.framework.OAException;
    import oracle.apps.fnd.framework.OAViewObject;
    import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
    import com.sun.java.util.collections.HashMap;
    import oracle.bali.share.util.IntegerUtils;
    * Controller for ...
    public class ReviewCreateCO extends OAControllerImpl
    public static final String RCS_ID="$Header$";
    public static final boolean RCS_ID_RECORDED =
    VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
    * Layout and page setup logic for a region.
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void processRequest(OAPageContext pageContext, OAWebBean webBean)
    // Always call this first
    super.processRequest(pageContext, webBean);
    // If isBackNavigationFired = false, we are here after a valid navigation
    // (the user selected the Create Review button) and we should proceed
    // normally and initialize a new Review.
    if (!pageContext.isBackNavigationFired(false))
    // We indicate that we are starting the create transaction(this
    // is used to ensure correct Back button behavior).
    TransactionUnitHelper.startTransactionUnit(pageContext,"jobperfCreateTxn");
    // This test ensures that we don't try to create a new review if we
    // had a JVM failover, or if a recycled application module is activated
    // after passivation. If this things happen, BC4J will be able to find
    // the row you created so the user can resume work.
    if (!pageContext.isFormSubmission())
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    am.invokeMethod("createReview",null);
    // Initialize the ApplicationpropertiesVO for PPR.
    // am.invokeMethod("init");
    else
    if (!TransactionUnitHelper.isTransactionUnitInProgress(pageContext,"jobperfCreateTxn", true))
    // We got here through some use of the browser "Back" button, so we
    // want to display a stale data error and disallow access to the page.
    // if this were a real application, we would propably display a more
    // context-specific message telling the user she can't use the browser
    //"Back" button and the "Create" page. Instead, we wanted to illustrate
    // how to display the Applications standard NAVIGATION ERROR message.
    OADialogPage dialogPage = new OADialogPage(NAVIGATION_ERROR);
    pageContext.redirectToDialogPage(dialogPage);
    } // end processRequest()
    * Procedure to handle form submissions for form elements in
    * a region.
    * @param pageContext the current OA page context
    * @param webBean the web bean corresponding to the region
    public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
    {    //super.processFormRequest(pageContext, webBean);
    // Always call this first.
    super.processFormRequest(pageContext, webBean);
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    // Pressing the "Apply" button means the transaction should be validated
    // and committed.
    if (pageContext.getParameter("Apply") != null)
    // Generally in the tutorial application and the labs, we've illustrated
    // all BC4J interaction on the server (except for the AMs, of course). Here,
    // we're dealing with the VO directly so the comments about the reasons
    // why we're obtaining values from the VO and not the request make sense
    // in context.
    OAViewObject vo = (OAViewObject)am.findViewObject("jobperfVO1");
    // Note that we have to get this value from the VO because the EO will
    // assemble it during its validation cycle.
    // For performance reasons, we should generally be calling getEmployeeName()
    // on the EmployeeFullVORowImpl object, but we don't want to do this
    // on the client so we're illustrating the interface-appropriate call. If
    // we implemented this code in the AM where it belongs, we would use the
    // other approach.
    String employeeName = (String)vo.getCurrentRow().getAttribute("FullName");
    // We need to get a String so we can pass it to the MessageToken array below. Note
    // that we are getting this value from the VO (we could also get it from.
    // the Bean as shown in the Drilldwon to Details lab) because the item style is messageStyledText,
    // so the value isn't put on the request like a messaqeTextInput value is.
    String employeeNumber = (String)vo.getCurrentRow().getAttribute("EmployeeNumber");
    //ma String employeeNum = String.valueOf(employeeNumber.intValue());
    //ma Number employeeNumber = (Number)vo.getCurrentRow().getAttribute("EmployeeNumber");
    //ma String employeeNum = String.valueOf(employeeNumber.intValue());
    // Simply telling the transaction to commit will cause all the Entity Object validation
    // to fire.
    // Note: there's no reason for a developer to perform a rollback. This is handled by
    // the framework if errors are encountered.
    am.invokeMethod("apply");
    // Indicate that the Create transaction is complete.
    TransactionUnitHelper.endTransactionUnit(pageContext, "jobperfCreateTxn");
    // Assuming the "commit" succeeds, navigate back to the "Search" page with
    // the user's search criteria intact and display a "Confirmation" message
    // at the top of the page.
    MessageToken[] tokens = { new MessageToken("EMP_NAME", employeeName),
    new MessageToken("EMP_NUMBER", employeeNumber) };
    OAException confirmMessage = new OAException("PER", "LAC_FWK_TBX_T_EMP_CREATE_CONF", tokens,
    OAException.CONFIRMATION, null);
    // Per the UI guidelines, we want to add the confirmation message at the
    // top of the search/results page and we want the old search criteria and
    // results to display.
    pageContext.putDialogMessage(confirmMessage);
    HashMap params = new HashMap(1);
    // Replace the current employeeNumber request parameter value with "X"
    params.put("employeeNumber", "employeeNumber");
    // IntegerUtils is a handy utility
    params.put("employeeNumber",IntegerUtils.getInteger(5));
    pageContext.forwardImmediately(
    "OA.jsp?page=/saf/oracle/apps/saf/jobperf/webui/jobperfPG",
    null,
    OAWebBeanConstants.KEEP_MENU_CONTEXT,
    null,
    params, //null,
    true, // retain AM
    OAWebBeanConstants.ADD_BREAD_CRUMB_YES);
    else if (pageContext.getParameter("Cancel") != null)
    am.invokeMethod("rollbackReview");
    // Indicate that the Create transaction is complete.
    TransactionUnitHelper.endTransactionUnit(pageContext, "jobperfCreateTxn");
    pageContext.forwardImmediately("OA.jsp?page=/saf/oracle/apps/saf/jobperf/webui/jobperfPG",
    null,
    OAWebBeanConstants.KEEP_MENU_CONTEXT,
    null,
    null,
    false, // retain AM
    OAWebBeanConstants.ADD_BREAD_CRUMB_NO);
    } // end processFormRequest()
    }

  • Refresh table and display the records after insertion of data from back end

    Hi Experts,
    JDEV 11.1.2.1
    I have a useacase which needs data to be inserted from oracle back end procedure and displayed in a ADF Table Component, when a button is pressed.
    is this possible?..if yes , how?
    Is view object will automatically refreshed and fetches newly created(from back end) rows?
    thankz in advance
    PMS

    Hi user707,
    thankz for ur reply....
    i think after executing a procedure you want to call commit operation. better you can perform this.getDbtransaction().commit In Application Module;yes i want to commit transaction after executing back end procedure using preparedStatement.Procedure is for inserting data into same table , which used for creating VO and Read only ADF Table.Procedure is executed fine, but newly created records are not getting into ADF table.Once i did commit opeartion inside back end procedure, whole records are getting into ADF Table.
    Is there any way to get whole records without doing Commit operation inside Back end procedure?
    PMS

  • Getting Problem after Deleting a record from Record Store

    I am trying to create a simple application for mobile device. This application storing some records. I used RMS for this. These records i show in a list. But i tried to show list of records after deleting any record then list shows only prior records of deleted records n then shows exception as
    Recordsjavax.microedition.rms.InvalidRecordIDException
    The code i written as follows
    For storing data
    public void storeExercise(String EName, String Etime)
    try
    //System.out.println("AAAA");
    recordstore = RecordStore.openRecordStore("Test3",true);
    catch (Exception error)
    //System.out.println("EEEE");
    System.out.println("Exception"+error);
    try
    byte[] outputRecord;
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    DataOutputStream outputdataStream = new DataOutputStream(outputStream);
    outputdataStream.writeUTF(EName);
    outputdataStream.writeUTF(Etime);
    outputdataStream.flush();
    outputRecord = outputStream.toByteArray();
    recordstore.addRecord(outputRecord, 0, outputRecord.length);
    outputStream.reset();
    outputStream.close();
    outputdataStream.close();
    zlist.append(EName+Etime, null);
    display.setCurrent(zlist);
    catch (Exception error)
    System.out.println("Exception in writing Records"+error);
    for getting records
    public void getExercise(ZimList zlist)
    this.zlist = zlist;
    try
    //System.out.println("AAAA");
    recordstore = RecordStore.openRecordStore("Test3",true);
    //recordstore.closeRecordStore();
    catch (Exception error)
    //System.out.println("EEEE");
    System.out.println("Exception"+error);
    try
    //System.out.println("Hello");
    String Ename = null;
    String Etime = null;
    byte[] byteInputData = new byte[100];
    ByteArrayInputStream inputStream = new ByteArrayInputStream(byteInputData);
    DataInputStream inputDataStream = new DataInputStream(inputStream);
    for (int x=1; x<= recordstore.getNumRecords() ; x++ )
    System.out.println("Record Id ="+x);
    //if (x != InvalidRecordID)
    recordstore.getRecord(x, byteInputData, 0);
    Ename = inputDataStream.readUTF();
    Etime = inputDataStream.readUTF();
    inputStream.reset();
    Final = Ename + Etime;
    System.out.println("Insert" + Final);
    zlist.insert(x-1,Final,null);
    inputStream.close();
    inputDataStream.close();
    //recordstore.closeRecordStore();
    catch (Exception error)
    System.out.println("Exception in Reading Records"+error);
    /*if (recordstore.listRecordStores() != null)
    try
    recordstore.deleteRecordStore("My Record Store");
    catch (Exception error)
    System.out.println("Exception"+error);
    And for deleting records I write
    public void deleteExercise(int index)
    try
    //System.out.println("AAAA");
    recordstore = RecordStore.openRecordStore("Test3",true);
    //recordstore.closeRecordStore();
    catch (Exception error)
    //System.out.println("EEEE");
    System.out.println("Exception"+error);
    if (recordstore.listRecordStores() != null)
    try
    byte[] byteInputData = new byte[100];
    ByteArrayInputStream inputStream = new ByteArrayInputStream(byteInputData);
    DataInputStream inputDataStream = new DataInputStream(inputStream);
    for (int x=1; x<= recordstore.getNumRecords() ; x++ )
    recordstore.getRecord(x, byteInputData, 0);
    if (x == index)
    recordstore.deleteRecord(index);
    //x--;
    inputStream.reset();
    break;
    inputStream.close();
    inputDataStream.close();
    catch (Exception error)
    System.out.println("Exception in Deleting Records"+error);
    Please Help me bcz i am new in j2me development n having no experience

    Ok ...
    When you add records in you store, the J2ME implementation create an ID.
    In the database, there is a list like that with ID <--> ]byte[ ]
    You can get back a record with a this ID.
    When you delete a record, it deletes the row. Lets say you have stored 3 records and that the ID are 1, 2, 3 ... if you delete the second one, then you have still in the database IDs 1 and 3.
    That's why you have this exception : you are iterating with an ID 1, 2, 3, 4, 5 ... if one is delete there is no reorganization. (If you add an other record, it could be stored with ID 2).
    To read all the records, you should get a list of existing IDs. Take a look at the API. Here is a piece of code, that you work but I have not tested :
    RecordStore rs;
    RecordEnumeration re = rs.enumerateRecords(null, null, false);
    while (re.hasNextElement()) {
      String str = new String(re.nextRecord());
      System.out.println("Record: " + str);         
    } Hope it will help you.
    Regards

  • Filtering records with deletion flag in Query report

    Dear Friends,
    We are using ECC6.00 (EHP4) for one of our QM requirement, i have created a query in SQ01 with the tables QMEL,AUFK,AFKO,QMFE etc., to get the details of production order and notification.
    The report will list out the production scheduler wise, order wise, defect wise quantity with the notification number also in the display.
    For notifications which are created wrongly, the users set deletion flag. The same i.e., notifications with deletion flag should not appear in the report and hence i have called the field and filtered the value in the output (i.e., field value not equal to X where X is for deletion flag set records).
    Everything works fine upto this, but when users (to carry out analysis) send the data to the spread sheet, the filter values are removed and all records are populated in the excel sheet (even records with deletion flag).
    To select and display only records without deletion flag, i want to introduce coding in the query. Kindly tell me whether this is possible, if so where and what code should be written to meet my requirement.
    The records with the deletion flag (notifications) should be eliminated from the selection and display.
    Experts help required.
    Regards,
    M.M

    Dear Raymond Giuseppi,
    Thank you for your reply. The code syntax had been corrected based on your information. Unfortunately the code doesn't filter the records. On further investigation , it was observed that the field KZLOESCH doesn't get updated and hence a field had been created in the infoset wherein the following  coding is written
    clear : w_dlfl.
    data : w_inact type char1.
    select single inact into w_inact from jest
    where objnr = qmel-objnr
       and stat = 'I0076'
       and inact ne 'X'.
    if sy-subrc = 0 .
      w_dlfl = 'X'.
    else.
      w_dlfl = ''.
    endif.
    The field name is W_dlfl.
    In the above condition how and where should i include the code given by you. Since the field KZLOESCH is not updated how should we get the data from the field w_dlfl be exempted from selection?
    Kindly provide solution.
    Regards,
    M.M

  • How to return to record after updating (ie add a url with variable)

    I want to put a link in to return to the page displaying the record after updating.  I followed the Dreamweaver insrtuctio an added this after the page url in the update behaviours:
    ?recordID=<?php echo $row_recordsetName['fieldName']; ?>
    However the page does not load but gives this error:
    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\UwAmp\www\testmypms\update_spec_rx.php on line 77
    Here's the page code:
    <?php require_once('Connections/testmypms.php'); ?>
    <?php
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
      $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;
      switch ($theType) {
        case "text":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;   
        case "long":
        case "int":
          $theValue = ($theValue != "") ? intval($theValue) : "NULL";
          break;
        case "double":
          $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
          break;
        case "date":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;
        case "defined":
          $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
          break;
      return $theValue;
    $editFormAction = $_SERVER['PHP_SELF'];
    if (isset($_SERVER['QUERY_STRING'])) {
      $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
    if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "updateSpecRx")) {
      $updateSQL = sprintf("UPDATE spec_rx SET spec_rx_date=%s, FK_user_id=%s, spec_rx_rsph=%s, spec_rx_rcyl=%s, spec_rx_raxis=%s, spec_rx_rhprism=%s, spec_rx_rhprismbase=%s, spec_rx_rvprism=%s, spec_rx_rvprismbase=%s, spec_rx_rnadd=%s, spec_rx_rnhprism=%s, spec_rx_rnhprismbase=%s, spec_rx_rnvprism=%s, spec_rx_rnvprismbase=%s, spec_rx_rintadd=%s, spec_rx_rinthprism=%s, spec_rx_rinthprismbase=%s, spec_rx_rintvprism=%s, spec_rx_rintvprismbase=%s, spec_rx_lsph=%s, spec_rx_lcyl=%s, spec_rx_laxis=%s, spec_rx_lhprism=%s, spec_rx_lhprismbase=%s, spec_rx_lvprism=%s, spec_rx_lvprismbase=%s, spec_rx_lintadd=%s, spec_rx_linthprism=%s, spec_rx_linthprismbase=%s, spec_rx_lintvprism=%s, spec_rx_lintvprismbase=%s, spec_rx_lnadd=%s, spec_rx_lnhprism=%s, spec_rx_lnhprismbase=%s, spec_rx_lnvprism=%s, spec_rx_lnvprismbase=%s, ext_rx=%s WHERE spec_rx_id=%s",
                           GetSQLValueString($_POST['rHprism'], "date"),
                           GetSQLValueString($_POST['userID'], "int"),
                           GetSQLValueString($_POST['rsph'], "double"),
                           GetSQLValueString($_POST['rcyl'], "double"),
                           GetSQLValueString($_POST['raxis'], "double"),
                           GetSQLValueString($_POST['rHprism'], "double"),
                           GetSQLValueString($_POST['rHprismbase'], "text"),
                           GetSQLValueString($_POST['rVprism'], "double"),
                           GetSQLValueString($_POST['rVprismbase'], "text"),
                           GetSQLValueString($_POST['rNradd'], "double"),
                           GetSQLValueString($_POST['rNrHprism'], "double"),
                           GetSQLValueString($_POST['rNrHprismbase'], "text"),
                           GetSQLValueString($_POST['rNrVprism'], "double"),
                           GetSQLValueString($_POST['rNrVprismbase'], "text"),
                           GetSQLValueString($_POST['rIntadd'], "double"),
                           GetSQLValueString($_POST['rIntHprism'], "double"),
                           GetSQLValueString($_POST['rIntHprismbase'], "text"),
                           GetSQLValueString($_POST['rIntVprism'], "double"),
                           GetSQLValueString($_POST['rIntVprismbase'], "text"),
                           GetSQLValueString($_POST['lsph'], "double"),
                           GetSQLValueString($_POST['lcyl'], "double"),
                           GetSQLValueString($_POST['laxis'], "double"),
                           GetSQLValueString($_POST['lHprism'], "double"),
                           GetSQLValueString($_POST['lHprismbase'], "text"),
                           GetSQLValueString($_POST['lVprism'], "double"),
                           GetSQLValueString($_POST['lVprismbase'], "text"),
                           GetSQLValueString($_POST['lIntadd'], "double"),
                           GetSQLValueString($_POST['lIntHprism'], "double"),
                           GetSQLValueString($_POST['lIntHprismbase'], "text"),
                           GetSQLValueString($_POST['lIntVprism'], "double"),
                           GetSQLValueString($_POST['lIntVprismbase'], "text"),
                           GetSQLValueString($_POST['lNradd'], "double"),
                           GetSQLValueString($_POST['lNrHprism'], "double"),
                           GetSQLValueString($_POST['lNrHprismbase'], "text"),
                           GetSQLValueString($_POST['lNrVprism'], "double"),
                           GetSQLValueString($_POST['rNrVprismbase'], "text"),
                           GetSQLValueString(isset($_POST['extRx']) ? "true" : "", "defined","1","0"),
                           GetSQLValueString($_POST['SpecRxID'], "int"));
      mysql_select_db($database_testmypms, $testmypms);
      $Result1 = mysql_query($updateSQL, $testmypms) or die(mysql_error());
      $updateGoTo = "spec_rx4.php";
      if (isset($_SERVER['QUERY_STRING'])) {
        $updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
        $updateGoTo .= $_SERVER['QUERY_STRING'];
      header(sprintf("Location: %s", $updateGoTo));
    /*   date_default_timezone_set('Europe/London');
    $date = strtotime($_POST['specRxDate']);
         $_POST['specRxDate'] = date("Y-m-d",$date); */
    $currentPage = $_SERVER["PHP_SELF"];
    $maxRows_spec_rx = 1;
    $pageNum_spec_rx = 0;
    if (isset($_GET['pageNum_spec_rx'])) {
      $pageNum_spec_rx = $_GET['pageNum_spec_rx'];
    $startRow_spec_rx = $pageNum_spec_rx * $maxRows_spec_rx;
    $colname_spec_rx = "1";
    if (isset($_GET['spec_RxID'])) {
      $colname_spec_rx = (get_magic_quotes_gpc()) ? $_GET['spec_RxID'] : addslashes($_GET['spec_RxID']);
    mysql_select_db($database_testmypms, $testmypms);
    $query_spec_rx = sprintf("SELECT demographics.px_id, demographics.FK_title_id, demographics.firstname, demographics.surname, title.title, title.title_id, spec_rx.spec_rx_id, spec_rx.FK_px_id, DATE_FORMAT(spec_rx.spec_rx_date, '%%d-%%m-%%Y') as formatted_rx_date, spec_rx.FK_user_id, spec_rx.spec_rx_rsph, spec_rx.spec_rx_rcyl, spec_rx.spec_rx_raxis, spec_rx.spec_rx_rhprism, spec_rx.spec_rx_rhprismbase, spec_rx.spec_rx_rvprism, spec_rx.spec_rx_rvprismbase, spec_rx.spec_rx_rnadd, spec_rx.spec_rx_rnhprism, spec_rx.spec_rx_rnhprismbase, spec_rx.spec_rx_rnvprism, spec_rx.spec_rx_rnvprismbase, spec_rx.spec_rx_rintadd, spec_rx.spec_rx_rinthprism, spec_rx.spec_rx_rinthprismbase, spec_rx.spec_rx_rintvprism, spec_rx.spec_rx_rintvprismbase, spec_rx.spec_rx_lsph, spec_rx.spec_rx_lcyl, spec_rx.spec_rx_laxis, spec_rx.spec_rx_lhprism, spec_rx.spec_rx_lhprismbase, spec_rx.spec_rx_lvprism, spec_rx.spec_rx_lvprismbase, spec_rx.spec_rx_lintadd, spec_rx.spec_rx_linthprism, spec_rx.spec_rx_linthprismbase, spec_rx.spec_rx_lintvprism, spec_rx.spec_rx_lintvprismbase, spec_rx.spec_rx_lnadd, spec_rx.spec_rx_lnhprism, spec_rx.spec_rx_lnhprismbase, spec_rx.spec_rx_lnvprism, spec_rx.spec_rx_lnvprismbase, spec_rx.ext_rx FROM spec_rx, demographics, title WHERE spec_rx.spec_rx_id = %s AND spec_rx.FK_px_id = demographics.px_id AND demographics.FK_title_id = title.title_id", $colname_spec_rx);
    $query_limit_spec_rx = sprintf("%s LIMIT %d, %d", $query_spec_rx, $startRow_spec_rx, $maxRows_spec_rx);
    $spec_rx = mysql_query($query_limit_spec_rx, $testmypms) or die(mysql_error());
    $row_spec_rx = mysql_fetch_assoc($spec_rx);
    if (isset($_GET['totalRows_spec_rx'])) {
      $totalRows_spec_rx = $_GET['totalRows_spec_rx'];
    } else {
      $all_spec_rx = mysql_query($query_spec_rx);
      $totalRows_spec_rx = mysql_num_rows($all_spec_rx);
    $totalPages_spec_rx = ceil($totalRows_spec_rx/$maxRows_spec_rx)-1;
    mysql_select_db($database_testmypms, $testmypms);
    $query_users = "SELECT users.user_id, users.username FROM users";
    $users = mysql_query($query_users, $testmypms) or die(mysql_error());
    $row_users = mysql_fetch_assoc($users);
    $totalRows_users = mysql_num_rows($users);
    $queryString_spec_rx = "";
    if (!empty($_SERVER['QUERY_STRING'])) {
      $params = explode("&", $_SERVER['QUERY_STRING']);
      $newParams = array();
      foreach ($params as $param) {
        if (stristr($param, "pageNum_spec_rx") == false &&
            stristr($param, "totalRows_spec_rx") == false) {
          array_push($newParams, $param);
      if (count($newParams) != 0) {
        $queryString_spec_rx = "&" . htmlentities(implode("&", $newParams));
    $queryString_spec_rx = sprintf("&totalRows_spec_rx=%d%s", $totalRows_spec_rx, $queryString_spec_rx);
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Amend Spec Rx</title>
    </head>
    <body>
    <p>Amend Spec Rx</p>
    <p><?php echo $row_spec_rx['px_id']; ?></p>
    <p><?php echo $row_spec_rx['title']; ?><?php echo $row_spec_rx['firstname']; ?><?php echo $row_spec_rx['surname']; ?> </p>
    <form action="<?php echo $editFormAction; ?>" method="POST" name="updateSpecRx" id="updateSpecRx">
      <table border="1" cellpadding="5" cellspacing="1">
        <tr>
          <td> </td>
          <td>
         <td><?php date_default_timezone_set('Europe/London'); ?>
        <input name="specRxDate" type="text" id="specRxDate" value="<?php echo $row_spec_rx['formatted_rx_date']; ?>" size="10" maxlength="10" <?php echo 'value="'.date("d-m-Y").'"'; ?>></td>
          <td><input name="SpecRxID" type="text" id="SpecRxID" value="<?php echo $row_spec_rx['spec_rx_id']; ?>" size="2" maxlength="2"></td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
        </tr>
        <tr>
          <td> </td>
          <td>Sph</td>
          <td>Cyl</td>
          <td>Axis</td>
          <td>HPrism</td>
          <td>HPrismBase</td>
          <td>VPrism</td>
          <td>VPrismBase</td>
          <td>NrAdd</td>
          <td>NrHPrism </td>
          <td>NrHPrismBase</td>
          <td>NrVPrism</td>
          <td>NrVPrismBase</td>
          <td>IntAdd</td>
          <td>IntHPrism</td>
          <td>IntHPrismBase</td>
          <td>IntVPrism</td>
          <td>IntVPrismBase</td>
        </tr>
        <tr>
          <td>R</td>
          <td><input name="rsph" type="text" id="rsph" value="<?php echo $row_spec_rx['spec_rx_rsph']; ?>" size="6" maxlength="6">
          </td>
          <td><input name="rcyl" type="text" id="rcyl" value="<?php echo $row_spec_rx['spec_rx_rcyl']; ?>" size="6" maxlength="6">
          </td>
          <td><input name="raxis" type="text" id="raxis" value="<?php echo $row_spec_rx['spec_rx_raxis']; ?>" size="5" maxlength="5"></td>
          <td><input name="rHprism" type="text" id="rHprism" value="<?php echo $row_spec_rx['spec_rx_rhprism']; ?>" size="5" maxlength="5"></td>
          <td>        <select name="rHprismbase" id="rHprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_rhprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="OUT" <?php if (!(strcmp("OUT", $row_spec_rx['spec_rx_rhprismbase']))) {echo "SELECTED";} ?>>OUT</option>
            <option value="IN" <?php if (!(strcmp("IN", $row_spec_rx['spec_rx_rhprismbase']))) {echo "SELECTED";} ?>>IN</option>
            </select></td>
          <td><input name="rVprism" type="text" id="rVprism" value="<?php echo $row_spec_rx['spec_rx_rvprism']; ?>" size="5" maxlength="5">
          </td>
          <td><select name="rVprismbase" id="rVprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_rnvprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="UP" <?php if (!(strcmp("UP", $row_spec_rx['spec_rx_rnvprismbase']))) {echo "SELECTED";} ?>>UP</option>
            <option value="DN" <?php if (!(strcmp("DN", $row_spec_rx['spec_rx_rnvprismbase']))) {echo "SELECTED";} ?>>DN</option>
          </select></td>
          <td><input name="rNradd" type="text" id="rNradd" value="<?php echo $row_spec_rx['spec_rx_rnadd']; ?>" size="6" maxlength="6"></td>
          <td><input name="rNrHprism" type="text" id="rNrHprism" value="<?php echo $row_spec_rx['spec_rx_rnhprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="rNrHprismbase" id="rNrHprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_rnhprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="OUT" <?php if (!(strcmp("OUT", $row_spec_rx['spec_rx_rnhprismbase']))) {echo "SELECTED";} ?>>OUT</option>
            <option value="IN" <?php if (!(strcmp("IN", $row_spec_rx['spec_rx_rnhprismbase']))) {echo "SELECTED";} ?>>IN</option>
          </select></td>
          <td><input name="rNrVprism" type="text" id="rNrVprism" value="<?php echo $row_spec_rx['spec_rx_rnvprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="rNrVprismbase" id="rNrVprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_rnvprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="UP" <?php if (!(strcmp("UP", $row_spec_rx['spec_rx_rnvprismbase']))) {echo "SELECTED";} ?>>UP</option>
            <option value="DN" <?php if (!(strcmp("DN", $row_spec_rx['spec_rx_rnvprismbase']))) {echo "SELECTED";} ?>>DN</option>
          </select></td>
          <td><input name="rIntadd" type="text" id="rIntadd" value="<?php echo $row_spec_rx['spec_rx_rintadd']; ?>" size="6" maxlength="6"></td>
          <td><input name="rIntHprism" type="text" id="rIntHprism" value="<?php echo $row_spec_rx['spec_rx_rinthprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="rIntHprismbase" id="rIntHprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_rinthprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="OUT" <?php if (!(strcmp("OUT", $row_spec_rx['spec_rx_rinthprismbase']))) {echo "SELECTED";} ?>>OUT</option>
            <option value="IN" <?php if (!(strcmp("IN", $row_spec_rx['spec_rx_rinthprismbase']))) {echo "SELECTED";} ?>>IN</option>
          </select></td>
          <td><input name="rIntVprism" type="text" id="rIntVprism" value="<?php echo $row_spec_rx['spec_rx_rintvprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="rIntVprismbase" id="rIntVprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_rintvprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="UP" <?php if (!(strcmp("UP", $row_spec_rx['spec_rx_rintvprismbase']))) {echo "SELECTED";} ?>>UP</option>
            <option value="DN" <?php if (!(strcmp("DN", $row_spec_rx['spec_rx_rintvprismbase']))) {echo "SELECTED";} ?>>DN</option>
          </select></td>
        </tr>
        <tr>
          <td>L</td>
          <td><input name="lsph" type="text" id="lsph" value="<?php echo $row_spec_rx['spec_rx_lsph']; ?>" size="6" maxlength="6">
          </td>
          <td><input name="lcyl" type="text" id="lcyl" value="<?php echo $row_spec_rx['spec_rx_lcyl']; ?>" size="6" maxlength="6">
          </td>
          <td><input name="laxis" type="text" id="laxis" value="<?php echo $row_spec_rx['spec_rx_laxis']; ?>" size="5" maxlength="5"></td>
          <td><input name="lHprism" type="text" id="lHprism" value="<?php echo $row_spec_rx['spec_rx_lhprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="lHprismbase" id="lHprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_lhprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="OUT" <?php if (!(strcmp("OUT", $row_spec_rx['spec_rx_lhprismbase']))) {echo "SELECTED";} ?>>OUT</option>
            <option value="IN" <?php if (!(strcmp("IN", $row_spec_rx['spec_rx_lhprismbase']))) {echo "SELECTED";} ?>>IN</option>
          </select></td>
          <td><input name="lVprism" type="text" id="lVprism" value="<?php echo $row_spec_rx['spec_rx_lvprism']; ?>" size="5" maxlength="5">
          </td>
          <td><select name="lVprismbase" id="lVprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_rvprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="UP" <?php if (!(strcmp("UP", $row_spec_rx['spec_rx_rvprismbase']))) {echo "SELECTED";} ?>>UP</option>
            <option value="DN" <?php if (!(strcmp("DN", $row_spec_rx['spec_rx_rvprismbase']))) {echo "SELECTED";} ?>>DN</option>
          </select></td>
          <td><input name="lNradd" type="text" id="lNradd" value="<?php echo $row_spec_rx['spec_rx_lnadd']; ?>" size="6" maxlength="6"></td>
          <td><input name="lNrHprism" type="text" id="lNrHprism" value="<?php echo $row_spec_rx['spec_rx_lnhprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="lNrHprismbase" id="lNrHprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_lnhprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="OUT" <?php if (!(strcmp("OUT", $row_spec_rx['spec_rx_lnhprismbase']))) {echo "SELECTED";} ?>>OUT</option>
            <option value="IN" <?php if (!(strcmp("IN", $row_spec_rx['spec_rx_lnhprismbase']))) {echo "SELECTED";} ?>>IN</option>
          </select></td>
          <td><input name="lNrVprism" type="text" id="lNrVprism" value="<?php echo $row_spec_rx['spec_rx_lnvprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="rNrVprismbase" id="rNrVprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_lnvprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="UP" <?php if (!(strcmp("UP", $row_spec_rx['spec_rx_lnvprismbase']))) {echo "SELECTED";} ?>>UP</option>
            <option value="DN" <?php if (!(strcmp("DN", $row_spec_rx['spec_rx_lnvprismbase']))) {echo "SELECTED";} ?>>DN</option>
          </select></td>
          <td><input name="lIntadd" type="text" id="lIntadd" value="<?php echo $row_spec_rx['spec_rx_lintadd']; ?>" size="6" maxlength="6"></td>
          <td><input name="lIntHprism" type="text" id="lIntHprism" value="<?php echo $row_spec_rx['spec_rx_linthprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="lIntHprismbase" id="lIntHprismbase">
            <option value=""> </option>
            <option value="OUT">OUT</option>
            <option value="IN">IN</option>
          </select></td>
          <td><input name="lIntVprism" type="text" id="lIntVprism" value="<?php echo $row_spec_rx['spec_rx_lintvprism']; ?>" size="5" maxlength="5"></td>
          <td><select name="lIntVprismbase" id="lIntVprismbase">
            <option value="" <?php if (!(strcmp("", $row_spec_rx['spec_rx_lintvprismbase']))) {echo "SELECTED";} ?>> </option>
            <option value="UP" <?php if (!(strcmp("UP", $row_spec_rx['spec_rx_lintvprismbase']))) {echo "SELECTED";} ?>>UP</option>
            <option value="DN" <?php if (!(strcmp("DN", $row_spec_rx['spec_rx_lintvprismbase']))) {echo "SELECTED";} ?>>DN</option>
          </select></td>
        </tr>
        <tr>
          <td> </td>
          <td><input name="pxID" type="text" id="pxID" value="<?php echo $row_spec_rx['px_id']; ?>" size="3" maxlength="3"></td>
          <td colspan="4"><input name="Update" type="submit" id="Update" value="Update"></td>
          <td><select name="userID" id="userID">
            <?php
    do { 
    ?>
            <option value="<?php echo $row_users['user_id']?>"><?php echo $row_users['username']?></option>
            <?php
    } while ($row_users = mysql_fetch_assoc($users));
      $rows = mysql_num_rows($users);
      if($rows > 0) {
          mysql_data_seek($users, 0);
          $row_users = mysql_fetch_assoc($users);
    ?>
          </select></td>
          <td>External
          <input <?php if (!(strcmp($row_spec_rx['ext_rx'],1))) {echo "checked";} ?> name="extRx" type="checkbox" id="extRx" value="checkbox"></td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
          <td> </td>
        </tr>
      </table>
        <input type="hidden" name="MM_update" value="updateSpecRx">
    </form>
    <p> </p>
    </body>
    </html>
    <?php
    mysql_free_result($spec_rx);
    mysql_free_result($users);
    ?>
    Thanks for any help

    This post solves it:
    How do I pass URL parameter after Update record?

  • Current Record Pointer after ResultSet.DeleteRow()

    I have a question about the position of the Current Record Pointer in a ResultSet after a call to DeleteRow(). I have three records in the ResultSet, and call DeleteRow() while positioned on the first record. If I call moveToCurrentRow() or do not call any routine. It appears I am still pointed at the deleted first row. I can call getString() and get the data from the first row, which has been deleted. If I call next(), I find myself positioned on the third row, not the second row. How do I delete the first row and position myself on the NEW first row?

    Here it is again, this time with some formating.
        private void DeleteButtonActionPerformed(java.awt.event.ActionEvent evt) {
            try {
                int result = JOptionPane.showOptionDialog( PeriodicalMaint.this, "Delete Current Periodical?",
                                                          "Warning", JOptionPane.OK_CANCEL_OPTION,
                                                          JOptionPane.WARNING_MESSAGE, null, null, null);
                if ( result == JOptionPane.OK_OPTION ) {
                    String Periodical = PeriodicalField.getText();
                    deleteAllIssues( Periodical );
                    periodicalsRS.deleteRow();
                    JOptionPane.showMessageDialog(PeriodicalMaint.this,
                                                  "Periodical " + Periodical + " has been Deleted!",
                                                  "Periodical Deleted", JOptionPane.PLAIN_MESSAGE);
                    clearAllFields();
                    disableAllFields();
                    boolean rsEmpty = false;
                    periodicalsRS.moveToCurrentRow();
                    if ( periodicalsRS.isAfterLast() && !periodicalsRS.previous() ) {
                        rsEmpty = true;
                    if ( !rsEmpty ) {
                        populateAllFields();
                        addMode = false;
                        if ( Periodicals.UpdatePriv ) {
                            enableAllFields();
                        IssuesTable.setEditable( false );
                        NameField.requestFocus();
            catch (SQLException sqle) {
                JOptionPane.showMessageDialog( PeriodicalMaint.this, "SQLException: " + sqle.getMessage(),
                                               "Delete Error", JOptionPane.OK_OPTION );
        }

  • Displaying ALV agan with deleted record not shown....

    Hello Gurus,
    I am working on ALV. The ALV deipalys data froma custom table. Now I have created a Button in application toollbar saying 'Delete'. I have wrirren logic  in 'ALV_UC (i_callback_user_command) so that when user pushes 'Delete' button, the data record gets deleted from custom table.
    call function 'REUSE_ALV_GRID_DISPLAY'
           exporting
                i_callback_program       = lv_progname
                i_callback_pf_status_set = 'ALV_STAT'
                i_callback_user_command  = 'ALV_UC'
    *            i_callback_top_of_page   = 'TOP_OF_PAGE'
                is_layout                = is_layout
                it_fieldcat              = field_lst
    *            is_variant               = g_variant
                it_event_exit            = gt_event_exit
                i_save                   = 'A'
                it_sort                  = it_sort
                i_screen_start_column    = i_start_col
                i_screen_start_line      = i_start_ln
                i_screen_end_column      = i_end_col
                i_screen_end_line        = i_end_ln
           tables
                t_outtab                 = p_outtab
           exceptions
                program_error            = 1
                others                   = 2.
    Now, I want the ALV to be dsiplayed with that deleted record not shown. How can I do this ? Is there a Refresh function or something  ?
    Thanks.
    Regards,
    Rajesh.

    Hello Rajesh
    A quick view into the documentation of IMPORTING parameter I_CALLBACK_USER_COMMAND would have answered your question:
    Within the USER_COMMAND callback routine set
    REFRESH = 'X'.  " That's all
    EXIT routine for command handling
       Description
         Passing an EXIT routine indicates to the ALV that the application wants
         to respond to certain function codes.
         Generally, these are function codes that are unknown to the ALV (that
         is, are not standard ALV functions) and that were defined and set by a
         user status.
         See also the documentation on parameter  I_CALLBACK_PF_STATUS_SET.
         The interface of the form routine specified must be defined as follows:
                 FORM user_command  USING r_ucomm LIKE sy-ucomm
                                          rs_selfield TYPE slis_selfield.
         Parameter R_UCOMM contains the function code triggered.
         Structure RS_SELFIELD contains the following information:
         o   tabname  : Name of the internal output table
         o   tabindex : Index of the internal output table
         o   fieldname: Field name
         o   endsum   : Cursor is located on the totals line
         o   sumindex : If >0, the cursor is located on a subtotals line
         o   value    : Value of the field on the list
         o   refresh  : (Exporting) List should be set up again
         o   col_stable:(Exporting) Keep column position when list is set up
             again
         o   row_stable:(Exporting) Keep row position when list is set up again
         o   exit      :(Exporting) Exit list (and ALV)
         o   before_action: Call before standard action execution
         o   after_action : Call after standard action execution, before list
             setup
         o   ignore_multi : Internal use
         o   sel_tab_field: Internal use
         The EXIT routine is called whenever a function unknown to the ALV is
         triggered or if the routine call before/after the execution of a
         standard function code has been defined by interface parameter
         IT_EVENT_EXIT.
         See also the documentation on parameter IT_EVENT_EXIT.
         The function code and the current cursor position are then passed on to
         the calling program through the EXIT routine.
         If the user has selected multiple rows by selecting checkboxes, the
         output table field designated as the checkbox contains the current state
         of the checkbox in the list.
    Regards
      Uwe

  • Freezing on Recorded List after deleting watch program

    Any body else having issues with user unable to exit the recorded list of the dvr after deleting a program.  Just started to occur when my DVR men updated and Comcast started automatically displaying "Tip of the Day" (which occurs more than once a day) and the helphints for Voice on demand. After Deleting a watch program, I can not exit the recorded list. I have to Hit Infinity again, to get to the guide and then exit the guide.

    Maybe part of your problem: http://customer.xfinity.com/help-and-support/cable-tv/x1-voice-guidance/

  • After Delete in Linked list...unable to display the linked list

    Hi...i know that there is an implementation of the class Linked Link but i am required to show how the linked list works in this case for my project...please help...
    Yes..I tried to delete some objects in a linked list but after that i am not able to display the objects that were already in the linked list properly and instead it throws an NullPointerException.
    Below shows the relevant coding for deleting and listing the linked list...
    public Node remove(Comparator comparer) throws Exception {
         boolean found = false;
         Node prevnode = head;          //the node before the nextnode
         Node deletedNode = null;     //node deleted...
         //get next node and apply removal criteria
         for(Node nextnode = head.getNextNode(); nextnode != null; nextnode = nextnode.getNextNode()) {
              if(comparer.equals(nextnode)) {
                   found = true;
                   //remove the next node from the list and return it
                   prevnode.setNextNode(nextnode.getNextNode());
                   nextnode.setNextNode(null);
                   deletedNode = nextnode;
                   count = count - 1;
                   break;
         if (found) return deletedNode;
         else throw new Exception ("Not found !!!");
    public Object[] list() {
         //code to gather information into object array
         Node node;
         Object[] nodes = new Object[count];
         node = head.getNextNode();
         for (int i=0; i<count; i++) {
              nodes[i] = node.getInformation();  // this is the line that cause runtime error after deleting...but before deleting, it works without problem.
              node = node.getNextNode();
         return nodes;
    }Please help me in figuring out what went wrong with that line...so far i really can't see any problem with it but it still throws a NullPointerException
    Thanks

    OK -- I've had a cup and my systems are coming back on line...
    The problem looks to be the way that you are handling the pointer to the previous node in your deletion code. Essentially, that is not getting incremented along with the nextNode -- it is always pointing to head. So when you find the node to delete then the line
       prevnode.setNextNode(nextnode.getNextNode());will set the nextNode for head to be null in certain situations (like if you are removing the tail, for instance).
    Then when you try to print out the list, the first call you make is
    node = head.getNextNode();Which has been set to null, so you get an NPE when you try to access the information.
    Nothing like my favorite alkaloid to help things along on a Monday morning...
    - N

  • How to refresh after delete the records in ALV report ?

    Hi Friends,
    How to refresh after delete the records in ALV report.
    I am deleting records in ALV report .
    After successful delete the screen should refresh.
    u201C Deleted records should not appear in the screen u201C.
    Please guide me.
    Regards,
    Subash

    Hi subhash,
    FORM user_command USING r_ucomm LIKE sy-ucomm      rs_selfield TYPE slis_selfield.
    WHEN 'BACK'.
    Refresh the internal table from the ALV grid
          PERFORM update_alv_tab.
    ENDFORM.                    "user_command
    FORM update_alv_tab .
      DATA :  e_grid TYPE REF TO cl_gui_alv_grid.
      CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
        IMPORTING
          e_grid = e_grid.
      CALL METHOD e_grid->check_changed_data.
      "update_alv_tab
      CALL METHOD e_grid->refresh_table_display.
    ENDFORM.                    " UPDATE_ALV_TAB
    Then see in Debug mode is it updating or not..
    Please confirm .
    And please paste the code if you can.
    Regards.

  • Display current month records only

    Hi Experts,
    I have the following requirement.
    Report should display current month records only.
    For example If the report is run on 20090324, It should display records from 20090301 to 20090324.
    That means,  report may run on any date of that month, It should display from 01 (of that month) to current date.
    I have a select statement saying
      SELECT * FROM likp
      WHERE wadat_ist BETWEEN month_start_date AND sy-datum          
        AND vkorg IN s_vkorg
        AND vkbur IN s_vkbur
        AND kunnr IN s_kunnr.
    How to calculate date for month_start_date, so that it can display only current month records.
    Thanks in advance
    Rohan

    Hi Kunta, Suhas, Nandi,
    Thank you for your quick reply, I really appreciate it.
    for this current month records, I need to display a check box saying
    Open orders  and shipments with the current month.
    But where as Selection text is accepting 32 characters only. Is there any possibility to overcome this?
    Thanks in advance
    Rohan

Maybe you are looking for

  • If I delete docs from iCloud off of iPhone 4s, will it delete it from the iCloud in general? aka will I still be able to pull up from my MAC?

    If I delete specific documents and data from my phone, using my phone b/c its staying icloud storage is full & my phone is freezing up....will it actually delete the docs from icloud so that when I use my MAC, they will be gone as well?  Not sure if

  • SAP office messages can't be opened in UWL

    Hi, I have installed and tested SONIC (SAP Office Notification Connector). I have a SAP_ALL profile. When I receive a SAP office message, I can either open it in the SBWP or in the UWL notification tab (all my messages show up and I can display its c

  • Real Time Collaboration on EP 6

    Hi, I have done all the required configuration steps for collaboration, but instant messaging through the CLP is not working. I just checked the installation guide which says collaboration requires a special license. I was wondering if this could be

  • LSMW for FB50

    Hi experts, I am a new abaper.. I m doing LSMW for FB50, using recording method ( becoz i m not able to find few fields like HKONT( G/L account), BUDAT, BLDAT... fields in object: 0010 for direct input method) is ther any other direct i/p method obje

  • BPMon Setup: Check user for data collection

    Dear experts, I'm trying to configure Business Process Monitoring in our Solution Manager system and I'm stuck in the step "Check User for Data Collection". See screenshot. I mark this row and click on "Execute Selected". A background job is schedule