Да, спасибо дело было именно в этом. Теперь вот такой вопрос, загрузил материалы, хочу потестить их с системе, создать обычную цепочку документов, после создания заказа на поставку делаю ПМ, и падаю в дамп:
ДинамОшибка CALL_METHOD_NOT_IMPLEMENTED Исключ. CX_SY_DYN_CALL_ILLEGAL_METHOD Дата и время 15.10.2012 09:41:07
Краткий текст Call of a method or kernel Method that has not been implemented
Что произошло? Error in the ABAP Application Program
The current ABAP program "CL_EX_GLT0_CLEARING_ITEMS=====CP" had to be terminated because it has come across a statement that unfortunately cannot be executed.
Анализ ошибки An exception occurred that is explained in detail below. The exception, which is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_METHOD', was not caught in procedure "IF_EX_GLT0_CLEARING_ITEMS~BADI_NEEDS_TRACE_DATA" "(METHOD)", nor was it propagated by a RAISING clause. Since the caller of the procedure could not have anticipated that the exception would occur, the current program is terminated. The reason for the exception is: It was tried to call a not-implemented method "IF_EX_GLT0_CLEARING_ITEMS~BADI_NEEDS_TRACE_DATA" in the class "CL_IM_FMFG_SPLBALANCING_AC".
How can this occur?
1. Implementation of Global Interfaces
If a class implements a global interface, not all methods must be implemented. Then there will be no syntax error, but a warning at the implementing class. A runtime error only occurs when a not-implemented method is called. This is what happened here.
This technique allows to add a method in an interface that can be implemented bit by bit. A runtime error only occurs as early as a not-implemented method is called.
2. Calling abstract Methods in the Contructor
When the CONSTRUCTOR of a class is running, no 'late binding' of the implementing class. A runtime error only occurs when a not-implemented method is called. This is what happened here.
This technique allows to add a method in an interface that can be implemented bit by bit. A runtime error only occurs as early as a not-implemented method is called.
2. Calling abstract Methods in the Contructor
When the CONSTRUCTOR of a class is running, no 'late binding' of the methods occurs, that means, over-defined methods are not called, but only the own methods of the class (or of superclasses). This can lead to the situation that it is tried to call an absolute method. This situation can only be detected at runtime and causes this error message.
3. Calling a Kernel Method with the Implementation FAIL
When defining a Kernel method, it is possible to specify a list of C modules. If FAIL is specified as last C module and all C modules in the list do not exist in the Kernel, an exception is raised at runtime.
очное утверждение RAISING в интерфейсе: Программа CL_EX_GLT0_CLEARING_ITEMS=====CP Include CL_EX_GLT0_CLEARING_ITEMS=====CM003 Строка 1 Тип модуля (METHOD) Имя модуля IF_EX_GLT0_CLEARING_ITEMS~BADI_NEEDS_TRACE_DATA
Попросил программиста посмотреть как будет время, может кто знает в чем может быть дело? А вообще просто даже обьяснить, как может повлиять способ создания материала в системе на бизнес цепочки? При просмотре материала mm03, я вижу нормальный правильный (как хочу видеть) материал, но при ПМ дамп.
|
|