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.