#1
|
|||
|
|||
Error derivado de función de nómina que accede a cluster.
Hola !
Hice una función que accede al cluster de nómina. El problema que tengo es que creo que las funciones que uso dentro de esta función de nómina dejan algún valor en tablas o campos los cuales son ocupados posteriormente. Luego entonces cuando son de nueva cuenta invocadas por otros programas pues ya tienen valores y no deberían. El error que me sale es el siguiente: Sólo se pueden tratar 36 cluster a la vez. Este error me sale en la función P0262 de nómina. Espero me puedan orientar. Muchas gracias !!! |
#2
|
|||
|
|||
Espero esto te pueda ayudar en algo.
En todo caso si detallas un poco mas lo que necesitas te pueden ayudar mas. saludos |
#3
|
|||
|
|||
Lo que quería es acceder a la tabla AB de la nómina anterior y lo que hice fue esto:
* Solo Obtener tabla AB de cluster w_spec_objects = 'INTER-AB'. APPEND w_spec_objects TO li_spec_objects. CALL FUNCTION 'PYXX_SPECIFY_OBJECTS' TABLES specified_objects = li_spec_objects. REFRESH: li_rgdir, li_payroll-inter-AB. *-- Lee Directorios Cluster en Rgdir CALL FUNCTION 'CU_READ_RGDIR' EXPORTING persnr = pernr-pernr TABLES in_rgdir = i_rgdir_all EXCEPTIONS no_record_found = 1 OTHERS = 2. **--Registros Validos CALL FUNCTION 'CD_SELECT_VOID' EXPORTING void_indicator = space TABLES in_rgdir = i_rgdir_all out_rgdir = i_rgdir_void EXCEPTIONS OTHERS = 1. **-- Solo entradas para la(s) fecha del periodo(s) * if aper-abkrs EQ 'ES'. inicio_r = aper-begda - 7. fin_r = aper-endda - 7. else. concatenate aper-begda(6) '01' into fin_r. fin_r = fin_r - 1. concatenate fin_r(6) '01' into inicio_r. endif. CALL FUNCTION 'CD_SELECT_DATE_RANGE' EXPORTING fpper_begda = inicio_r " aper-begda fpper_endda = fin_r "aper-endda TABLES in_rgdir = i_rgdir_void out_rgdir = i_rgdir_dates EXCEPTIONS OTHERS = 1. **-- Selecciona solo resultados actuales CALL FUNCTION 'CD_SELECT_SRTZA' EXPORTING record_type = c_srtza TABLES in_rgdir = i_rgdir_dates out_rgdir = p_li_rgdir EXCEPTIONS OTHERS = 1. READ TABLE p_li_rgdir INTO e_p_li_rgdir INDEX 1. ** Obtiene los Resultados para la Secuencia CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT' EXPORTING clusterid = 'MX' employeenumber = pernr-pernr sequencenumber = e_p_li_rgdir-seqnr * read_only_international = 'X' CHANGING payroll_result = li_payroll EXCEPTIONS illegal_isocode_or_clusterid = 1 error_generating_import = 2 import_mismatch_error = 3 subpool_dir_full = 4 no_read_authority = 5 no_record_found = 6 versions_do_not_match = 7 error_reading_archive = 8 error_reading_relid = 9 OTHERS = 10. Posteriormente con el fin de limpiar lo que habían llenado las funciones anteriores hice lo siguiente: clear li_spec_objects. * Solo Obtener tabla AB de cluster CALL FUNCTION 'PYXX_SPECIFY_OBJECTS' TABLES specified_objects = li_spec_objects. e_p_li_rgdir-seqnr = 0. EXPORT d_borra to memory id 'BORRAR'. CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT' EXPORTING clusterid = 'MX' employeenumber = pernr-pernr sequencenumber = e_p_li_rgdir-seqnr * read_only_international = 'X' CHANGING payroll_result = li_payroll EXCEPTIONS illegal_isocode_or_clusterid = 1 error_generating_import = 2 import_mismatch_error = 3 subpool_dir_full = 4 no_read_authority = 5 no_record_found = 6 versions_do_not_match = 7 error_reading_archive = 8 error_reading_relid = 9 OTHERS = 10. El export lo hice porque metí una ampliación a la función PYXX_READ_PAYROLL_RESULT para limpiar las variables que quedaron llenas. Espero me puedan ayudar. Saludos y gracias teo30. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|