#1
|
|||
|
|||
Eliminar Registro De Un Alv
Hola a todos, soy nuevo en abap y estoy haciendo un programa de mantenimiento de una tabla,me explico: he creado una tabla (ztab_usu) con los campos (CODIGO,NOMBRE,APELLIDO,DIRECCION,TELEFONO), ya hize una dynpro con un ALV-GRID y 2 botones (nuevo,borrar); he logrado añadir datos, pero lo que no puedo es eliminar el(los) registro(s) que selecciono en el alv. espero su ayuda porfavor, le dejo una parte del codigo. Gracias.
TABLES: ztab_usu. TYPES BEGIN OF ty_ztab_usu. INCLUDE STRUCTURE ztab_usu. TYPES END OF ty_ztab_usu. DATA: it_ztab_usu TYPE STANDARD TABLE OF ty_ztab_usu. FIELD-SYMBOLS: <fs_ztab_usu> LIKE LINE OF it_ztab_usu. *DECLARACION DE VARIABLES ALV* DATA: gs_layout_usu TYPE lvc_s_layo, gt_fieldcat_usu TYPE lvc_t_fcat, gs_fieldcat_usu TYPE lvc_s_fcat, i_index_rows TYPE lvc_t_row, i_selected_row LIKE lvc_s_row. DATA: cnt_name_usu TYPE scrfname VALUE 'CUSTOM_ALV', container_alv_usu TYPE REF TO cl_gui_custom_container, alv_grid_usu TYPE REF TO cl_gui_alv_grid. FIELD-SYMBOLS: <fs_fieldcat> LIKE LINE OF gt_fieldcat_usu. START-OF-SELECTION. CALL SCREEN '100'. *----------------------------------------------------------------------* **FUNCIONES DEL ALV** FORM load_data . REFRESH it_ztab_usu. SELECT codigo nombre apellido direccion telefono INTO CORRESPONDING FIELDS OF TABLE it_ztab_usu FROM ztab_usu. ENDFORM. " load_data *&---------------------------------------------------------------------* *& Form fill_layout *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM fill_layout . gs_layout_usu-sel_mode = 'A'. * gs_layout_usu-no_toolbar = 'X'. ENDFORM. " fill_layout *&---------------------------------------------------------------------* *& Form fill_catalog *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM fill_catalog . REFRESH gt_fieldcat_usu. CLEAR gs_fieldcat_usu. gs_fieldcat_usu-tabname = 'it_ztab_usu'. gs_fieldcat_usu-fieldname = 'CODIGO'. gs_fieldcat_usu-reptext = 'Codigo'. gs_fieldcat_usu-col_pos = 1. gs_fieldcat_usu-outputlen = 7. APPEND gs_fieldcat_usu TO gt_fieldcat_usu. CLEAR gs_fieldcat_usu. gs_fieldcat_usu-tabname = 'it_ztab_usu'. gs_fieldcat_usu-fieldname = 'NOMBRE'. gs_fieldcat_usu-reptext = 'Nombres'. gs_fieldcat_usu-col_pos = 2. gs_fieldcat_usu-outputlen = 8. APPEND gs_fieldcat_usu TO gt_fieldcat_usu. CLEAR gs_fieldcat_usu. gs_fieldcat_usu-tabname = 'it_ztab_usu'. gs_fieldcat_usu-fieldname = 'APELLIDO'. gs_fieldcat_usu-reptext = 'Apellidos'. gs_fieldcat_usu-col_pos = 3. gs_fieldcat_usu-outputlen = 10. APPEND gs_fieldcat_usu TO gt_fieldcat_usu. CLEAR gs_fieldcat_usu. gs_fieldcat_usu-tabname = 'it_ztab_usu'. gs_fieldcat_usu-fieldname = 'DIRECCION'. gs_fieldcat_usu-reptext = 'Direccion'. gs_fieldcat_usu-col_pos = 4. gs_fieldcat_usu-outputlen = 10. APPEND gs_fieldcat_usu TO gt_fieldcat_usu. CLEAR gs_fieldcat_usu. gs_fieldcat_usu-tabname = 'it_ztab_usu'. gs_fieldcat_usu-fieldname = 'TELEFONO'. gs_fieldcat_usu-reptext = 'Telefono'. gs_fieldcat_usu-col_pos = 4. gs_fieldcat_usu-outputlen = 8. APPEND gs_fieldcat_usu TO gt_fieldcat_usu. ENDFORM. " fill_catalog *&---------------------------------------------------------------------* *& Form display_alv *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM display_alv . IF container_alv_usu IS INITIAL. CREATE OBJECT container_alv_usu EXPORTING container_name = cnt_name_usu EXCEPTIONS cntl_error = 1 cntl_system_error = 2 create_error = 3 lifetime_error = 4 lifetime_dynpro_dynpro_link = 5 OTHERS = 6. IF sy-subrc EQ 0. CREATE OBJECT alv_grid_usu EXPORTING i_parent = container_alv_usu. CALL METHOD alv_grid_usu->set_table_for_first_display EXPORTING i_save = 'A' i_default = 'X' is_layout = gs_layout_usu CHANGING it_outtab = it_ztab_usu it_fieldcatalog = gt_fieldcat_usu EXCEPTIONS invalid_parameter_combination = 1 program_error = 2 too_many_lines = 3 OTHERS = 4. CALL METHOD alv_grid_usu->set_ready_for_input EXPORTING i_ready_for_input = 0. ELSE. CALL METHOD alv_grid_usu->refresh_table_display. ENDIF. ENDIF. ENDFORM. " display_alv *&---------------------------------------------------------------------* *& Form refresh_alv *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM refresh_alv . CALL METHOD alv_grid_usu->set_frontend_layout EXPORTING is_layout = gs_layout_usu. CALL METHOD alv_grid_usu->refresh_table_display. ENDFORM. " refresh_alv *&---------------------------------------------------------------------* *& Form eliminar_registro *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM eliminar_registro . **ESTO ES LO QUE ME FALTA ENDFORM. " eliminar_registro Úlima edición por x27christian27x fecha: 26/06/12 a las 23:06:13. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|