ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

How to make the message displayed for only a given times in UI

2019-04-21 19:53:08  阅读:221  来源: 互联网

标签:given WD ZCL make displayed HANDLER MESSAGE TYPE class


Created by Wang, Jerry, last modified on Dec 06, 2014

class ZCL_MESSAGE_HANDLER definition
public
final
create private .
public section.
interfaces IF_BSP_WD_MESSAGE_HANDLER .
class-methods GET_INSTANCE
returning
value(RO_INSTANCE) type ref to ZCL_MESSAGE_HANDLER .
protected section.
private section.
class-data SO_INSTANCE type ref to ZCL_MESSAGE_HANDLER .
class-data SV_COUNT type I .
constants CV_COUNT type I value 3. "#EC NOTEXT
methods CONSTRUCTOR .
ENDCLASS.
 
CLASS ZCL_MESSAGE_HANDLER IMPLEMENTATION.

* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Instance Private Method ZCL_MESSAGE_HANDLER->CONSTRUCTOR
* +-------------------------------------------------------------------------------------------------+
* +--------------------------------------------------------------------------------------</SIGNATURE>
method CONSTRUCTOR.
sv_count = 0.
endmethod.

* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Static Public Method ZCL_MESSAGE_HANDLER=>GET_INSTANCE
* +-------------------------------------------------------------------------------------------------+
* | [<-()] RO_INSTANCE TYPE REF TO ZCL_MESSAGE_HANDLER
* +--------------------------------------------------------------------------------------</SIGNATURE>
method GET_INSTANCE.
IF so_instance IS INITIAL.
CREATE OBJECT so_instance.
ENDIF.
ro_instance = so_instance.
endmethod.

* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Instance Public Method ZCL_MESSAGE_HANDLER->IF_BSP_WD_MESSAGE_HANDLER~HANDLE_MESSAGE
* +-------------------------------------------------------------------------------------------------+
* | [--->] IS_MESSAGE TYPE BSP_WD_MESSAGE
* +--------------------------------------------------------------------------------------</SIGNATURE>
method IF_BSP_WD_MESSAGE_HANDLER~HANDLE_MESSAGE.
endmethod.

* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Instance Public Method ZCL_MESSAGE_HANDLER->IF_BSP_WD_MESSAGE_HANDLER~VERIFY_MESSAGE
* +-------------------------------------------------------------------------------------------------+
* | [--->] IS_MESSAGE TYPE BSP_WD_MESSAGE
* | [<-()] RV_IS_VALID TYPE ABAP_BOOL
* +--------------------------------------------------------------------------------------</SIGNATURE>
method IF_BSP_WD_MESSAGE_HANDLER~VERIFY_MESSAGE.
IF sv_count = cv_count.
rv_is_valid = abap_false.
sv_count = 0.
RETURN.
ENDIF.
sv_count = sv_count + 1.
rv_is_valid = abap_true.
endmethod.
ENDCLASS.
 
 
 
class ZCL_IM_CL_JERRY_CREATE definition
public
final
create public .
public section.
interfaces IF_EX_CRM_DOCUMENTS .
protected section.
private section.
type-pools ABAP .
class-data SV_IS_IN_BADI type ABAP_BOOL .
ENDCLASS.
 
CLASS ZCL_IM_CL_JERRY_CREATE IMPLEMENTATION.

* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Instance Public Method ZCL_IM_CL_JERRY_CREATE->IF_EX_CRM_DOCUMENTS~CARRY_OUT_ACTION
* +-------------------------------------------------------------------------------------------------+
* | [--->] CHANGED_DOCUMENTS TYPE CRMT_KW_DOCUMENT_CHANGE
* +--------------------------------------------------------------------------------------</SIGNATURE>
METHOD if_ex_crm_documents~carry_out_action.
CONSTANTS: cv_max_size TYPE int4 VALUE 20480. "20KB
CHECK sy-uname = 'WANGJER'.
DATA: lt_loios TYPE skwf_ios,
ls_error TYPE skwf_error,
lv_size TYPE sdok_fsize,
lt_badios TYPE skwf_ioerrs.
READ TABLE changed_documents ASSIGNING FIELD-SYMBOL(<first_line>) INDEX 1.
CHECK sy-subrc = 0.
CHECK <first_line>-action = 'CREATE_DOCUMENT'.
DATA(ls_bo) = VALUE sibflporb( instid = <first_line>-instidbor
typeid = <first_line>-typeidbor
catid = <first_line>-catidbor ).
DATA(ls_loios) = VALUE skwf_io( objtype = <first_line>-objtype class = <first_line>-class objid = <first_line>-objid ).
APPEND ls_loios TO lt_loios.
CALL METHOD cl_crm_documents=>get_file_info
EXPORTING
loio = ls_loios
IMPORTING
file_size = lv_size.
CHECK lv_size >= cv_max_size.
CALL METHOD cl_crm_documents=>delete
EXPORTING
business_object = ls_bo
ios = lt_loios
IMPORTING
bad_ios = lt_badios
error = ls_error.
COMMIT WORK AND WAIT.
DATA(lo_service) = cl_bsp_wd_message_service=>get_instance( ).
DATA(lo_message) = zcl_message_handler=>get_instance( ).
lo_service->add_message( EXPORTING iv_msg_type = 'E' iv_msg_id = 'ZCM_JERRY_TEST' iv_msg_number = '000'
iv_verification = lo_message ).
ENDMETHOD.
ENDCLASS.

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

标签:given,WD,ZCL,make,displayed,HANDLER,MESSAGE,TYPE,class
来源: https://blog.csdn.net/i042416/article/details/89437104

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有