zoukankan      html  css  js  c++  java
  • web dynpro message(备忘用)

     1     DATA lo_api_controller     TYPE REF TO if_wd_controller.
     2     DATA lo_message_manager    TYPE REF TO if_wd_message_manager.
     3 
     4     lo_api_controller ?= wd_this->wd_get_api( ).
     5     CALL METHOD lo_api_controller->get_message_manager
     6       RECEIVING
     7         message_manager = lo_message_manager.
     8 
     9     DATA lv_ebeln TYPE ebeln.
    10     lv_ebeln = WD_COMP_CONTROLLER->cust_get_if( ).
    11 
    12 
    13     IF lv_ebeln is INITIAL.
    14 
    15 * report message
    16 
    17       CALL METHOD lo_message_manager->REPORT_ERROR_MESSAGE
    18         EXPORTING
    19           message_text              = '请输入必要的字段!'
    20           show_as_popup             = 'X'
    21           cancel_navigation         = 'X'
    22 *        enable_message_navigation = 'X'
    23           .
    24     ENDIF.

    SUCCESS:

    复制代码
    method ONACTIONSUCCESS .
    * get message manager
    data lo_api_controller     type ref to if_wd_controller.
    data lo_message_manager    type ref to if_wd_message_manager.
    data: l_text type string.
    l_text = wd_Assist->get_text( wd_assist->text1 ).
    
    lo_api_controller ?= wd_This->Wd_Get_Api( ).
    
    CALL METHOD lo_api_controller->GET_MESSAGE_MANAGER
      RECEIVING
        MESSAGE_MANAGER = lo_message_manager
        .
    
    * report message
    CALL METHOD lo_message_manager->REPORT_SUCCESS
      EXPORTING
        MESSAGE_TEXT              = l_text   .
    
    
    endmethod.
    复制代码

    WARNING:

    复制代码
    method ONACTIONWARNING .
        data: l_text type string.
    
    *   get message manager
      l_text = wd_assist->get_text( wd_assist->text1 ).
      data lo_api_controller     type ref to if_wd_controller.
      data lo_message_manager    type ref to if_wd_message_manager.
    
      lo_api_controller ?= wd_This->Wd_Get_Api( ).
    
      CALL METHOD lo_api_controller->GET_MESSAGE_MANAGER
        RECEIVING
          MESSAGE_MANAGER = lo_message_manager
          .
    
    *   report message
      CALL METHOD lo_message_manager->REPORT_WARNING
        EXPORTING
          MESSAGE_TEXT              =  l_text.
    endmethod.
    复制代码

    ERROR:

    复制代码
    method ONACTIONERROR .
        data: l_text type string.
    
    *   get message manager
      l_text = wd_assist->get_text( wd_assist->text1 ).
      data lo_api_controller     type ref to if_wd_controller.
      data lo_message_manager    type ref to if_wd_message_manager.
    
      lo_api_controller ?= wd_This->Wd_Get_Api( ).
    
      CALL METHOD lo_api_controller->GET_MESSAGE_MANAGER
        RECEIVING
          MESSAGE_MANAGER = lo_message_manager
          .
    
    *   report message
      CALL METHOD lo_message_manager->REPORT_ERROR_MESSAGE
        EXPORTING
          MESSAGE_TEXT              = l_text
    endmethod.
    复制代码

    ERROR关联元素中的数据

    复制代码
    method ONACTIONERROR_PAR .
      data: l_text type string,
          l_value type I,
          l_params type wdr_name_value_list,
          l_param type wdr_name_value.
    
      wd_context->get_attribute( exporting name = 'INTEGER' importing value = l_value ).
    
      l_text = wd_Assist->get_text( wd_Assist->text2 ).
    
      l_param-name = 'P1'.
      l_param-value = l_value.
      append l_param to l_params.
    
    * get message manager
    data lo_api_controller     type ref to if_wd_controller.
    data lo_message_manager    type ref to if_wd_message_manager.
    
    lo_api_controller ?= wd_This->Wd_Get_Api( ).
    
    CALL METHOD lo_api_controller->GET_MESSAGE_MANAGER
      RECEIVING
        MESSAGE_MANAGER = lo_message_manager
        .
    
    * report message
    CALL METHOD lo_message_manager->REPORT_ERROR_MESSAGE
      EXPORTING
        MESSAGE_TEXT              =  l_text
        PARAMS                    =  l_params.
    endmethod.
    复制代码

    ERROR关联元素

    复制代码
    method ONACTIONERROR_LT_1000 .
      data: l_value type I,
            l_text type string.
      DATA lo_el_context TYPE REF TO if_wd_context_element.
      DATA ls_context TYPE wd_this->Element_context.
    
    
    wd_context->get_attribute( exporting name = 'INTEGER' importing value = l_value ).
    IF l_value < 1000.
      lo_el_context = wd_context->get_element( ).
       l_text = wd_Assist->get_text( wd_Assist->text1 ).
    *    get message manager
       data lo_api_controller     type ref to if_wd_controller.
       data lo_message_manager    type ref to if_wd_message_manager.
    
       lo_api_controller ?= wd_This->Wd_Get_Api( ).
    
       CALL METHOD lo_api_controller->GET_MESSAGE_MANAGER
         RECEIVING
           MESSAGE_MANAGER = lo_message_manager
           .
    
    *    report message
       CALL METHOD lo_message_manager->REPORT_ATTRIBUTE_ERROR_MESSAGE
         EXPORTING
           MESSAGE_TEXT              = l_text
           ELEMENT                   = lo_el_context
           ATTRIBUTE_NAME            = 'INTEGER'
           .
    
    
    
    ENDIF.
    endmethod.
    复制代码

    异常消息:

    EXCEPTION

    复制代码
    method ONACTIONERROR_EXCEPTION .
        data: l_exc type ref to cx_wdr_demo_messages.
      create object l_exc.
    *   get message manager
      data lo_api_controller     type ref to if_wd_controller.
      data lo_message_manager    type ref to if_wd_message_manager.
    
      lo_api_controller ?= wd_This->Wd_Get_Api( ).
    
      CALL METHOD lo_api_controller->GET_MESSAGE_MANAGER
        RECEIVING
          MESSAGE_MANAGER = lo_message_manager
          .
    
    *   report message
      CALL METHOD lo_message_manager->REPORT_EXCEPTION
        EXPORTING
          MESSAGE_OBJECT            = l_exc
    endmethod.
    复制代码

    异常关联元素

    复制代码
    method ONACTIONATTR_WARN_EXCEPTION .
        data: l_exc     type ref to cx_wdr_demo_messages,
            l_value   type I,
            l_element type ref to if_wd_context_element.
          wd_context->get_attribute( exporting name = 'INTEGER' importing value = l_value ).
      TRY.
         wd_assist->CHECK_VALUE_LT_1000( l_value ).
    
      CATCH cx_wdr_demo_messages into l_exc.
        l_element = wd_context->get_element( ).
    *     get message manager
    * get message manager
    data lo_api_controller     type ref to if_wd_controller.
    data lo_message_manager    type ref to if_wd_message_manager.
    
    lo_api_controller ?= wd_This->Wd_Get_Api( ).
    
    CALL METHOD lo_api_controller->GET_MESSAGE_MANAGER
      RECEIVING
        MESSAGE_MANAGER = lo_message_manager
        .
    
    * report message
    CALL METHOD lo_message_manager->REPORT_ATTRIBUTE_EXCEPTION
      EXPORTING
        MESSAGE_OBJECT            = l_exc
        ELEMENT                   = l_element
        ATTRIBUTE_NAME            =  'INTEGER'
    *    MSG_USER_DATA             =
        MESSAGE_TYPE             = lo_message_manager->CO_TYPE_WARNING
      ENDTRY.
    endmethod.
    复制代码
  • 相关阅读:
    短视频直播源码开发,防抖和节流的区别和实用场景
    游戏陪玩平台源码开发,语音通话中的噪音消除处理
    语音聊天室源码开发,如何实现回音消除功能?
    【代码解析】双向链表实现贪吃蛇游戏!简单易学,开发自己第一个游戏!
    程序员偷偷去面试,上班时却没发现身上还有其他公司的访客贴!
    编程语言年度观赏大戏,来看看内部撕X,你站谁?
    数组倒序排列,数组倒置,C语言数组倒序算法详解!
    编程领域这些禁术相当精彩,掌握其一,方可修炼编程大法!
    无处不在的网络编程,到底是如何工作的?今天我们一探究竟!
    【编程黑科技】gethostbyname()函数:通过域名获取IP地址!
  • 原文地址:https://www.cnblogs.com/mingdashu/p/4861527.html
Copyright © 2011-2022 走看看