Symptom
Category ABAP programming error
Runtime Errors OBJECTS_OBJREF_NOT_ASSIGNED_NO
Except. CX_SY_REF_IS_INITIAL
ABAP Program CL_SWF_RUN_WFM================CP
Application Component BC-BMT-WFM
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
|Short Text |
| Access using a 'ZERO' object reference is not possible. |
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
|What happened? |
| Error in the ABAP application program. |
| |
| The current ABAP program "CL_SWF_RUN_WFM================CP" had to be |
| terminated because it found a |
| statement that could not be executed. |
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
|Error analysis |
| An exception has occurred in class "CX_SY_REF_IS_INITIAL". This exception was |
| not caught |
| in procedure "READ_WORKFLOW_DEFINITION" "(METHOD)" or propagated by a RAISING |
| clause. |
| Since the caller of the procedure could not have anticipated this |
| exception, the current program was terminated. |
| The reason for the exception occurring was: |
| The reason for the exception is: |
| You are trying to access a component with a 'ZERO' object reference |
| (points to 'nothing'). |
| An object reference must point to an object (an instance of a class) |
| before it can be used to access a component. The reference has either |
| never been set, or it was set to 'ZERO' with a CLEAR statement. |
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
|How to correct the error |
| If the exception cannot be prevented, "CX_SY_REF_IS_INITIAL" must be caught |
| within procedure "READ_WORKFLOW_DEFINITION" "(METHOD)" or declared in the procedure's |
| RAISING clause. |
| To prevent the exception, note the following: |
| |
| If the error occurs in one of your own ABAP programs or an SAP program |
| that you have modified, try to correct the error yourself. |
| If the error occurs in a non-modfied SAP program, you might be able to |
| find a solution in the SAP Notes system. If you have access to the SAP |
| Notes system, check there first using the following keywords: |
| |
| "OBJECTS_OBJREF_NOT_ASSIGNED_NO" CX_SY_REF_IS_INITIAL |
| "CL_SWF_RUN_WFM================CP" bzw. CL_SWF_RUN_WFM================CM00F |
| "READ_WORKFLOW_DEFINITION" |
| If you cannot solve the problem yourself, please send the following |
| information to SAP: |
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
|Chain of Exception Objects |
----------------------------------------------------------------------------------------------------
|Level Class |
|Attrib. Name Value |
----------------------------------------------------------------------------------------------------
|1 CX_SY_REF_IS_INITIAL |
|(Program) CL_SWF_RUN_WFM================CP |
|(Include) CL_SWF_RUN_WFM================CM00F |
|(Row) 44 |
|(Short Text) Dereferencing of the NULL reference |
|(Long Text) An attempt was made to execute a dynamic method callon an |
| initial(NULL-) object reference. The reference must refer to an obj|
| ect. |
|IS_RESUMABLE |
|KERNEL_ERRID |
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
|Information on where terminated |
| The termination occurred in ABAP program or include |
| "CL_SWF_RUN_WFM================CP", in "READ_WORKFLOW_DEFINITION". The |
| main program was "SAPMSSY1". |
| |
| In the source code, the termination point is in line 44 of include |
| "CL_SWF_RUN_WFM================CM00F". |
| include "CL_SWF_RUN_WFM================CM00F". |
| The termination is due to exception "CX_SY_REF_IS_INITIAL" occurring in |
| procedure "READ_WORKFLOW_DEFINITION" "(METHOD)", |
| but not being handled locally there or being declared in the RAISING |
| clause. |
| The procedure is in program "CL_SWF_RUN_WFM================CP". Its source |
| code begins in line 1 of |
| include "CL_SWF_RUN_WFM================CM00F". |
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
|Source Code Extract |
----------------------------------------------------------------------------------------------------
|Line |Code |
----------------------------------------------------------------------------------------------------
| 14| l_exetyp = CONV string( swfco_exetyp_active ). |
| 15| ELSE. |
| 16| l_exetyp = CONV string( me->ms_definition-task_handle->exetyp ). |
| 17| ENDIF. |
| 18| |
| 19| ms_definition-workflow = get_run_definition( ). |
| 20| IF me->m_swp_header->*-flex_id IS NOT INITIAL. |
| 21| DATA(lo_factory) = cl_swf_run_definition_factory=>get_instance_for_runtime( abap_t|
| 22| DATA(lo_flex_factory) = lo_factory->get_flex_factory( io_defintion = me->ms_defini|
| 23| ms_definition-flex_workflow = lo_flex_factory->get_workflow( |
| 24| im_flex_id = CONV #( me->m_swp_header->*-flex_id ) |
| 25| im_flex_type = CONV #( me->m_swp_header->*-flex_typ|
| 26| im_process_mode = if_swf_flex_workflow=>c_mode_exec|
| 27| ms_definition-flex_workflow->set_workflow_id( m_wf_id ). |
| 28| ENDIF. |
| 29| DATA(ls_definition) = me->ms_definition-workflow->get_definition_entities( ms_defini|
| 30| |
| 31| me->mt_nodes = ls_definition-nodes. |
| 32| set_def_header( ). |
| 33| CALL METHOD me->determine_process_category. |
| 34| me->mt_lines = ls_definition-lines. |
| 35| me->mt_steps = ls_definition-steps. |
| 36| |
| 37| CHECK me->m_wfm_mode NE c_wfm_mode_cancel. |
| 38| CHECK me->m_wfm_mode NE c_wfm_mode_complete. |
| 39| |
| 40| me->mt_methods = ls_definition-methods. |
| 41| me->mt_def_conditions = ls_definition-conditions_wfm. |
| 42| me->mt_all_binding_defs = ls_definition-bindings. |
| 43| IF me->ms_definition-task_handle->task EQ 'WS00800303'. |
|>>>>>| DATA(lv_highest_version) = lo_factory->get_highest_active_version( CONV #( me->ms_|
| 45| IF lv_highest_version NE ms_definition-task_handle->properties-version. |
| 46| DATA(lo_workflow) = lo_factory->get_definition( im_task = CONV #( me->ms_def|
| 47| im_version = lv_highest_version|
| 48| im_exetyp = l_exetyp ). |
| 49| DATA(ls_definition_highest) = lo_workflow->get_definition_entities( ). |
| 50| me->mt_def_events = ls_definition_highest-events. |
| 51| ELSE. |
| 52| me->mt_def_events = ls_definition-events. |
| 53| ENDIF. |
| 54| ELSE. |
| 55| me->mt_def_events = ls_definition-events. |
| 56| IF me->m_swp_header->*-flex_id IS NOT INITIAL. |
| 57| lv_highest_version = lo_factory->get_highest_active_version( CONV #( me->ms_defi|
| 58| IF lv_highest_version NE ms_definition-task_handle->properties-version. |
| 59| lo_workflow = lo_factory->get_definition( im_task = CONV #( me->ms_definit|
| 60| im_version = lv_highest_version |
| 61| im_exetyp = l_exetyp ). |
| 62| ls_definition_highest = lo_workflow->get_definition_entities( ). |
| 63| LOOP AT ls_definition_highest-events INTO DATA(ls_event_highest) WHERE rtype_|
----------------------------------------------------------------------------------------------------
Read more...
Environment
- SAP Business Workflow
- SAP NetWeaver
- SAP Web Application Server for SAP S/4 HANA
- ABAP PLATFORM - Application Server ABAP
Product
Keywords
About this page
This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).Search for additional results
Visit SAP Support Portal's SAP Notes and KBA Search.
SAP Knowledge Base Article - Preview