SAP HANA - DUMP Assertion_Failed en pedidos SD

Muy buenas,

Me estoy encontrando con un error recurrente en producción en uno de mis clientes. De tanto en cuanto las transacciones de pedido de ventas dan el DUMP ASSERTION_FAILED. Si analizo el DUMP, el error está en un callstack ABAP. Resulta que se está llamando a un include que no es correcto.

El asunto es que sé como solucionarlo: basta con compilar el programa estándar de pedidos de ventas o la exit de pedidos. Una vez compilado (poniendo un Break, por ejemplo), las transacciones VA0x ya no dan DUMP.

El problema es que desconozco la causa. Investigando un poco:

  • No se han hecho transportes
  • No se han aplicado notas
  • No se han tocado las exits relacionadas

Alguna idea?

Saludos y muchas gracias!

Puedes por favor brindar más detalles sobre lo que está llamando?

Hola Raven

Se requiere más información, acabo de implementar S4Hana 1511 y aplicando una nota corregimos esto, pero no se nos presento en SD, como es tu caso.

Que versión tienes?, Es implementación o migración de R3?, cual es el programa que se cancela?.

Saludos,

Hola chicos,

la versión es SAP S/4HANA ON-PREMISE 1511 también.

El error sucede al acceder a cualquier transacción de pedido de ventas: VA0x. No así en factura. La descripción del DUMP es la siguiente:

Categoría              Error de programación ABAP
Err.tmpo.ejec.         ASSERTION_FAILED
Programa ABAP          CL_SLS_DATA_REF===============CP
Application Component  SD-SLS
Fecha y hora           20.02.2017 18:03:36

falla el método siguiente:

method create_instance.

    data:
      lt_callstack type abap_callstack.

    clear:
      ro_instance.

    call function 'SYSTEM_CALLSTACK'
      importing
        callstack = lt_callstack.

* Check authorized callers
    data(lv_callstack) = lt_callstack[ 2 ]-include.
    assert lv_callstack eq 'MV45AF0T_TRANSAKTION_INIT' or
           lv_callstack eq 'MV45AF0S_STARTWERTE_SETZEN'.

    so_instance = new #( ).

    ro_instance = so_instance.

  endmethod.

El tema es que intenta hacer el assert a un include diferente de los especificados (no recuerdo cual, no encuentro dónde me lo apunté :frowning: ).

Qué sucede? que como el programa de ventas no está compilado (aún no entiendo pq… ya que no ha habido transportes), no llama al include correcto y falla el callstack.

Como decía, se soluciona compilando de nuevo! es increíble…

He revisado notas de SAP y sí que he visto que hay algunas que hacen referencia a otros módulos con este error @DonnieDarko, pero no vi nada para SD :frowning:

1000 gracias!

Hola,

Es muy raro.

Tiro sólo una idea loca que se me acaba de ocurrir, no es nada certero.

¿No podrias hacer un pequeño cambio en alguna de las exits (algo asi como un comentario) y transportar,
para que se haga una regeneración/complicación?

Saludos

Hola Raven

Exacto, las notas que me toco implementar a mi hacen referencia a MM pero no así en SD. No obstante puedes revisar esta nota 1737650 que habla sobre el Stack de manera extensa.

Seguiré revisando si encuentro alguna nota relacionada a SD.

Saludos,

1 me gusta

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.