Вы находитесь на странице: 1из 16

METHOD zet_user_creates_create_entity.

**TRY.
*CALL METHOD SUPER->ZET_USER_CREATES_CREATE_ENTITY
* EXPORTING
* IV_ENTITY_NAME =
* IV_ENTITY_SET_NAME =
* IV_SOURCE_NAME =
* IT_KEY_TAB =
** IO_TECH_REQUEST_CONTEXT =
* IT_NAVIGATION_PATH =
** IO_DATA_PROVIDER =
** IMPORTING
** ER_ENTITY =
* .
** CATCH /IWBEP/CX_MGW_BUSI_EXCEPTION .
** CATCH /IWBEP/CX_MGW_TECH_EXCEPTION .
**ENDTRY.

TYPES: BEGIN OF ty_user_create,


i_emailaddress TYPE char50,
i_fromdate TYPE dats,
i_location_name TYPE char40,
i_password TYPE char40,
i_phonenumber TYPE char30,
i_todate TYPE dats,
i_type TYPE char10,
e_success TYPE char255,
e_user TYPE char20,
END OF ty_user_create .

DATA : wa_create TYPE ty_user_create,


wa_entity LIKE er_entity.

DATA : lo_message TYPE REF TO /iwbep/if_message_container,


lx_bus_ex TYPE REF TO /iwbep/cx_mgw_busi_exception.

DATA : it_message TYPE zt_sd_message,


wa_message TYPE zssd_message.

DATA : lv_user TYPE char20,


lv_success TYPE char255,
lvv_success TYPE bapi_msg,
lvv_user TYPE symsgv.

io_data_provider->read_entry_data( IMPORTING es_data = wa_entity ).

CALL FUNCTION 'ZSD_USER_CREATE'


EXPORTING
i_type = wa_entity-i_type
i_emailaddress = wa_entity-i_emailaddress
i_phonenumber = wa_entity-i_phonenumber
i_password = wa_entity-i_password
i_fromdate = wa_entity-i_fromdate
i_todate = wa_entity-i_todate
i_location_name = wa_entity-i_location_name
IMPORTING
e_user = lv_user
* E_SUCCESS =
TABLES
t_returns = it_message.

lvv_success = lv_success.
lvv_user = lv_user.
lo_message = mo_context->get_message_container( ).
CALL METHOD me->/iwbep/if_mgw_conv_srv_runtime~get_message_container
RECEIVING
ro_message_container = lo_message.
IF it_message IS NOT INITIAL.

LOOP AT it_message INTO wa_message.


IF wa_message-type = 'E'.
CALL METHOD lo_message->add_message
EXPORTING
iv_msg_type = wa_message-type
iv_msg_text = wa_message-message
iv_msg_id = wa_message-id
iv_msg_number = wa_message-mnumber
iv_add_to_response_header = abap_true.

RAISE EXCEPTION TYPE /iwbep/cx_mgw_busi_exception


EXPORTING
message_container = lo_message.

ELSE.
CALL METHOD lo_message->add_message
EXPORTING
iv_msg_type = wa_message-type
iv_msg_text = wa_message-message
iv_msg_id = wa_message-id
iv_msg_number = wa_message-mnumber
iv_msg_v1 = lvv_user
iv_add_to_response_header = abap_true.
ENDIF.
ENDLOOP.
ENDIF.
IF sy-subrc = 0.
er_entity-e_user = lv_user.
er_entity-e_success = lv_success.
ENDIF.

ENDMETHOD.
METHOD zet_user_creates_get_entity.
**TRY.
*CALL METHOD SUPER->ZET_USER_CREATES_GET_ENTITY
* EXPORTING
* IV_ENTITY_NAME =
* IV_ENTITY_SET_NAME =
* IV_SOURCE_NAME =
* IT_KEY_TAB =
** IO_REQUEST_OBJECT =
** IO_TECH_REQUEST_CONTEXT =
* IT_NAVIGATION_PATH =
** IMPORTING
** ER_ENTITY =
** ES_RESPONSE_CONTEXT =
* .
** CATCH /IWBEP/CX_MGW_BUSI_EXCEPTION .
** CATCH /IWBEP/CX_MGW_TECH_EXCEPTION .
**ENDTRY.

DATA:
i_emailaddress TYPE char50,
i_fname TYPE char50,
i_fromdate TYPE char10,
i_lname TYPE char50,
i_password TYPE char20,
i_phonenumber TYPE char10,
i_shiptono TYPE char10,
i_todate TYPE char10,
i_type TYPE char10,
e_success TYPE char10,
e_user TYPE char20.
DATA : wa_keytab TYPE /iwbep/s_mgw_name_value_pair,
ls_wa TYPE zcl_zos_user_mpc=>ts_zet_user_create.
*Read the table
READ TABLE it_key_tab INTO wa_keytab INDEX 1.

er_entity-i_emailaddress = ls_wa-i_emailaddress.

ENDMETHOD.

method ZET_USER_CREATES_GET_ENTITYSET.
**TRY.
*CALL METHOD SUPER->ZET_USER_CREATES_GET_ENTITYSET
* EXPORTING
* IV_ENTITY_NAME =
* IV_ENTITY_SET_NAME =
* IV_SOURCE_NAME =
* IT_FILTER_SELECT_OPTIONS =
* IS_PAGING =
* IT_KEY_TAB =
* IT_NAVIGATION_PATH =
* IT_ORDER =
* IV_FILTER_STRING =
* IV_SEARCH_STRING =
** IO_TECH_REQUEST_CONTEXT =
** IMPORTING
** ET_ENTITYSET =
** ES_RESPONSE_CONTEXT =
* .
** CATCH /IWBEP/CX_MGW_BUSI_EXCEPTION .
** CATCH /IWBEP/CX_MGW_TECH_EXCEPTION .
**ENDTRY.
DATA : ls_wa TYPE ZCL_ZOS_USER_MPC=>Ts_ZET_USER_CREATE.
ls_wa-I_EMAILADDRESS = ls_wa-I_EMAILADDRESS.
ls_wa-I_LOCATION_NAME = ls_wa-I_LOCATION_NAME.

APPEND ls_wa to et_entityset.


endmethod.

method ZET_USER_MODIFYS_GET_ENTITY.
**TRY.
*CALL METHOD SUPER->ZET_USER_MODIFYS_GET_ENTITY
* EXPORTING
* IV_ENTITY_NAME =
* IV_ENTITY_SET_NAME =
* IV_SOURCE_NAME =
* IT_KEY_TAB =
** IO_REQUEST_OBJECT =
** IO_TECH_REQUEST_CONTEXT =
* IT_NAVIGATION_PATH =
** IMPORTING
** ER_ENTITY =
** ES_RESPONSE_CONTEXT =
* .
** CATCH /IWBEP/CX_MGW_BUSI_EXCEPTION .
** CATCH /IWBEP/CX_MGW_TECH_EXCEPTION .
**ENDTRY.

DATA : wa_keytab TYPE /iwbep/s_mgw_name_value_pair,


ls_wa TYPE ZCL_ZOS_USER_MPC=>TS_ZET_USER_MODIFY.
*Read the table
READ TABLE it_key_tab INTO wa_keytab INDEX 1.
*IF it_key_tab IS NOT INITIAL.

er_entity-I_NAME = ls_wa-I_NAME.
er_entity-I_EMAIL = ls_wa-I_EMAIL.
ER_ENTITY-I_FLAG = LS_WA-I_FLAG.
er_entity-I_PHONE = ls_wa-I_PHONE.
er_entity-I_PASSWORD = ls_wa-I_PASSWORD.
er_entity-I_FROMDATE = ls_wa-I_FROMDATE.
er_entity-I_TODATE = ls_wa-I_TODATE.

endmethod.

method ZET_USER_MODIFYS_GET_ENTITYSET.
**TRY.
*CALL METHOD SUPER->ZET_USER_MODIFYS_GET_ENTITYSET
* EXPORTING
* IV_ENTITY_NAME =
* IV_ENTITY_SET_NAME =
* IV_SOURCE_NAME =
* IT_FILTER_SELECT_OPTIONS =
* IS_PAGING =
* IT_KEY_TAB =
* IT_NAVIGATION_PATH =
* IT_ORDER =
* IV_FILTER_STRING =
* IV_SEARCH_STRING =
** IO_TECH_REQUEST_CONTEXT =
** IMPORTING
** ET_ENTITYSET =
** ES_RESPONSE_CONTEXT =
* .
** CATCH /IWBEP/CX_MGW_BUSI_EXCEPTION .
** CATCH /IWBEP/CX_MGW_TECH_EXCEPTION .
**ENDTRY.
DATA : wa_keytab TYPE /iwbep/s_mgw_name_value_pair,
ls_wa TYPE ZCL_ZOS_USER_MPC=>TS_ZET_USER_MODIFY.
*Read the table
READ TABLE it_key_tab INTO wa_keytab INDEX 1.
*IF it_key_tab IS NOT INITIAL.

ls_wa-I_NAME = ls_wa-I_NAME.
ls_wa-I_EMAIL = ls_wa-I_EMAIL.
LS_WA-I_FLAG = LS_WA-I_FLAG.
ls_wa-I_PHONE = ls_wa-I_PHONE.
ls_wa-I_PASSWORD = ls_wa-I_PASSWORD.
ls_wa-I_FROMDATE = ls_wa-I_FROMDATE.
ls_wa-I_TODATE = ls_wa-I_TODATE.
APPEND ls_wa TO ET_ENTITYSET.

endmethod.
METHOD zet_user_modifys_update_entity.
**TRY.
*CALL METHOD SUPER->ZET_USER_MODIFYS_UPDATE_ENTITY
* EXPORTING
* IV_ENTITY_NAME =
* IV_ENTITY_SET_NAME =
* IV_SOURCE_NAME =
* IT_KEY_TAB =
** IO_TECH_REQUEST_CONTEXT =
* IT_NAVIGATION_PATH =
** IO_DATA_PROVIDER =
** IMPORTING
** ER_ENTITY =
* .
** CATCH /IWBEP/CX_MGW_BUSI_EXCEPTION .
** CATCH /IWBEP/CX_MGW_TECH_EXCEPTION .
**ENDTRY.

TYPES: BEGIN OF ty_user_modify,


i_email TYPE char50,
i_flag TYPE char1,
i_fromdate TYPE dats,
i_name TYPE char40,
i_password TYPE char40,
i_phone TYPE char30,
i_todate TYPE dats,
e_success TYPE char1,
END OF ty_user_modify .

DATA : wa_keytab TYPE /iwbep/s_mgw_name_value_pair,


es_entity LIKE er_entity,
wa_user_modify TYPE ty_user_modify.
DATA : it_message TYPE zt_sd_message,
wa_message TYPE zssd_message.

DATA : lo_message TYPE REF TO /iwbep/if_message_container,


lx_bus_ex TYPE REF TO /iwbep/cx_mgw_busi_exception.

DATA : lv_name TYPE char40,


lv_success TYPE char1.

READ TABLE it_key_tab INTO wa_keytab WITH KEY name = 'IName'.


IF sy-subrc = 0.
lv_name = wa_keytab-value.
ENDIF.
io_data_provider->read_entry_data( IMPORTING es_data = es_entity ).

CALL FUNCTION 'ZSD_USER_MODIFY'


EXPORTING
i_name = lv_name
i_email = es_entity-i_email
i_phone = es_entity-i_phone
i_password = es_entity-i_password
i_fromdate = es_entity-i_fromdate
i_todate = es_entity-i_todate
i_flag = es_entity-i_flag
* IMPORTING
* E_SUCCESS =
TABLES
t_returns = it_message.

lo_message = mo_context->get_message_container( ).
CALL METHOD me->/iwbep/if_mgw_conv_srv_runtime~get_message_container
RECEIVING
ro_message_container = lo_message.
IF it_message IS NOT INITIAL.
LOOP AT it_message INTO wa_message.
IF wa_message-type = 'E'.
CALL METHOD lo_message->add_message
EXPORTING
iv_msg_type = wa_message-type
iv_msg_text = wa_message-message
iv_msg_id = wa_message-id
iv_msg_number = wa_message-mnumber
iv_add_to_response_header = abap_true.

RAISE EXCEPTION TYPE /iwbep/cx_mgw_busi_exception


EXPORTING
message_container = lo_message.

ELSE.
CALL METHOD lo_message->add_message
EXPORTING
iv_msg_type = wa_message-type
iv_msg_text = wa_message-message
iv_msg_id = wa_message-id
iv_msg_number = wa_message-mnumber
iv_add_to_response_header = abap_true.
ENDIF.
ENDLOOP.
ENDIF.

ENDMETHOD.
METHOD zet_user_searchs_get_entityset.
**TRY.
*CALL METHOD SUPER->ZET_USER_SEARCHS_GET_ENTITYSET
* EXPORTING
* IV_ENTITY_NAME =
* IV_ENTITY_SET_NAME =
* IV_SOURCE_NAME =
* IT_FILTER_SELECT_OPTIONS =
* IS_PAGING =
* IT_KEY_TAB =
* IT_NAVIGATION_PATH =
* IT_ORDER =
* IV_FILTER_STRING =
* IV_SEARCH_STRING =
** IO_TECH_REQUEST_CONTEXT =
** IMPORTING
** ET_ENTITYSET =
** ES_RESPONSE_CONTEXT =
* .
** CATCH /IWBEP/CX_MGW_BUSI_EXCEPTION .
** CATCH /IWBEP/CX_MGW_TECH_EXCEPTION .
**ENDTRY.

DATA : lv_emailid TYPE char50,


lv_name TYPE char50,
lv_phone TYPE char30,
ls_filter TYPE /iwbep/s_mgw_select_option,
ls_select_options TYPE /iwbep/s_cod_select_option,
tt_set TYPE zt_sd_user_detail.

lv_emailid = io_tech_request_context->get_filter( )->get_filter_string( ).


READ TABLE it_filter_select_options
INTO ls_filter
WITH KEY property = 'IEmailAddress'.
IF sy-subrc = 0.
LOOP AT ls_filter-select_options INTO ls_select_options.
lv_emailid = ls_select_options-low.
ENDLOOP.
ENDIF.
READ TABLE it_filter_select_options
INTO ls_filter
WITH KEY property = 'IName'.

IF sy-subrc = 0.
LOOP AT ls_filter-select_options INTO ls_select_options.
lv_name = ls_select_options-low.
ENDLOOP.
ENDIF.

READ TABLE it_filter_select_options


INTO ls_filter
WITH KEY property = 'IPhone'.

IF sy-subrc = 0.
LOOP AT ls_filter-select_options INTO ls_select_options.
lv_phone = ls_select_options-low.
ENDLOOP.

ENDIF.

CALL FUNCTION 'ZSD_USER_SEARCH'


EXPORTING
i_name = lv_name
i_email_address = lv_emailid
i_phone = lv_phone
TABLES
e_user_details = tt_set.

IF sy-subrc = 0.
MOVE-CORRESPONDING tt_set TO et_entityset.
ENDIF.

ENDMETHOD.

Вам также может понравиться