-   
- ************************************************************************ 
- * Programa : ZHR_CI010                                                 * 
- * Módulo   : HR - Recursos Humanos                                     * 
- * Documento:                                                           * 
- * Usuario responsable:                                                 * 
- * Consultor funcional: Gabriela Mogollón                               * 
- * Consultor ABAP     : Alvaro Tejada Galindo                           * 
- *                                                                      * 
- * Descripción: Carga inicial Infotipos PA30 - Emolumentos Básicos      * 
- * Transacción:                                                         * 
- * Juego de datos:                                                      * 
- ************************************************************************ 
-   
- REPORT ZHR_CI010 NO STANDARD PAGE HEADING MESSAGE-ID ZMENSAJE. 
-   
- *======================================================================= 
- * Includes 
- *======================================================================= 
- INCLUDE ZBC_IN001.                        "rutinas de batch inputs 
-   
- *======================================================================= 
- * Estructuras 
- *======================================================================= 
- *- Estructura de Archivo a cargar 
-   
- DATA: BEGIN OF T_DATA OCCURS 0. 
-         INCLUDE STRUCTURE BDCDATA. 
- DATA: END OF T_DATA. 
-   
- DATA: BEGIN OF T_CARGAHONOR OCCURS 0, 
-       FECHAINI(10) TYPE C, 
-       FECHAFIN(10) TYPE C, 
-       CODEMP(8) TYPE C, 
-       GRUPO(8) TYPE C, 
-       SUBGRP(2) TYPE C, 
-       GRADO(5) TYPE C, 
-       IMPORTE(15) TYPE C, 
-       MONEDA(5) TYPE C, 
- END OF T_CARGAHONOR. 
-   
- *======================================================================= 
- * Variables 
- *======================================================================= 
-   
- DATA: 
-       LONG TYPE I, 
-       COUNT TYPE I, 
-       MONEDA(3) TYPE C. 
-   
- CONSTANTS SUBGRUPO(2) TYPE C VALUE '01'. 
- CONSTANTS INFOTYPE(1) TYPE C VALUE '8'. 
-   
- *======================================================================= 
- * Selection screen 
- *======================================================================= 
-   
- SELECTION-SCREEN BEGIN OF BLOCK DATA WITH FRAME TITLE TEXT-T01. 
- PARAMETERS: 
-     FILEMON(128) TYPE C OBLIGATORY. 
- SELECTION-SCREEN END OF BLOCK DATA. 
-   
- *======================================================================= 
- * At selection-screen 
- *======================================================================= 
-   
- AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILEMON. 
-   PERFORM NOMBRE_ARCHIVO USING FILEMON. 
-   
- *======================================================================= 
- * Start-of-selection 
- *======================================================================= 
-   
- START-OF-SELECTION. 
-   PERFORM ABRE_ARCHIVO_PC_HR TABLES T_CARGAHONOR USING FILEMON. 
-   PERFORM CREAR_SESION USING 'CI_CPA30EB'. 
-   
-   REFRESH T_BDCDATA. 
-   
-   LOOP AT T_CARGAHONOR. 
-   
-       COUNT = COUNT + 1. 
-       PERFORM TRANSFIERE_DATOS_HONORARIOS. 
-   
-     PERFORM INSERTA_DATOS USING 'PA30'. 
-   ENDLOOP. 
-   
-   PERFORM CERRAR_SESION USING 'CI_CPA30EB'. 
-   WRITE: / 'Registros leidos:', COUNT, 
-          /, 
-          / 'Se ha creado el juego de datos: CI_CPA30EB', 
-          / 'Ejecutar desde transacción SM35'. 
-   
- END-OF-SELECTION. 
-   
- *======================================================================= 
- * Subrutinas 
- *======================================================================= 
-   
- FORM ABRE_ARCHIVO_PC_HR TABLES TABLA USING ARCHIVO . 
-   
-   CALL FUNCTION 'WS_UPLOAD' 
-        EXPORTING 
-             CODEPAGE                = 'IBM' 
-             FILENAME                = ARCHIVO 
-             FILETYPE                = 'ASC' 
-        IMPORTING 
-             FILELENGHT              = LONG 
-        TABLES 
-             DATA_TAB                = TABLA 
-        EXCEPTIONS 
-             CONVERSION_ERROR        = 1 
-             FILE_OPEN_ERROR         = 2 
-             FILE_READ_ERROR         = 3 
-             INVALID_TYPE            = 4 
-             NO_BATCH                = 5 
-             UNKNOWN_ERROR           = 6 
-             INVALID_TABLE_WIDTH     = 7 
-             GUI_REFUSE_FILETRANSFER = 8 
-             CUSTOMER_ERROR          = 9 
-             OTHERS                  = 10. 
-   
-   IF SY-SUBRC NE 0. 
-     MESSAGE E001. 
-   ENDIF. 
-   
- ENDFORM.                    " ABRE_ARCHIVO_PC 
-   
- *&---------------------------------------------------------------------* 
- *&      Form  TRANSFIERE_DATOS_HONORARIOS 
- *&---------------------------------------------------------------------* 
- * Transfiere los datos del registro del archivo plano leído a la 
- * tabla interna t_bdcdata. 
- *----------------------------------------------------------------------* 
- FORM TRANSFIERE_DATOS_HONORARIOS. 
-   
- *- Limpia la tabla interna t_bdcdata 
-   REFRESH T_BDCDATA. 
-   CLEAR T_BDCDATA. 
-   
-   IF T_CARGAHONOR-MONEDA NE SPACE. 
-     MONEDA = T_CARGAHONOR-MONEDA. 
-   ELSE. 
-     MONEDA = 'PEN'. 
-   ENDIF. 
-   
-   PERFORM DYNPRO USING: 
-   
- *- Primera Pantalla 
-     'X' 'SAPMP50A'        '1000', 
-     ''  'RP50G-PERNR'     T_CARGAHONOR-CODEMP,      "Codigo Empleado 
-     ''  'RP50G-BEGDA'     T_CARGAHONOR-FECHAINI,    "Fecha Inicial 
-     ''  'RP50G-ENDDA'     T_CARGAHONOR-FECHAFIN,    "Fecha Final 
-     ''  'RP50G-CHOIC'     INFOTYPE,              "Clave Infotipo 
-     ''  'BDC_OKCODE'      '=INS',                "Enter 
-   
- *- Primera Pantalla 
-     'X' 'MP000800'        '2000', 
-     ''  'P0008-BEGDA'     T_CARGAHONOR-FECHAINI,      "Fecha Inicio 
-     ''  'P0008-ENDDA'     T_CARGAHONOR-FECHAFIN,      "Fecha Fin 
-     ''  'P0008-TRFGR'     T_CARGAHONOR-GRUPO,         "Grupo 
-     ''  'P0008-TRFST'     SUBGRUPO,                   "Sub Grupo 
-     ''  'P0008-BSGRD'     T_CARGAHONOR-GRADO,         "Grado Ocupacion 
-     ''  'Q0008-BETRG(01)' T_CARGAHONOR-IMPORTE,       "Importe 
-     ''  'P0008-WAERS'     MONEDA,                     "Moneda 
-     ''  'BDC_OKCODE'      '=UPD'.                     "Actualizar 
-   
- ENDFORM.                    " TRANSFIERE_DATOS_HONORARIOS 
-   
-