How to delete and add rows in a table control

Hi
  how to delete rows and add new rows in a tbale control
Sathya

Hi,
In the PAI write this code
PROCESS AFTER INPUT.
LOOP AT itab.
ENDLOOP.
MODULE MODIFY_TC.
MODULE MODIFY_TC.
To add a row
  DESCRIBE TABLE itab LINES tc_tab-lines.
  tc_tab-lines = tc_tab-lines + 1.
To delete a row if check box is ticked
   DELETE itab WHERE check = c_x.
To delete a row depending on tabix
   DELETE itab index l_tabix.
ENDMODULE.
Make sure that you put a if condition in the above module inorder to ensure addition or deletion of a row.
Best regards,
Prashant

Similar Messages

  • How to delete and refresh the contents of table control..

    how to delete particular row in table control .consider we r having three rows i wish to delete the third row.while on debugging the third row gets deleted successfully.but that is displayed in table control.then how to refresh the table control...

    hi,
    try like this....
    USER_COMMAND of PAI
    MODULE user_command_9000 INPUT.
      CASE ok_code.
        WHEN 'BACK' OR 'UP' OR 'CANCEL'.
          LEAVE PROGRAM.
        WHEN 'DEL'.
          GET CURSOR LINE lin_no.
          f1 = 1.
       ENDCASE.
    ENDMODULE.                 " USER_COMMAND_9000  INPUT
    and in Module in which u fetching data in PBO, write like
    MODULE get_data OUTPUT.
      IF f1 <> 1.
        SELECT kunnr name1
        INTO CORRESPONDING FIELDS OF TABLE mytab
        FROM kna1.
      ENDIF.
      IF f1 = 1.
        DELETE mytab INDEX lin_no.
        FREE lin_no.
        FREE f1.
      ENDIF.
    ENDMODULE.                 " get_data  OUTPUT
    reward if useful...

  • How to delete a particular row in ALV table

    Hi,
    How to delete a particular row in ALV table based on some condition(by checking value for one of the columns in a row)
    Thanks
    Bala Duvvuri

    Hello Bala,
    Can you please be a bit more clear as to how you intend to delete the rows from your ALV? By the way deleting rows from an ALV is no different from deleting rows from a normal table. Suppose you have enabled selection property in ALV & then select multiple rows and click up on a button to delete the rows then below would be the coding: (Also keep in mind that you would have to maintain the Selection property of the context node that you are binding to your ALV to 0..n)
    data : lr_table_settings  TYPE REF TO if_salv_wd_table_settings,
                 lr_config          TYPE REF TO cl_salv_wd_config_table.
      lr_table_settings  ?= lr_config.
    ** Setting the ALV selection to multiple selection with no lead selection
      lr_table_settings->set_selection_mode( value = cl_wd_table=>e_selection_mode-multi_no_lead ).
    Next delete the selected rows in the action triggered by the button:
    METHOD onactiondelete_rows .
      DATA:  wd_node TYPE REF TO if_wd_context_node,
             lt_node1 TYPE ig_componentcontroller=>elements_node,
             wa_temp  TYPE REF TO if_wd_context_element,
             lt_temp  TYPE wdr_context_element_set,
             row_number TYPE i VALUE 0.
      wd_node = wd_context->get_child_node( name = 'NODE' ).
      CALL METHOD wd_node->get_selected_elements
        RECEIVING
          set = lt_temp.
      LOOP AT lt_temp INTO wa_temp.
        wd_node->remove_element( EXPORTING element = wa_temp ).
      ENDLOOP.
      CALL METHOD wd_node->get_static_attributes_table
        EXPORTING
          from  = 1
          to    = 2147483647
        IMPORTING
          table = lt_node1.
      wd_node->bind_table( new_items = lt_node1 ).
    ENDMETHOD.
    If in case this isn't your requirement please do let me know so that I can try come up with another analysis.
    Regards,
    Uday

  • How to delete the duplicate rows from the table

    Hi,
    I have 2 tbales namely component, component_audit
    For each record in component table there are multiple entries in component_audit table.
    I need to keep the first record and delete the others from the component_audit table
    say for example
    select a.component_id,a.dt_ti_stamp,a.component_name,a.column_before,b.comments from component_audit a,component b where a.component_id=b.component_id
    ( on the above result set only I shold apply the actual delete query )
    PLease help me in this regards.
    Thanks.

    delete from component_audit a where dt_ti_stamp not in (select
                                            min(b.dt_ti_stamp)
                                       from
                                            component_audit b
                                       where
                                            a.component_id = b.component_id)

  • How to capture a selected row in a table control in screen

    Hello,
        I have a table in a screen and hv data in it also from a table.Now i want if a user selects a row n clicks a display button , i should display the same fields in empty text fields created outside the table on the same screen.
    Rite now i m lookin for single selection but any help on multiple selection is also welcomed.
    I have given a line-selection element name as 'LSELECT1'  to the table in screen painter n have declared a variable also with the same name of type C(1) in my abap prog.But dont know wat to write in PAI now to caputure the selected row.
    THANKS

    Hi,
    Use ALV to display your table records from FM 'REUSE_ALV_GRID_DISPLAY'.
    In your internal table add a field with char1. This will show you the selected records by 'X' or ' '. Use this field in your layout like g_layout-box_fieldname = 'CHK'.
    Here i used CHK TYPE CHAR1 added to internal table to display. Now ur ALV will be showing u a column to select records. U can select multiple records also. Evry selected record will reflect into internal table by modifying value of CHK as 'X'. Add button to ALV by creating PF-STATUS and  add code its behavior when executed.
    DATA: BEGIN OF ls_ekko,
          ebeln TYPE ekko-ebeln, " this is my internal table showed in alv
          bukrs TYPE ekko-bukrs,
          bstyp TYPE ekko-bstyp,
          bsart TYPE ekko-bsart,
          lifnr TYPE ekko-lifnr,
          ekorg TYPE ekko-ekorg,
          ekgrp TYPE ekko-ekgrp,
          waers TYPE ekko-waers,
          chk(1)   TYPE c, " check field
          END OF ls_ekko.
    DATA it_ekko LIKE TABLE OF ls_ekko.
    DATA : gt_fcat    TYPE slis_t_fieldcat_alv WITH HEADER LINE,
           g_layout   TYPE slis_layout_alv,
           gt_fcat1    TYPE slis_t_fieldcat_alv WITH HEADER LINE,
           g_layout1   TYPE slis_layout_alv.
      g_layout-colwidth_optimize = 'X'.
      g_layout-box_fieldname = 'CHK'. " adding check field to alv
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
       i_callback_program                = sy-repid
       i_callback_pf_status_set          = 'PF_STATUS_ALV'
       i_callback_user_command           = 'USER_COMMAND_ALV'
      IT_EXCLUDING                      =
      I_GRID_TITLE                      =
      I_GRID_SETTINGS                   =
          is_layout          = g_layout
          it_fieldcat        = gt_fcat[]
          i_default          = 'X'
          i_save             = 'A'
        TABLES
          t_outtab           = it_ekko
        EXCEPTIONS
          program_error      = 1
          OTHERS             = 2.
    *&      Form  PF_STATUS_ALV
        Subroutine for PF status
         -->RT_EXTAB   text
    FORM pf_status_alv USING rt_extab TYPE slis_t_extab.
      SET PF-STATUS 'SELOBJ' EXCLUDING rt_extab.
    ENDFORM.                    "PF_STATUS_ALV
    Hope this help

  • How to move the selected rows from a  table control in dialog programming

    hiiiiiiii Every1
    I have to update some fields for a slected row in table control on click of a button and save it in database.
    Regards
    Sachin Dhingra

    see below example, I have added INSERT option after DELETE option, you can use same table or you can use differnt table by populating into that table and insert into the db table. If you want to use same internal table then use below code
    LOOP AT itab INTO demo_conn WHERE mark = 'X'.
    insert into table from itab.
    ENDLOOP.
    REPORT demo_dynpro_tabcont_loop_at.
    CONTROLS flights TYPE TABLEVIEW USING SCREEN 100.
    DATA cols LIKE LINE OF flights-cols.
    DATA: ok_code TYPE sy-ucomm,
    save_ok TYPE sy-ucomm.
    DATA: itab TYPE TABLE OF demo_conn.
    TABLES demo_conn.
    SELECT * FROM spfli INTO TABLE itab.
    LOOP AT flights-cols INTO cols WHERE index GT 2.
    cols-screen-input = '0'.
    MODIFY flights-cols FROM cols INDEX sy-tabix.
    ENDLOOP.
    CALL SCREEN 100.
    MODULE status_0100 OUTPUT.
    SET PF-STATUS 'SCREEN_100'.
    ENDMODULE.
    MODULE cancel INPUT.
    LEAVE PROGRAM.
    ENDMODULE.
    MODULE read_table_control INPUT.
    MODIFY itab FROM demo_conn INDEX flights-current_line.
    ENDMODULE.
    MODULE user_command_0100 INPUT.
    save_ok = ok_code.
    CLEAR ok_code.
    CASE save_ok.
    WHEN 'TOGGLE'.
    LOOP AT flights-cols INTO cols WHERE index GT 2.
    IF cols-screen-input = '0'.
    cols-screen-input = '1'.
    ELSEIF cols-screen-input = '1'.
    cols-screen-input = '0'.
    ENDIF.
    MODIFY flights-cols FROM cols INDEX sy-tabix.
    ENDLOOP.
    WHEN 'SORT_UP'.
    READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
    IF sy-subrc = 0.
    SORT itab STABLE BY (cols-screen-name+10) ASCENDING.
    cols-selected = ' '.
    MODIFY flights-cols FROM cols INDEX sy-tabix.
    ENDIF.
    WHEN 'SORT_DOWN'.
    READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
    IF sy-subrc = 0.
    SORT itab STABLE BY (cols-screen-name+10) DESCENDING.
    cols-selected = ' '.
    MODIFY flights-cols FROM cols INDEX sy-tabix.
    ENDIF.
    WHEN 'DELETE'.
    READ TABLE flights-cols INTO cols WITH KEY screen-input = '1'.
    IF sy-subrc = 0.
    LOOP AT itab INTO demo_conn WHERE mark = 'X'.
    DELETE itab.
    ENDLOOP.
    ENDIF.
    WHEN 'INSERT'.
    READ TABLE flights-cols INTO cols WITH KEY screen-input = '1'.
    IF sy-subrc = 0.
    LOOP AT itab INTO demo_conn WHERE mark = 'X'.
    itab1 = itab.
    modify itab1.
    ENDLOOP.
    ENDIF.
    if not itab1 is initial.
    INSERT dbtab FROM TABLE itab1.
    endif.
    ENDCASE.
    ENDMODULE.

  • How To delete the Chosen line from the Table Control

    Hi Friends,
      i am new to Module Pool Programming , i developed a Table Control in input mode and i am getting data also into that table control. my requirement is that i want to delete the current chosen line from that table control. please help me out.

    HI
    GOOD
    GO THROUGH THIS REPORT
    REPORT demo_dynpro_tabcont_loop_at.
    CONTROLS flights TYPE TABLEVIEW USING SCREEN 100.
    DATA: cols LIKE LINE OF flights-cols,
    lines TYPE i.
    DATA: ok_code TYPE sy-ucomm,
          save_ok TYPE sy-ucomm.
    DATA: itab TYPE TABLE OF demo_conn.
          TABLES demo_conn.
    SELECT * FROM spfli INTO CORRESPONDING FIELDS OF TABLE itab.
    LOOP AT flights-cols INTO cols WHERE index GT 2.
      cols-screen-input = '0'.
      MODIFY flights-cols FROM cols INDEX sy-tabix.
    ENDLOOP.
    CALL SCREEN 100.
    MODULE status_0100 OUTPUT.
      SET PF-STATUS 'SCREEN_100'.
    DESCRIBE TABLE itab LINES lines.
    flights-lines = lines.
    ENDMODULE.
    MODULE cancel INPUT.
      LEAVE PROGRAM.
    ENDMODULE.
    MODULE read_table_control INPUT.
      MODIFY itab FROM demo_conn INDEX flights-current_line.
    ENDMODULE.
    MODULE user_command_0100 INPUT.
      save_ok = ok_code.
      CLEAR ok_code.
      CASE save_ok.
        WHEN 'TOGGLE'.
          LOOP AT flights-cols INTO cols WHERE index GT 2.
            IF  cols-screen-input = '0'.
              cols-screen-input = '1'.
            ELSEIF  cols-screen-input = '1'.
              cols-screen-input = '0'.
          ENDIF.
      MODIFY flights-cols FROM cols INDEX sy-tabix.
    ENDLOOP.
        WHEN 'SORT_UP'.
          READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
          IF sy-subrc = 0.
            SORT itab STABLE BY (cols-screen-name+10) ASCENDING.
            cols-selected = ' '.
      MODIFY flights-cols FROM cols INDEX sy-tabix.
          ENDIF.
        WHEN 'SORT_DOWN'.
          READ TABLE flights-cols INTO cols WITH KEY selected = 'X'.
          IF sy-subrc = 0.
            SORT itab STABLE BY (cols-screen-name+10) DESCENDING.
            cols-selected = ' '.
      MODIFY flights-cols FROM cols INDEX sy-tabix.
          ENDIF.
        WHEN 'DELETE'.
          READ TABLE flights-cols INTO cols
                                  WITH KEY screen-input = '1'.
          IF sy-subrc = 0.
            LOOP AT itab INTO demo_conn WHERE mark = 'X'.
              DELETE itab.
    ENDLOOP.
          ENDIF.
    ENDCASE.
    ENDMODULE.
    CHANGE THE CODE AS PER THIS LIGIC.
    THANKS
    MRUTYUN

  • How make delete and add buttons as default apex icons(delete , add icons)

    Hi,
    I am new to Oracle apex , Please help me from below issue.
    I am having buttons called Add, Delete whic needs to be display as default apex delete, add icons.
    I have refered below link, even though i didn't get how to apply this.
    http://apex.oracle.com/pls/otn/f?p=45958:21:0:::::
    Please help me how add this icons and where can i see this icons in workspace.
    Thanks and regards,
    Ibrahim Sayyed.

    To call an image, you need to enter something like this in a HTML Region Body, Footer or Header:
    &lt;img src="#IMAGE_PREFIX#alert_error.gif" title="delete" onclick="apex.submit('DELETE')" style="cursor:pointer">What are "default apex delete, add icons"?
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.apress.com/9781430235125
    http://apex.oracle.com/pls/apex/f?p=31517:1
    http://www.amazon.de/Oracle-APEX-XE-Praxis/dp/3826655494
    -------------------------------------------------------------------

  • How to delete a selected row from adf table

    Hi
    I am using a ADF Table to get data from the database, i need to select a specific row and then delete it how to get
    this done.
    Thanks in Advance.

    Or try this code:
    In your backing bean:
        public void deleteRows(ActionEvent actionEvent) {
            ((AppModuleImpl)getApplicationModuleForDataControl()).deleteRowEmp();
        public static Object resolveExpression(String expression)
                try
                    FacesContext facesContext = FacesContext.getCurrentInstance();
                    Application app = facesContext.getApplication();
                    ExpressionFactory elFactory = app.getExpressionFactory();
                    ELContext elContext = facesContext.getELContext();
                    ValueExpression valueExp =
                        elFactory.createValueExpression(elContext, expression, Object.class);
                    return valueExp.getValue(elContext);
                catch (Exception e)
                   ;// log you message here
                return null;
             * Get application module for an application module data control by name.
             * @param name application module data control name
             * @return ApplicationModule
            public static ApplicationModule getApplicationModuleForDataControl()
                return (ApplicationModule) resolveExpression("#{data.AppModuleDataControl.dataProvider}");
            }In your AppmoduleImpl:
        public void deleteRowEmp(){
            this.getEmpView1().removeCurrentRow();
            this.getDBTransaction().commit();
        }And another option is to expose the appmodule method as a client and bind to the jspx as a button.

  • How to delete the committed row from a table from its VOImpl class ??

    I am new to ADF and I have problem to solve. To perform roll back I am using fetching key before roll back and setting it after undo operation, so that I can stay back in the currently selected row. But in my case I am using application model commit for one LOV attribute selection in the row. So when ever I am performing roll back operation after inserting a row, the values other than this committed LOV attribute gets roll backed, but I need remove the entire row from table. Does there any option to remove a row based on the attribute values of a row from VO's row implementation or from bean class in a performance optimized way ?
    Thanks in advance..........

    http://java.sun.com/javase/6/docs/api/javax/swing/table/DefaultTableModel.html#removeRow(int)
    Why did you mark it answered but gave no dukes to finalight? That's not how it works.
    You should mark his answer as correct and give him at least one duke, for the effort!

  • Insert row in a table control

    Hi,
    I have a requirement to insert a new row and delete an existing row from a table control.
    Please help me how to proceed with this.
    Thanks in advance.
    Suresh

    Hi,
    Sorry for wrongly framed question.
    The question is
    I have a requirement to insert a new <b>column</b> and delete an existing <b>column</b> from a table control.
    Thanks,
    Suresh

  • Insert row and delete row in a table control

    Hi Experts,
    I am using a table control in module pool programming, How can I Insert row and delete row in a table control?
    Thanks in Advance....

    Santhosh,
    Iam using this code..
    FORM fcode_delete_row
                  USING    p_tc_name           TYPE dynfnam
                           p_table_name
                           p_mark_name   .
    -BEGIN OF LOCAL DATA----
      DATA l_table_name       LIKE feld-name.
    data: p_mark_name type c.
      FIELD-SYMBOLS <tc>         TYPE cxtab_control.
      FIELD-SYMBOLS <table>      TYPE STANDARD TABLE.
      FIELD-SYMBOLS <wa>.
      FIELD-SYMBOLS <mark_field>.
    -END OF LOCAL DATA----
      ASSIGN (p_tc_name) TO <tc>.
    get the table, which belongs to the tc                               *
      CONCATENATE p_table_name '[]' INTO l_table_name. "table body
      ASSIGN (l_table_name) TO <table>.                "not headerline
    delete marked lines                                                  *
      DESCRIBE TABLE <table> LINES <tc>-lines.
      LOOP AT <table> ASSIGNING <wa>.
      access to the component 'FLAG' of the table header                 *
        ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>.
    if <MARK_FIELD> = 'X'.
        PERFORM f_save_confirmation_9101.
        IF gv_answer EQ '1'.
          DELETE <table> INDEX syst-tabix.
          IF sy-subrc = 0.
            <tc>-lines = <tc>-lines - 1.
          ENDIF.
          ELSE.
          ENDIF.
        ENDIF.
      ENDLOOP.
    in this code   ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>.
    if <MARK_FIELD> = 'X'.
    this code is not working...

  • How to delete or add columns in a DataTable.

    Hi,
    I need to delete/add columns for a DataTable programaticaly... Can anyone help me in this ??. In source code I added a datatable and lets take 3 columsn I added. While running application, I need to delete and add columns whenever I want.
    Please help me....

    can you give a sample code for this... I really want
    this code...
    just to re-confirm you, I want to add or delete
    columns not rows...I don't have sample code, why don't you give it a try?

  • How to remove and add the component to JFrame at runtime.

    Hi
    How to delete the JTabbedPane component from the Jframe at runtime and how to add the same component with different data at runtime.
    But the remaining components should not distrub.
    When i try to delete and add the component at runtime the remaing components are distrubed.
    when i minimize and maximize the screen, the components are adjusted. but i need a help on this without minimize and maximize the screen.

    Hi
    I am sending my code snippet, please look into this......i am doing the same even though i am not able to..................can u suggest anything seeing this code snippet.
    here one function called createtabpane (It creates the JTabbedpanes with the table information at runtime).
    private void getTimeSheetObj(String weekDate){
    //Object[][] rowObj=null;
    try {
    System.out.println("Inside the gettimesheet method try block");
    if(projTables!=null){
    for(int i=projTables.length-1; i>=0; i--){
    JTable jt = projTables;
    jTabbedPane_Main.remove(jt);
    System.out.println("Removing Table:"+i);
    jPanel_Tabbedpane.remove(jTabbedPane_Main);
    jTabbedPane_Main = new JTabbedPane();
    jTabbedPane_Main.revalidate();
    jPanel_Tabbedpane.revalidate();
    getContentPane().validate();
    getContentPane().repaint();
    jTabbedPane_Main.addChangeListener(new ChangeListener(){
    public void stateChanged(ChangeEvent ce){
    getTabbedPaneListenerValues();
    // this.setState(JFrame.ICONIFIED);
    // this.setExtendedState(JFrame.MAXIMIZED_BOTH);
    res = GetTimesheetResponseDocument.Factory.parse(new File("C:\\Narayana.xml"));
    response = res.getGetTimesheetResponse();
    proDets=response.getProjectDetailsArray();
    numOfPro = proDets.length;
    String taskDayValues[] = new String[8];
    System.out.println(numOfPro);
    proArr=new Object[numOfPro];
    Object[][] taskValues=null;
    for(int p = 0;p<numOfPro;p++){
    System.out.println("Inside1");
    taskDet = proDets[p].getTaskDetailsArray();
    taskValues = new Object[taskDet.length][8];
    for(int t=0;t<taskDet.length;t++){
    System.out.println("Inside2");
    taskValues[t][0] = (taskDet[t].getTaskName());
    taskValues[t][1] = (taskDet[t].getDay1HH()+":"+taskDet[t].getDay1MM()).toString();
    taskValues[t][2] = (taskDet[t].getDay2HH()+":"+taskDet[t].getDay2MM()).toString();
    taskValues[t][3] = (taskDet[t].getDay3HH()+":"+taskDet[t].getDay3MM()).toString();
    taskValues[t][4] = (taskDet[t].getDay4HH()+":"+taskDet[t].getDay4MM()).toString();
    taskValues[t][5] = (taskDet[t].getDay5HH()+":"+taskDet[t].getDay5MM()).toString();
    taskValues[t][6] = (taskDet[t].getDay6HH()+":"+taskDet[t].getDay6MM()).toString();
    taskValues[t][7] = (taskDet[t].getDay7HH()+":"+taskDet[t].getDay7MM()).toString();
    System.out.println("After taskvalues");
    proArr[p]=taskValues;
    createTabPanes(jTabbedPane_Main, proArr);
    System.out.println("outside");
    jPanel_Tabbedpane.add(jTabbedPane_Main);
    jTabbedPane_Main.getAccessibleContext().setAccessibleName("Proj");
    getContentPane().add(jPanel_Tabbedpane);
    pack();
    }catch(XmlException xe) {
    System.out.println("Inside the XmlException block");
    System.out.println(""+xe.getMessage());
    } catch(IOException ioe) {
    System.out.println("Inside the IOException block");
    System.out.println(""+ioe.getMessage());
    /* JOptionPane.showMessageDialog(null,
    "Values Displayed in the below tables",
    "Alert!",JOptionPane.ERROR_MESSAGE); */
    System.out.println("Initial JFrame Bounds:"+this.getBounds());

  • How to Delete and Reset a Lost Root Password on a System With a Mirrored ??

    hi All,
    we are experiencing problem,lost root password on Solaris 10 Sparc T5120, with mirror root,
    and we found the solution from Metalink.oracle.com, has anyone have try this??
    here list capture the file system :
    Filesystem size used avail capacity Mounted on
    */dev/md/dsk/d10 2.0G 349M 1.6G 18% /*
    */dev/md/dsk/d40 9.8G 563M 9.2G 6% /usr*
    */dev/md/dsk/d30 9.8G 1.4G 8.4G 15% /var*
    */dev/md/dsk/d50 7.9G 310M 7.5G 4% /opt*
    */dev/md/dsk/d600 3.8G 4.3M 3.8G 1% /home*
    */dev/md/dsk/d602 471M 20M 404M 5% /app/controlm*
    */dev/md/dsk/d601 471M 251M 173M 60% /app/ctsa*
    */dev/md/dsk/d604 4.9G 1.1G 3.8G 23% /app/oramon*
    */dev/md/dsk/d603 20G 11G 8.2G 58% /app/oracle*
    */dev/md/dsk/d606 39G 10.0G 29G 26% /proj/iprdb01/orafra/iprod01p*
    here the step :
    Solstice DiskSuite[TM] Software: How to Delete and Reset a Lost Root Password on a System With a Mirrored Root Disk [ID 1010755.1]
    Solution
    Steps to Follow
    How to delete and reset a lost root password on a system with a mirrored root disk.
    1) Insert the Solaris[TM] Operating System CD-ROM into the CD-ROM drive.
    2) Once the CD-ROM is in the drive, perform a stop-a. This brings the system down to the "ok" prompt.
    3) From the "ok" prompt, perform a single-user boot from the Solaris OS CD-ROM.
    ok boot cdrom -s4) At the "#" prompt, determine which disk is the system's boot disk (containing the root file system). There are several Oracle architectures and various configurations of systems when it concerns a boot disk. As a general rule, most boot disks are attached to controller 0 (c0). Usually, their SCSI target is
    either 3 (t3) or 0 (t0). However, Oracle machines are very flexible, and the boot disk could be at a different location. If you are not sure which disk is your boot disk, perform the following steps to determine the location of the boot device:
    a) # eeprom boot-device
    The output might appear to be simple, such as "disk" or "disk1" or more complicated, such as a pathname "/iommu/sbus/espdma@4,8400000/...../sd@3,0:a".
    b) Make note of the boot-device. If the boot-device is a pathname, it is beyond the scope of this information to provide the location of the customized boot disk. However, for most configurations,
    finding the customized boot disk is an easy task. The "Format" command shows all available disks:
    #format
    Searching for disks...done
    AVAILABLE DISK SELECTIONS:
    (enter its number): c) Enter d to exit format.
    Now, you will have an idea what disks are on the system. Therefore, if the boot-device is "disk" and format shows "c0t0d0" (on some systems "c0t3d0") then that is the boot device. If boot-device
    shows "disk1" and format shows "c0t1d0," then that is the boot device. If format shows multiple disks, then based on what the "eeprom boot-device" command shows, the system's boot disk would be:
    boot-device format
    disk c0t0d0 or c0t3d0 (machine dependent)
    disk1 c1t0d0
    disk2 c0t2d0
    disk3 c0t3d0 or c0t0d0 (machine dependent)
    and so on ....
    5) Because the system was not brought down gracefully (no root password means having to use the Stop-a keystroke to "crash" the system), you need to run "fsck" to clean the root partition (slice). The fsckalso confirms that you selected the proper slice.
    # fsck /dev/rdsk/c1t0d0s0
    where the X and Y are determined by the previous procedure. It is also possible to have a root partition which is not on slice 0 (s0), but, again, that is not a standard configuration.
    The output of "fsck" looks like this:
    ** /dev/rdsk/c1t0d0s0
    ** last mounted on /
    ** Phase 1 .....
    The second line in the output of "fsck" ("** Last mounted on /") confirms that this is the correct root filesystem partition. Answer "y" to any questions fsck asks. There shouldn't be too many items
    needing repair. If there are, there is a possibility of a corrupted root filesystem. After fsck is finished, mount the root partition:
    # mount /dev/dsk/c1t0d0s0 /a
    Again, X and Y are the same as for the fsck command.
    For example:
    # mount /dev/dsk/c1t0d0s0 /a
    6) From the root prompt, set the proper TERM type command (such as vt100, dtterm, sun, and so on)
    by entering this command:
    # TERM=sun; export TERM
    7) Use the VI text editor to edit the /etc/shadow file:
    # vi /a/etc/shadow
    8) The first line of the /etc/shadow file is the one you want to modify.
    It looks like this:
    root:c3.yAVmYodWsc:6445::::::
    9) Delete every character between the first and second colons in the first line of the file. When you finish deleting the characters, the line should look like this:
    root::6445::::::
    10) Press the Escape key, then enter the following to save the file and exit vi:
    :wq!
    11) Use the VI text editor to edit the /etc/system file andremove the "rootdev" line shown below:
    # vi /a/etc/system
    *rootdev:/pseudo/md@0:0,0,blk
    Don't comment out the "rootdev" line. Actually remove it.
    12) In the /a/etc/vfstab file, replace the lines for the system filesystem meta-devices with their underlying partitions. For example, change lines from
    /dev/md/dsk/d0 /dev/md/rdsk/d0 / ufs 1 no -
    to
    /dev/dsk/c1t0d0s0 /dev/rdsk/c1t0d0s0 / ufs 1 no -
    ONLY change the lines for root (/) and the filesystems that were affected by the actions you took in step 1 of this procedure. All other metadevices may stay as is in this file.
    13) Unmount root, check the root filesystem, and then stop the system:
    # cd /
    # umount /a
    # fsck /dev/rdsk/c1t0d0s0
    # stop-a
    14) Boot to single-user mode:
    ok boot -swTHIS STEP IS VERY IMPORTANT; YOU MUST BOOT TO SINGLE-USER MODE TO AVOID FILESYSTEM CORRUPTION.
    If the system does not boot to single user mode, you might have made a mistake in the previous steps.
    15) Because the root password was cleared in an earlier step, press Return when prompted for the the root password. Once you are in single-user mode, you must clear the metamirrors and all the sub-mirrors for the root filesystem. For example, if root (/) is d0, run the following command:
    # metaclear -f -r d0
    Running the metaclear command not only clears the metamirror but also clears the submirrors that are part of this mirror.
    16) When the metamirror is cleared, continue the boot up to multiuser mode by either pressing CTRL-D or by entering the following:
    # exit
    Now everything should be as it was, except that the system partition is on the underlying partition and isn't mirrored. You will simply need to re-create the metadevices for the root mirror as you had originally.
    many thanks

    Hi,
    Halt your machine.
    Boot with fail-safe mode.
    format and list out the disks. (You can get the root & mirror disk (c#t#d#) details from /etc/lvm/md.tab of your root or mirror disk. Earlier explorer output may help)
    Mount the root disk and remove the password entry in /etc/shadow
    umount it.
    Mount the mirror disk and remove the password entry in /etc/shadow
    umount it.
    reboot the server.
    Hope this helps!

Maybe you are looking for

  • Voice command ???? for E 63 , how to use it?

    i recently bought E 63, i studied the manual of E 63, i cannot get the clear concept of voice command option in the phone. In the E 63 key pad where is th evoice key (colour, any indication ----- voice key????/) . whhat is the concept of this voice c

  • How do I fix the gray screen and non responsive cursor after iMac sleeping?

    How do I fix the gray screen and non responsive cursor after iMac sleeping?

  • Table T043G

    Dear expert,                      when i am doing vendor payment through f-53 then error occurred:- In company code (IPCL) table T043G is missing.As per my knowledge it is related to customer / vendor tolerance group. I checked it & it is properly co

  • To activate Print Program

    How do we activate pritn program..?? When i click on Time Statement for Chosen Period in ESS buiness package i get Foolllowing error :- Print program not activated for form SAP_TIMESLIP:

  • With-holding tax not updates

    Hi, While doing MIRO the with-holding tax tab is not getting updated. but when I view the accounting document the TDS is getting posted to the correct G/L and the amount is correct.  I have maintained in Vendor master the with-holding tax. Please sug