|
#1
|
||||
|
||||
Dile a tu ABAP que te lo arregle .
__________________
------------------- ¿Dudas para descargar manuales? Ver este tema -> |
#2
|
|||
|
|||
Al parecer tu error esta en que hay alguna consulta donde se usan demasiados datos para filtrar la informacion, en este caso parece ser el campo E_DINV, Intena buscar una forma donde la consulta se filtre por rangos de seleccion, es decir, en lugar de filtrar por:
Campo = 1 Campo = 2 Campo = 3 Campo = 4 Campo = 5 filtra: Campo este entre 1 y 5 espero haber sido de ayuda.... |
#3
|
|||
|
|||
Gracias, ese campo lo tengo dentro de una función y ahi esta tronando... aunque filtre por rangos, ya hice la prueba... voy a tener que verlo con un abap....
Saludos. |
#4
|
|||
|
|||
En sí me están sucediendo dos casos en dos transaccioens diferentes. En el primero es una tx ZETA y el detalle del error dice:
---------------------------------------------------------------------------------------------------- |Info posición de cancelación | | Termination occurred in the ABAP program "SAPLZMZA" - in | | "ZMM_CALC_DIAS_INVENTARIO". | | The main program was "ZMM_DATOS_COMPRAS_1_BK ". | | | | In the source code you have the termination point in line 345 | | of the (Include) program "LZMZAU02". | | The termination is caused because exception "CX_SY_CONVERSION_OVERFLOW" | | occurred in | | procedure "ZMM_CALC_DIAS_INVENTARIO" "(FUNCTION)", but it was neither handled | | locally nor declared | | in the RAISING clause of its signature. | | | | The procedure is in program "SAPLZMZA "; its source code begins in line | | 1 of the (Include program "LZMZAU02 ". | ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- |Detalle código fuente | ---------------------------------------------------------------------------------------------------- |Lín. |Txt.fte. | ---------------------------------------------------------------------------------------------------- | 315| CLEAR: w_sales, w_max_sales. | | 316| | | 317| | | 318|*Venta diaria = ( Acumulado de venta de las últimas 4 semanas ) / 28 días (valor fijo). | | 319| w_vta_diaria = t_sales / ( i_wnumb * 7 ). | | 320|*Existencia actual en días = ( Existencia en piezas + Stock tránsito ) / Venta diaria | | 321| CATCH SYSTEM-EXCEPTIONS bcd_zerodivide = 1 | | 322| compute_bcd_overflow = 2. | | 323| w_exis_dias = ( existencia + stock ) / w_vta_diaria. | | 324| ENDCATCH. | | 325|*Inventario en días = Existencia actual en días – Tiempo de entrega del proveedor. | | 326|******************** BEGIN OF DELETE JARC 09032012 ********************* | | 327|** w_invent_dias = w_exis_dias - tiempo_entrega. | | 328|********************* END OF DELETE JARC 09032012 ********************** | | 329|******************** BEGIN OF INSERT JARC 09032012 ********************* | | 330| w_invent_dias = w_exis_dias. | | 331|********************* END OF INSERT JARC 09032012 ********************** | | 332|*Pedido en días = ( Cantidad pedida) / Venta diaria ) + Cantidad en pedidos pendientes de re| | 333| READ TABLE it_matp WITH KEY matnr = i_matnr. | | 334| CATCH SYSTEM-EXCEPTIONS bcd_zerodivide = 1 | | 335| compute_bcd_overflow = 2. | | 336| w_pedido_dias = ( it_matp-menge ) / w_vta_diaria. | | 337| ENDCATCH. | | 338|* Días de Inventario = Inventario en días + Pedido en días | | 339| w_dias_invent = w_invent_dias + w_pedido_dias. | | 340| | | 341| IF w_dias_invent < 0. | | 342| CLEAR w_dias_invent. | | 343| ENDIF. | | 344| | |>>>>>| MOVE: w_dias_invent TO e_dinv, | | 346| w_vta_diaria TO e_vtad, | | 347| existencia TO e_stock, | | 348| stock TO e_stktr, | | 349| it_matp-menge TO e_ppend. | | 350| | | 351| CLEAR: t_sales. | | 352| | | 353|ENDFUNCTION. | ---------------------------------------------------------------------------------------------------- en la segunda tx es la mb51 y el detalle con error es: ---------------------------------------------------------------------------------------------------- |Info posición de cancelación | | Termination occurred in the ABAP program "RM07DOCS" - in "DATA_SELECTION". | | The main program was "RM07DOCS ". | | | | In the source code you have the termination point in line 334 | | of the (Include) program "RM07DOCS_GENERATED". | | The termination is caused because exception "CX_SY_OPEN_SQL_DB" occurred in | | procedure "DATA_SELECTION" "(FORM)", but it was neither handled locally nor | | declared | | in the RAISING clause of its signature. | | | | The procedure is in program "RM07DOCS "; its source code begins in line | | 302 of the (Include program "RM07DOCS_GENERATED ". | ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- |Detalle código fuente | ---------------------------------------------------------------------------------------------------- |Lín. |Txt.fte. | ---------------------------------------------------------------------------------------------------- | 304|* Data selection routine for standard access | | 305| | | 306|* process SELECT command depending on the | | 307|* required material selection | | 308| if g_cnt_matnr_total > 0 and | | 309| g_cnt_matnr_total = g_cnt_matnr_i_eq. | | 310|* work with .. for all entries ... | | 311| select (g_t_fields) | | 312| into corresponding fields of table itab | | 313| from mkpf inner join mseg | | 314| on mkpf~mandt = mseg~mandt | | 315| and mkpf~mblnr = mseg~mblnr | | 316| and mkpf~mjahr = mseg~mjahr | | 317| for all entries in matnr | | 318| where matnr = matnr-low | | 319| and MKPF~BKTXT in BKTXT | | 320| and MKPF~BUDAT in BUDAT | | 321| and MSEG~BWART in BWART | | 322| and MSEG~CHARG in CHARG | | 323| and MSEG~EBELN in EBELN | | 324| and MSEG~KUNNR in KUNNR | | 325| and MSEG~LGORT in LGORT | | 326| and MSEG~LIFNR in LIFNR | | 327| and MSEG~SOBKZ in SOBKZ | | 328| and MSEG~UMWRK in UMWRK | | 329| and MKPF~USNAM in USNAM | | 330| and MKPF~VGART in VGART | | 331| and MSEG~WERKS in WERKS | | 332| and MKPF~XBLNR in XBLNR | | 333|. | |>>>>>| else. | | 335|* work with the select command as usual | | 336| select (g_t_fields) | | 337| into corresponding fields of table itab | | 338| from mkpf inner join mseg | | 339| on mkpf~mandt = mseg~mandt | | 340| and mkpf~mblnr = mseg~mblnr | | 341| and mkpf~mjahr = mseg~mjahr | | 342| WHERE MKPF~BKTXT in BKTXT | | 343| and MKPF~BUDAT in BUDAT | | 344| and MSEG~BWART in BWART | | 345| and MSEG~CHARG in CHARG | | 346| and MSEG~EBELN in EBELN | | 347| and MSEG~KUNNR in KUNNR | | 348| and MSEG~LGORT in LGORT | | 349| and MSEG~LIFNR in LIFNR | | 350| and MSEG~MATNR in MATNR | | 351| and MSEG~SOBKZ in SOBKZ | | 352| and MSEG~UMWRK in UMWRK | | 353| and MKPF~USNAM in USNAM | ---------------------------------------------------------------------------------------------------- |
#5
|
|||
|
|||
Hola Feredgar,
Con respecto a tu error en la transaccion Z deberías ver en la línea: >>>>> MOVE: w_dias_invent TO e_dinv. Seguramente el valor que está intentando mover de w_dias_invent a e_dinv es muy grande para el tipo de dato definido para variable receptora, por eso se produce el desbordamiento. Cambiando el tipo de dato definido para E_DINV debería sortear dicho dump. Para más seguridad puedes poner un breakpoint en esa línea de código y ver por debbug que valor intenta mover de una variable a otra y verificar esto que te comento. Espero te sea útil la información. Saludos. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|