#1
|
|||
|
|||
anadir condiciones a un programa
Este programa , lo que hace ahorita es borrar los datos de una tabla y bajarlos a un archivo de texto , le quiero agregar las siguentes condiciones :
Condiciones 1. que el programa tambien de un reporte de los datos los cuales se podrian borrar sin la necesidad de borrarlos, que no solo borre. 2. que pueda escoger de que datos de las tablas quiero que se borren 3. si dice que si delete, si la respuesta es de si para borrar, preguntar cuales registros se quieren borrar e imprimir los que se borrarian pantalla y dar el numero de registros que se borraran 4. que pueda escoger un rango de fechas, de que fecha a que fecha se quieren borrar los registros (con bandera de si se quiere borrar o no) prograba abajo : ******************************************* * Description : * * ************************************************************************ REPORT ZSRS_RT_DOWNLOAD_PAYS * NO STANDARD PAGE HEADING LINE-SIZE 255 MESSAGE-ID xxx . data begin of ti_zrtusthpm01 occurs 0. include structure zrtusthpm01. data end of ti_zrtusthpm01. *include structure tabla1. *include structure tabla2. data begin of ti_zrtustppm01 occurs 0. include structure zrtustppm01. data end of ti_zrtustppm01. *queries select * from zrtusthpm01 into table ti_zrtusthpm01. select * from zrtustppm01 into table ti_zrtustppm01. CALL FUNCTION 'GUI_DOWNLOAD' EXPORTING * BIN_FILESIZE = filename = 'C:\users\arturo\desktop\downloadpays.txt' * filename = C:\Users\Arturo\Desktop\downloadpays.txt FILETYPE = 'ASC' * APPEND = ' ' * WRITE_FIELD_SEPARATOR = ' ' * HEADER = '00' * TRUNC_TRAILING_BLANKS = ' ' * WRITE_LF = 'X' * COL_SELECT = ' ' * COL_SELECT_MASK = ' ' * DAT_MODE = ' ' * CONFIRM_OVERWRITE = ' ' * NO_AUTH_CHECK = ' ' * CODEPAGE = ' ' * IGNORE_CERR = ABAP_TRUE * REPLACEMENT = '#' * WRITE_BOM = ' ' * TRUNC_TRAILING_BLANKS_EOL = 'X' * WK1_N_FORMAT = ' ' * WK1_N_SIZE = ' ' * WK1_T_FORMAT = ' ' * WK1_T_SIZE = ' ' * WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE * SHOW_TRANSFER_STATUS = ABAP_TRUE * IMPORTING * FILELENGTH = tables data_tab = ti_zrtusthpm01 * FIELDNAMES = * EXCEPTIONS * FILE_WRITE_ERROR = 1 * NO_BATCH = 2 * GUI_REFUSE_FILETRANSFER = 3 * INVALID_TYPE = 4 * NO_AUTHORITY = 5 * UNKNOWN_ERROR = 6 * HEADER_NOT_ALLOWED = 7 * SEPARATOR_NOT_ALLOWED = 8 * FILESIZE_NOT_ALLOWED = 9 * HEADER_TOO_LONG = 10 * DP_ERROR_CREATE = 11 * DP_ERROR_SEND = 12 * DP_ERROR_WRITE = 13 * UNKNOWN_DP_ERROR = 14 * ACCESS_DENIED = 15 * DP_OUT_OF_MEMORY = 16 * DISK_FULL = 17 * DP_TIMEOUT = 18 * FILE_NOT_FOUND = 19 * DATAPROVIDER_EXCEPTION = 20 * CONTROL_FLUSH_ERROR = 21 * OTHERS = 22 . IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. CALL FUNCTION 'GUI_DOWNLOAD' EXPORTING * BIN_FILESIZE = filename = 'c:\users\arturo\desktop\downloadpays.txt' FILETYPE = 'ASC' * APPEND = ' ' * WRITE_FIELD_SEPARATOR = ' ' * HEADER = '00' * TRUNC_TRAILING_BLANKS = ' ' * WRITE_LF = 'X' * COL_SELECT = ' ' * COL_SELECT_MASK = ' ' * DAT_MODE = ' ' * CONFIRM_OVERWRITE = ' ' * NO_AUTH_CHECK = ' ' * CODEPAGE = ' ' * IGNORE_CERR = ABAP_TRUE * REPLACEMENT = '#' * WRITE_BOM = ' ' * TRUNC_TRAILING_BLANKS_EOL = 'X' * WK1_N_FORMAT = ' ' * WK1_N_SIZE = ' ' * WK1_T_FORMAT = ' ' * WK1_T_SIZE = ' ' * WRITE_LF_AFTER_LAST_LINE = ABAP_TRUE * SHOW_TRANSFER_STATUS = ABAP_TRUE * IMPORTING * FILELENGTH = tables data_tab = ti_zrtustppm01 * FIELDNAMES = * EXCEPTIONS * FILE_WRITE_ERROR = 1 * NO_BATCH = 2 * GUI_REFUSE_FILETRANSFER = 3 * INVALID_TYPE = 4 * NO_AUTHORITY = 5 * UNKNOWN_ERROR = 6 * HEADER_NOT_ALLOWED = 7 * SEPARATOR_NOT_ALLOWED = 8 * FILESIZE_NOT_ALLOWED = 9 * HEADER_TOO_LONG = 10 * DP_ERROR_CREATE = 11 * DP_ERROR_SEND = 12 * DP_ERROR_WRITE = 13 * UNKNOWN_DP_ERROR = 14 * ACCESS_DENIED = 15 * DP_OUT_OF_MEMORY = 16 * DISK_FULL = 17 * DP_TIMEOUT = 18 * FILE_NOT_FOUND = 19 * DATAPROVIDER_EXCEPTION = 20 * CONTROL_FLUSH_ERROR = 21 * OTHERS = 22 . IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. *mensaje de warning DATA: RES(1). CALL FUNCTION 'POPUP_TO_CONFIRM' EXPORTING TITLEBAR = 'Payments' TEXT_QUESTION = '¿Do you really want to delete the all the data?' TEXT_BUTTON_1 = 'Yes' TEXT_BUTTON_2 = 'No' IMPORTING ANSWER = RES. *se borra la tabla IF RES EQ '1'. * DELETE ZRTUSTPPM01 from ti_ZRTUSTPPM01. * DELETE ZRTUSTHPM01 from ti_ZRTUSTHPM01. ENDIF. ************************************************************************************ |
#2
|
||||
|
||||
Hola, no se si resolviste el problema, pero no es logico borrar un registro y despues mostrar en un reporte el que borraste, ya que todos los datos son jalados desde tablas, lo que podrias hacer es crearte una tabla que cumpla el papel de historial, asi podrias controlar mejor lo que borras y lo que modificas, en caso de modificar y mostrar un log de modificacion las puedes asociar a la CDHDR y la CDPOS, pero ese seria otro tema
__________________
David Carballido Córdova |
Herramientas | Buscar en Tema |
Desplegado | |
|
|