Quantcast
Channel: SCN : Discussion List - BOPF Application Framework
Viewing all articles
Browse latest Browse all 249

Error while creating location - BO - EHFND_LOCATIONS

$
0
0

Hi Experts,

 

Trying to create locations using BO - EHFND_LOCATIONS, but getting short dump, below is the code, could some one help me what I am missing.

 

  *--- Class object types

**DATA : lo_service TYPE REF TO /bobf/if_tra_service_manager,

**       lo_trans   TYPE REF TO /bobf/if_tra_transaction_mgr.

**

**DATA : lt_mod     TYPE /bobf/t_frw_modification,

**       ls_mod     TYPE /bobf/s_frw_modification.

**

**FIELD-SYMBOLS : <fs_location_revision> TYPE EHFNDS_LOC_REVISION.

 

DATA : lo_trans TYPE REF TO /bobf/if_tra_transaction_mgr,

        lo_serv  TYPE REF TO /bobf/if_tra_service_manager.

 

DATA : lt_mod   TYPE /bobf/t_frw_modification,

        ls_mod   TYPE /bobf/s_frw_modification.

 

DATA : lv_locid TYPE nrfrom.

 

*DATA : lr_root TYPE REF TO EHFNDS_LOC_ROOT,

*       lr_rev  TYPE REF TO data,

*       lr_text TYPE REF TO EHFNDS_LOC_REVISION_NAME_TEXT.

 

FIELD-SYMBOLS : <fs_location> TYPE ehfnds_loc_revision,

                 <fs_locroot>  TYPE ehfnds_loc_root,

                 <fs_locdesc>  TYPE ehfnds_loc_revision_name_text.

 

*--- Get instances of API

lo_trans = /bobf/cl_tra_trans_mgr_factory=>get_transaction_manager( ).

 

lo_serv  = /bobf/cl_tra_serv_mgr_factory=>get_service_manager(

                                           if_ehfnd_loc_c=>sc_bo_key ).

*--- Populate Root node

 

CALL FUNCTION 'NUMBER_GET_NEXT'

   EXPORTING

     nr_range_nr   = 'IE'

     object        = 'EHFNDLCNID'

   IMPORTING

     number        = lv_locid.

IF sy-subrc <> 0.

* Implement suitable error handling here

ENDIF.

 

 

ls_mod-node = if_ehfnd_loc_c=>sc_node-root.

ls_mod-change_mode = /bobf/if_frw_c=>sc_modify_create.

ls_mod-key   = /bobf/cl_frw_factory=>get_new_key( ).

*

CREATE DATA ls_mod-data TYPE ehfnds_loc_root.

ASSIGN      ls_mod-data->* TO <fs_locroot>.

 

<fs_locroot>-key        = ls_mod-key.

<fs_locroot>-id         = lv_locid.

 

APPEND ls_mod TO lt_mod.

CLEAR ls_mod.

 

*--- Revision node

ls_mod-node = if_ehfnd_loc_c=>sc_node-revision.

ls_mod-change_mode = /bobf/if_frw_c=>sc_modify_create.

ls_mod-key   = /bobf/cl_frw_factory=>get_new_key( ).

*

CREATE DATA ls_mod-data TYPE ehfnds_loc_revision.

ASSIGN      ls_mod-data->* TO <fs_location>.

*

<fs_location>-key = ls_mod-key.

<fs_location>-type = 'LOCATION'.

*<fs_location>-status = '02'.

<fs_location>-funct_loc_id = 'TEST_MIGRATION'.

 

APPEND ls_mod TO lt_mod.

CLEAR ls_mod.

 

*--- Revision text node

*--- Revision node

ls_mod-node = if_ehfnd_loc_c=>sc_node-revision_name_text.

ls_mod-change_mode = /bobf/if_frw_c=>sc_modify_create.

ls_mod-key   = /bobf/cl_frw_factory=>get_new_key( ).

*

CREATE DATA ls_mod-data TYPE ehfnds_loc_revision_name_text.

ASSIGN      ls_mod-data->* TO <fs_locdesc>.

*

<fs_locdesc>-key = ls_mod-key.

<fs_locdesc>-text = 'Test migration text'.

*<fs_locdesc>-status =

 

APPEND ls_mod TO lt_mod.

CLEAR ls_mod.

 

*--- call modify

lo_serv->modify(

   EXPORTING

     it_modification = lt_mod

*   IMPORTING

*     eo_change       =

*     eo_message      =

        ).

 

lo_trans->save(

*   EXPORTING

*     iv_transaction_pattern = /BOBF/IF_TRA_C=>GC_TP_SAVE_AND_CONTINUE

*   IMPORTING

*     ev_rejected            =

*     eo_change              =

*     eo_message             =

*     et_rejecting_bo_key    =

        ).


Viewing all articles
Browse latest Browse all 249

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>