{"id":272657,"date":"2016-01-22T11:07:08","date_gmt":"2016-01-22T08:07:08","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=272657"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=272657","title":{"rendered":"ABAP: \u041a\u0440\u0430\u0441\u0438\u0432\u044b\u0439"},"content":{"rendered":"<p>       <b>\u042d\u0442\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u043b\u044f ABAP-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0432 SAP ERP \u0438 \u0432\u0441\u0435\u043c \u0438\u043c \u0441\u043e\u0447\u0443\u0432\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c.<\/b><\/p>\n<p>  \u041d\u0435\u043c\u043d\u043e\u0433\u0438\u0435 \u0437\u043d\u0430\u044e\u0442, \u0447\u0442\u043e \u0432 ALV \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c HTML-\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438. \u0415\u0449\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0437\u043d\u0430\u044e\u0442, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u0432\u044b\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a, \u043e\u043d \u0436\u0435 select-box, \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0439 \u043f\u043e \u0441\u0443\u0442\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0444\u0438\u0447\u0438, \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0433\u043e \u0432\u0430\u0448\u0435\u0433\u043e Z-\u043a\u043e\u0434\u0430.<\/p>\n<p>  \u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/edf\/268\/06c\/edf26806c1154902b05c6c7152c5874a.png\"\/><\/p>\n<p>  \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434 \u043a\u0430\u0442.<br \/>  <a name=\"habracut\"><\/a><br \/>  \u041f\u043e\u0435\u0445\u0430\u043b\u0438! \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435:<\/p>\n<p>   \u2014 \u0412\u044b\u0445\u043e\u0434\u043d\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u043d\u0430\u0448\u0435\u0433\u043e \u043e\u0442\u0447\u0435\u0442\u0430, \u043f\u0443\u0441\u0442\u044c \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0432\u0441\u0435\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b MARA; <br \/>   \u2014 \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u0432 \u0441\u0435\u043b\u0435\u043a\u0442-\u0431\u043e\u043a\u0441\u0435;<br \/>   \u2014 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 \u0441 \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u0434\u043b\u044f HTML-header;<br \/>   \u2014 \u043a\u043b\u0430\u0441\u0441-handler, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u0438 \u043e\u0431\u044a\u0435\u043a\u0442 handler.<\/p>\n<pre><code class=\"html\">*----------------------------------------------------------------------* *  \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 *----------------------------------------------------------------------* TYPE-POOLS: slis. TABLES:  mara.  DATA:    gt_data  TYPE TABLE OF mara WITH HEADER LINE,    gv_matnr TYPE mara-matnr.  CONSTANTS:    gc_form_top  TYPE slis_formname VALUE 'DO_HTML_TOP_OF_PAGE'.   *----------------------------------------------------------------------* *       CLASS cl_my_event_handler DEFINITION *----------------------------------------------------------------------*  CLASS cl_my_event_handler DEFINITION.   PUBLIC SECTION.     METHODS:       handle_selections FOR EVENT selected OF cl_dd_select_element                                     IMPORTING sender. ENDCLASS.   DATA:     go_hand1  TYPE REF TO cl_my_event_handler. <\/code><\/pre>\n<p>  \u041d\u0430\u043f\u0438\u0448\u0435\u043c \u0433\u043b\u0430\u0432\u043d\u0443\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043e\u0442\u0447\u0435\u0442\u0430 \u0438 \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0432\u044b\u0432\u043e\u0434\u0435 \u043e\u0442\u0447\u0435\u0442\u0430. \u0417\u0434\u0435\u0441\u044c \u043e\u0441\u043e\u0431\u043e \u043e\u0442\u043c\u0435\u0447\u0443, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 handler \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c HTML-\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a: i_callback_html_top_of_page = gc_form_top.<\/p>\n<pre><code class=\"html\">*----------------------------------------------------------------------* *  \u041e\u0442\u0447\u0435\u0442 *----------------------------------------------------------------------* SELECT-OPTIONS:     so_matnr FOR mara-matnr.  INITIALIZATION.    PERFORM init.  START-OF-SELECTION.    PERFORM get_data.  END-OF-SELECTION.    PERFORM reuse_alv.  *&---------------------------------------------------------------------* *&      Form  init *&---------------------------------------------------------------------* FORM init.   &quot; -------------------------------------------------- &quot;   &quot; \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043e\u0431\u044a\u0435\u043a\u0442 \u0445\u0435\u043d\u0434\u043b\u0435\u0440\u0430   &quot; -------------------------------------------------- &quot;   CREATE OBJECT go_hand1. ENDFORM.  *&---------------------------------------------------------------------* *&      Form  get_data *&---------------------------------------------------------------------* FORM get_data.    &quot; -------------------------------------------------- &quot;   &quot; \u041f\u043e\u043b\u0443\u0447\u0438\u043c \u0434\u0430\u043d\u043d\u044b\u0435   &quot; -------------------------------------------------- &quot;   SELECT *     FROM mara     INTO TABLE gt_data    WHERE matnr    IN so_matnr.   CHECK: sy-subrc IS INITIAL.   SORT:  gt_data  BY matnr.  ENDFORM.                    &quot;get_data  *&---------------------------------------------------------------------* *&      Form  reuse_alv *&---------------------------------------------------------------------* FORM reuse_alv.    DATA: lt_fieldcat TYPE TABLE OF lvc_s_fcat.   CHECK gt_data[] IS NOT INITIAL.    &quot; -------------------------------------------------- &quot;   &quot; \u0412\u044b\u0432\u043e\u0434 ALV   &quot; -------------------------------------------------- &quot;   CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'     EXPORTING       i_structure_name       = 'MARA'     CHANGING       ct_fieldcat            = lt_fieldcat[]     EXCEPTIONS       inconsistent_interface = 1       program_error          = 2       OTHERS                 = 3.    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'     EXPORTING       i_callback_program          = sy-repid       i_callback_html_top_of_page = gc_form_top       it_fieldcat_lvc             = lt_fieldcat[]       i_save                      = 'A'     TABLES       t_outtab                    = gt_data[].  ENDFORM.                    &quot;reuse_alv <\/code><\/pre>\n<p>  \u0414\u043b\u044f HTML-\u0445\u0435\u0434\u0435\u0440\u0430 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u043c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0435. \u0412\u044b\u0437\u043e\u0432\u0435\u043c \u0438\u0437 \u043d\u0435\u0435 \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u043d\u0430\u0448\u0443 \u043a\u0440\u0430\u0441\u043e\u0442\u0443:<\/p>\n<pre><code class=\"html\">*&---------------------------------------------------------------------* *&      Form  do_html_top_of_page *&---------------------------------------------------------------------* FORM do_html_top_of_page USING p_doc TYPE REF TO cl_dd_document.    DATA: lo_form  TYPE REF TO cl_dd_form_area,               lo_sele  TYPE REF TO cl_dd_select_element.    &quot; -------------------------------------------------- &quot;   &quot; \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043e\u0431\u043b\u0430\u0441\u0442\u044c   &quot; -------------------------------------------------- &quot;   CALL METHOD p_doc-&gt;add_form     IMPORTING       formarea = lo_form.    &quot; -------------------------------------------------- &quot;   &quot; \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0441\u0435\u043b\u0435\u043a\u0442-\u0431\u043e\u043a\u0441   &quot; -------------------------------------------------- &quot;   PERFORM add_casebox      TABLES        gt_data      CHANGING        gv_matnr        lo_form        lo_sele.  ENDFORM.                    &quot;do_html_top_of_page <\/code><\/pre>\n<p>  \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u0435\u043b\u0435\u043a\u0442-\u0431\u043e\u043a\u0441\u0430. \u0417\u0434\u0435\u0441\u044c \u043e\u0442\u043c\u0435\u0447\u0443, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0432 \u043e\u0442\u0447\u0435\u0442\u0435 \u0431\u044b\u043b\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430, \u0441\u043d\u044f\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440\u044b, \u0437\u0430\u0447\u0438\u0449\u0430\u0435\u043c \u043d\u0430\u0448\u0443 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e (gv_matnr) \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c. \u041f\u043e\u0442\u043e\u043c \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043b\u0438\u043d\u0438\u044e, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0444\u0438\u043b\u044c\u0442\u0440\u0430, \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442 \u043d\u0430\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432 \u043d\u0435\u043c, \u0438 \u0441\u0430\u043c \u0444\u0438\u043b\u044c\u0442\u0440 \u043d\u0430 \u0444\u043e\u0440\u043c\u0443, \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043b\u0438\u043d\u0438\u044e:<\/p>\n<pre><code class=\"html\">*&---------------------------------------------------------------------* *&      Form  add_casebox *&---------------------------------------------------------------------* FORM add_casebox *&---------------------------------------------------------------------*      TABLES         it_data    STRUCTURE mara      CHANGING         iv_matnr   TYPE mara-matnr         lo_form    TYPE REF TO cl_dd_form_area         lo_selec   TYPE REF TO cl_dd_select_element. *&---------------------------------------------------------------------*    DATA: lt_opt_tab TYPE sdydo_option_tab,         lv_text    TYPE sdydo_text_element.  *----------------------------------------------------------------------*    DO.     CASE sy-index.       WHEN 1.          &quot; -------------------------------------------------- &quot;         &quot; \u041e\u0442\u043c\u0435\u043d\u0430 \u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432         &quot; -------------------------------------------------- &quot;         CHECK sy-ucomm  EQ '&ILD'.         CLEAR: iv_matnr.        WHEN 2.          &quot; -------------------------------------------------- &quot;         &quot; \u041d\u0430\u0447\u0430\u043b\u043e \u043b\u0438\u043d\u0438\u0438         &quot; -------------------------------------------------- &quot;         CALL METHOD lo_form-&gt;line_with_layout           EXPORTING             start = 'X'.        WHEN 3.          &quot; -------------------------------------------------- &quot;         &quot; \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u0435\u043b\u0435\u043a\u0442-\u0431\u043e\u043a\u0441\u0430         &quot; -------------------------------------------------- &quot;         lv_text = '\u041c\u0430\u0442\u0435\u0440\u0438\u0430\u043b:'.         CALL METHOD lo_form-&gt;add_text           EXPORTING             text = lv_text.        WHEN 4.          &quot; -------------------------------------------------- &quot;         &quot; \u0420\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c         &quot; -------------------------------------------------- &quot;         CALL METHOD lo_form-&gt;add_gap           EXPORTING             width = 2.        WHEN 5.          &quot; -------------------------------------------------- &quot;         &quot; \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439         &quot; -------------------------------------------------- &quot;         PERFORM fill_mat_tab             TABLES it_data           CHANGING iv_matnr                    lt_opt_tab.        WHEN 6.          &quot; -------------------------------------------------- &quot;         &quot; \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u0430\u043c \u0441\u0435\u043b\u0435\u043a\u0442-\u0431\u043e\u043a\u0441         &quot; -------------------------------------------------- &quot;         CALL METHOD lo_form-&gt;add_select_element           EXPORTING             OPTIONS        = lt_opt_tab             value          = 'P'           IMPORTING             select_element = lo_selec.        WHEN 7.          &quot; -------------------------------------------------- &quot;         &quot; \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043c \u0445\u0435\u043d\u0434\u043b\u0435\u0440        &quot; -------------------------------------------------- &quot;         SET HANDLER go_hand1-&gt;handle_selections                 FOR lo_selec.         WHEN 8.          &quot; -------------------------------------------------- &quot;         &quot; \u041e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u0435 \u043b\u0438\u043d\u0438\u0438         &quot; -------------------------------------------------- &quot;         CALL METHOD lo_form-&gt;line_with_layout           EXPORTING             end = 'X'.         WHEN OTHERS.         EXIT.     ENDCASE.   ENDDO.  ENDFORM.  <\/code><\/pre>\n<p>  \u0412 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043f\u043e \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0444\u0438\u043b\u044c\u0442\u0440\u0430 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u044b\u0431\u0440\u0430\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u043e \u0431\u044b\u043b\u043e \u043f\u0435\u0440\u0432\u044b\u043c \u0432 \u0441\u043f\u0438\u0441\u043a\u0435. \u041f\u043e\u0442\u043e\u043c \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0412\u0441\u0435, \u0435\u0441\u043b\u0438 \u0443 \u043d\u0430\u0441 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043e\u0434\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u0418 \u043f\u043e\u0442\u043e\u043c \u0432\u0441\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438\u0437 \u0442\u0430\u0431\u043b\u0438\u0446\u044b:<\/p>\n<pre><code class=\"html\">*&---------------------------------------------------------------------* *&      Form  fill_mat_tab *&---------------------------------------------------------------------* FORM fill_mat_tab *&---------------------------------------------------------------------*           TABLES              it_data   STRUCTURE mara         CHANGING              iv_matnr  TYPE matnr              it_optab  TYPE sdydo_option_tab. *&---------------------------------------------------------------------*    DATA: ls_opt   TYPE sdydo_option.   REFRESH: it_optab.  *----------------------------------------------------------------------*    DO.     CASE sy-index.       WHEN 1.          &quot; -------------------------------------------------- &quot;         &quot; \u0421\u043e\u0445\u0440\u0430\u043d\u0438\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0435\u0441\u043b\u0438 \u043e\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u043d\u043e         &quot; -------------------------------------------------- &quot;         CHECK iv_matnr IS NOT INITIAL.         ls_opt-value = iv_matnr.         ls_opt-text    = iv_matnr.         APPEND ls_opt TO it_optab.        WHEN 2.          &quot; -------------------------------------------------- &quot;         &quot; \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0435 \u043e\u0434\u043d\u043e, \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u0442\u0440\u043e\u0447\u043a\u0443 - \u0412\u0441\u0435         &quot; -------------------------------------------------- &quot;         READ TABLE it_data INDEX 1.         LOOP AT it_data TRANSPORTING NO FIELDS WHERE matnr NE it_data-matnr.           ls_opt-value = '*'.           ls_opt-text  = '\u0412\u0441\u0435'.           APPEND ls_opt TO it_optab.           EXIT.         ENDLOOP.        WHEN 3.          &quot; -------------------------------------------------- &quot;         &quot; \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u0432\u0441\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f         &quot; -------------------------------------------------- &quot;         LOOP AT it_data WHERE matnr IS NOT INITIAL.           ls_opt-value = it_data-matnr.           ls_opt-text  = it_data-matnr.           COLLECT ls_opt INTO it_optab.         ENDLOOP.        WHEN OTHERS.         EXIT.     ENDCASE.   ENDDO.   ENDFORM.  <\/code><\/pre>\n<p>  \u0412\u043d\u0435\u0434\u0440\u0438\u043c \u043d\u0430\u0448 handler. \u0417\u0434\u0435\u0441\u044c \u0432 sender-&gt;value \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c. \u0417\u0430\u043f\u0438\u0448\u0435\u043c \u0435\u0433\u043e \u0441\u0440\u0430\u0437\u0443 \u0432 \u043d\u0430\u0448\u0443 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e gv_matnr. \u0412 \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 set_filter \u043f\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438:<\/p>\n<p>  1) \u041f\u043e\u043b\u0443\u0447\u0438\u043c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 grid \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442;<br \/>  2) \u041f\u043e\u043b\u0443\u0447\u0438\u043c \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438, \u0438 \u0441\u043d\u0438\u043c\u0435\u043c \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0440\u0430\u043d\u0435\u0435 \u0444\u0438\u043b\u044c\u0442\u0440, \u043f\u043e \u043f\u043e\u043b\u044e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u0443\u0435\u043c, \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u043b\u0435\u043a\u0442-\u0431\u043e\u043a\u0441;<br \/>  3) \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043d\u043e\u0432\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438;<br \/>  4) \u0421\u043e\u0445\u0440\u0430\u043d\u0438\u043c \u0444\u0438\u043b\u044c\u0442\u0440;<br \/>  5) \u041e\u0431\u043d\u043e\u0432\u0438\u043c \u043e\u0442\u0447\u0435\u0442.<\/p>\n<pre><code class=\"html\">*----------------------------------------------------------------------* *       CLASS cl_my_event_handler IMPLEMENTATION *----------------------------------------------------------------------*  CLASS cl_my_event_handler IMPLEMENTATION.     METHOD handle_selections.      DATA text_buff TYPE sdydo_text_element.      text_buff = sender-&gt;value.     gv_matnr  = text_buff.      &quot; -------------------------------------------------- &quot;     &quot; \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0444\u0438\u043b\u044c\u0442\u0440 \u0432 \u043e\u0442\u0447\u0435\u0442\u0435     &quot; -------------------------------------------------- &quot;      PERFORM set_filter         TABLES           gt_data         USING           gv_matnr           .   ENDMETHOD.                    &quot;handle_selections  ENDCLASS.                    &quot;cl_my_event_handler IMPLEMENTATION  *&---------------------------------------------------------------------* *&      Form  set_filter *&---------------------------------------------------------------------* FORM set_filter *&---------------------------------------------------------------------*           TABLES               it_data   STRUCTURE mara           USING               iv_value  TYPE mara-matnr. *&---------------------------------------------------------------------*    DATA: lo_ref1      TYPE REF TO cl_gui_alv_grid,         lt_filtered  TYPE lvc_t_filt,         lv_field     TYPE char10 VALUE 'MATNR',         ls_filter    LIKE LINE OF lt_filtered.  *----------------------------------------------------------------------*    DO.     CASE sy-index.       WHEN 1.          &quot; -------------------------------------------------- &quot;         &quot; \u041f\u043e\u043b\u0443\u0447\u0438\u043c \u043e\u0431\u044a\u0435\u043a\u0442 ALV         &quot; -------------------------------------------------- &quot;         CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'           IMPORTING             e_grid = lo_ref1.        WHEN 2.          &quot; -------------------------------------------------- &quot;         &quot; \u041f\u043e\u043b\u0443\u0447\u0438\u043c \u0438\u0442\u043e\u0433\u0438 \u0438 \u0443\u0431\u0435\u0440\u0435\u043c \u0444\u0438\u043b\u044c\u0442\u0440 \u0443\u0441\u0442. \u0432 \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u0440\u0430\u0437         &quot; -------------------------------------------------- &quot;         CALL METHOD lo_ref1-&gt;get_filter_criteria             IMPORTING                et_filter = lt_filtered.         DELETE lt_filtered WHERE fieldname = lv_field.        WHEN 3.          &quot; -------------------------------------------------- &quot;         &quot; \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043d\u043e\u0432\u044b\u0439 \u0444\u0438\u043b\u044c\u0442\u0440         &quot; -------------------------------------------------- &quot;         CHECK iv_value NE ''           AND iv_value NE '*'.         ls_filter-fieldname = lv_field.         ls_filter-sign      = 'I'.         ls_filter-option    = 'EQ'.         ls_filter-low       = iv_value.         APPEND ls_filter TO lt_filtered.        WHEN 4.          &quot; -------------------------------------------------- &quot;         &quot; \u0421\u043e\u0445\u0440\u0430\u043d\u0438\u043c \u0444\u0438\u043b\u044c\u0442\u0440         &quot; -------------------------------------------------- &quot;         CALL METHOD lo_ref1-&gt;set_filter_criteria           EXPORTING             it_filter                 = lt_filtered           EXCEPTIONS             no_fieldcatalog_available = 1             OTHERS                    = 2.          IF sy-subrc &lt;&gt; 0.           MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno                      WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.         ENDIF.        WHEN 5.          &quot; -------------------------------------------------- &quot;         &quot; \u041e\u0431\u043d\u043e\u0432\u0438\u043c ALV         &quot; -------------------------------------------------- &quot;         lo_ref1-&gt;refresh_table_display( ).        WHEN OTHERS.         EXIT.     ENDCASE.   ENDDO.  ENDFORM.   <\/code><\/pre>\n<p>  \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c! \u041b\u044e\u0431\u0443\u0435\u043c\u0441\u044f \u043d\u0430 \u0438\u0442\u043e\u0433 \u0441\u0442\u0440\u0430\u0434\u0430\u043d\u0438\u0439:<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/03d\/407\/1a2\/03d4071a27ed4624b412766ae70a7aa7.png\"\/><\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/55f\/b79\/1ac\/55fb791ac1bb48778d1d124de52c6c95.png\"\/><\/p>\n<p>  \u0412\u0440\u043e\u0434\u0435 \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u0448\u0442\u0443\u043a\u0430, \u0430 \u0432 SAP\u0435 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u0442\u044c\u0441\u044f \u0435\u0449\u0435. \u0412\u0441\u0435\u043c \u0441\u043f\u0430\u0441\u0438\u0431\u043e.       <\/p>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habrahabr.ru\/post\/275677\/\"> https:\/\/habrahabr.ru\/post\/275677\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>       <b>\u042d\u0442\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u043b\u044f ABAP-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0432 SAP ERP \u0438 \u0432\u0441\u0435\u043c \u0438\u043c \u0441\u043e\u0447\u0443\u0432\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c.<\/b><\/p>\n<p>  \u041d\u0435\u043c\u043d\u043e\u0433\u0438\u0435 \u0437\u043d\u0430\u044e\u0442, \u0447\u0442\u043e \u0432 ALV \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c HTML-\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438. \u0415\u0449\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0437\u043d\u0430\u044e\u0442, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u0432\u044b\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a, \u043e\u043d \u0436\u0435 select-box, \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0439 \u043f\u043e \u0441\u0443\u0442\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0444\u0438\u0447\u0438, \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0433\u043e \u0432\u0430\u0448\u0435\u0433\u043e Z-\u043a\u043e\u0434\u0430.<\/p>\n<p>  \u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/edf\/268\/06c\/edf26806c1154902b05c6c7152c5874a.png\"\/><\/p>\n<p>  \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434 \u043a\u0430\u0442.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-272657","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/272657","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=272657"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/272657\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=272657"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=272657"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=272657"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}