Error en tiempo de ejecucion - Lo exede
Una pregunta yo mando a subir un archivo de texto con 50,000 registros y en sap se demora demasiado tanto que me sale el mensaje de TIME_OUT y se cae SAP... Como podria hacer para poder manipular el tiempo de ejecucion, u otra manera de resolver este contratiempo.
Gracias
Hola.
Hay tres posibles soluciones...
1º.- Se puede manipular el tiempo de ejecución, pero tendrías que preguntarle a alguien de sistemas, yo no se donde se cambia.
2º.- Otra opción es que lances el programa en fondo porque de esta manera no te dará el TIME_OUT.
3º.- Y luego hay otra manera de hacerlo (mas que nada a modo informativo), pero creo que si le metes un SUBMIT al programa o un CALL TRANSACTION, el tiempo de ejecución vuelve a empezar desde cero.
Un saludo,
Oscar.
Estimado,
Si requieres ejecutar el proceso On-Line, lo puedes solucionar utilizando la funcion : SAPGUI_PROGRESS_INDICATOR
Por si no sabes como implemetar esto en tu programa, mas abajo te dejo un ejemplo :
Cualquier duda o problema que tengas avisame....
Saludos.
Atte.,
Malioni
REPORT Y_TEST_PROGRESS_INDICATOR.
*
*---->
*
TYPES: BEGIN OF t_mara,
matnr LIKE mara-matnr,
END OF t_mara.
DATA: it_mara TYPE STANDARD TABLE OF t_mara INITIAL SIZE 0,
wa_mara TYPE t_mara.
DATA: mara_lines TYPE i,
gd_percent TYPE i.
*
*----> START-OF-SELECTION
*
START-OF-SELECTION.
*
SELECT matnr INTO TABLE it_mara FROM mara.
*
CHECK sy-subrc EQ 0.
mara_lines = sy-dbcnt.
CLEAR : gd_percent.
*
LOOP AT it_mara INTO wa_mara.
PERFORM progress_bar USING 'Procesando Archivo...'(001)
sy-tabix
mara_lines.
*
*----> Si tu tabla MARA posee pocos registros desmarca la linea de mas abajo
*----> Donde esta el WAIT..asi podras ver el reloj en la barra de tareas.
*
* WAIT UP TO 2 SECONDS.
ENDLOOP.
*
END-OF-SELECTION.
*
*----> INICIO DE SECCION DE RUTINAS FORM's DEL PR0GRAMA
*
*
*======================================================================*
* FORM : PROGRESS_BAR
*======================================================================*
*
FORM progress_bar USING p_value
p_tabix
p_nlines.
*
DATA : w_text(40),
w_percentage TYPE p,
w_percent_char(3).
*
w_percentage = ( p_tabix / p_nlines ) * 100.
w_percent_char = w_percentage.
SHIFT w_percent_char LEFT DELETING LEADING ' '.
CONCATENATE p_value w_percent_char '% Procesado'(002) INTO w_text.
*
*
*----> Ojo con queres desplegar el "Indicador de Progreso" para todos los registros
*----> que son procesados dentro del "LOOP"...eso te ocasionaria que el programa
*----> fuese extremadamente "LENTO" ... es por eso que se acota su aparicion en
*----> la pantalla....
*
if w_percentage gt gd_percent or p_tabix eq 1.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = w_percentage
text = w_text.
gd_percent = w_percentage.
endif.
endform.