本文主要是介绍zalv dropdowns,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
*****************************************************************************Simple code for creating dropdown lists for columns in ALV grid output*Author : Swarna.S.* Published at SAPTechnical.COM****************************************************************************
REPORT zalv_dropdowns.
*Type pools declarations for ALVTYPE-POOLS : slis.
*data declarations for ALV container,ALV grid, Fieldcatalogues & layoutDATA: g_grid TYPE REF TO cl_gui_alv_grid, g_custom_container TYPE REF TO cl_gui_custom_container, gt_fieldcat TYPE lvc_t_fcat, gs_layout TYPE lvc_s_layo.
*INTERNAL TABLE AND WA DECLARATIONS FOR t517 A tableDATA: gt_outtab TYPE STANDARD TABLE OF t517a INITIAL SIZE 0, wa_outtab TYPE t517a.
*initialisation eventINITIALIZATION.
*Start of selection eventSTART-OF-SELECTION.
*Call to ALV CALL SCREEN 600.
*On this statement double click it takes you to the screen painter SE51.*Create a Custom container and name it CCONT and OK code as OK_CODE.*Save check and Activate the screen painter.*Now a normal screen with number 600 is created which holds the ALV grid.* PBO of the actual screen , Here we can give a title and customized menus* Here we also call the subroutine for ALV output.*---------------------------------------------------------------------** MODULE PBO OUTPUT **---------------------------------------------------------------------*MODULE pbo OUTPUT.* set pf-status 'xxx'.* set titlebar 'MAIN100'.* Subroutine to display the output in alv PERFORM alv_output.
ENDMODULE. "pbo OUTPUT
* PAI module of the screen created. In case we use an interactive ALV or*for additional functionalities we can create OK codes and* based on the user command we can do the coding.
*---------------------------------------------------------------------** MODULE PAI INPUT **---------------------------------------------------------------------*MODULE pai INPUT.
ENDMODULE. "pai INPUT*&---------------------------------------------------------------------**& Form BUILD_FIELDCAT*&---------------------------------------------------------------------*
FORM build_fieldcat.
DATA ls_fcat TYPE lvc_s_fcat.
*Build the field catalogue CALL FUNCTION 'LVC_FIELDCATALOG_MERGE' EXPORTING i_structure_name = 'T517A' CHANGING ct_fieldcat = gt_fieldcat.
* To assign dropdown in the fieldcataogue LOOP AT gt_fieldcat INTO ls_fcat.
CASE ls_fcat-fieldname.
WHEN 'SLART'.*drdn-hndl = '1' is the first list box ls_fcat-drdn_hndl = '1'. ls_fcat-outputlen = 15. MODIFY gt_fieldcat FROM ls_fcat.
*drdn-hndl = '2' is the second list box
WHEN 'ABART'.
ls_fcat-drdn_hndl = '2'. ls_fcat-outputlen = 15. MODIFY gt_fieldcat FROM ls_fcat.
ENDCASE.
ENDLOOP.
ENDFORM. "build_fieldcat*&---------------------------------------------------------------------**& Form ALV_OUTPUT*&---------------------------------------------------------------------*FORM alv_output .
*Create object for container CREATE OBJECT g_custom_container EXPORTING container_name = 'CCONT'.
*create object for grid CREATE OBJECT g_grid EXPORTING i_parent = g_custom_container.
* Build fieldcat and set column*Assign a handle for the dropdown listbox. PERFORM build_fieldcat.
*Build layout PERFORM build_layout.
* Define a drop down table. PERFORM dropdown_table.
*fetch values from the T517A table SELECT * FROM t517a INTO TABLE gt_outtab.
*Display ALV output CALL METHOD g_grid->set_table_for_first_display EXPORTING is_layout = gs_layout CHANGING it_fieldcatalog = gt_fieldcat it_outtab = gt_outtab.
ENDFORM. "ALV_OUTPUT
*&---------------------------------------------------------------------**& Form dropdown_table*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM dropdown_table.
*Declarations for drop down lists in ALV. DATA: lt_dropdown TYPE lvc_t_drop, ls_dropdown TYPE lvc_s_drop.
* First SLART listbox (handle '1'). ls_dropdown-handle = '1'. ls_dropdown-value = '01 Primary school'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'. ls_dropdown-value = '02 Lower Secondary'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'. ls_dropdown-value = '03 Upper Secondary'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'. ls_dropdown-value = '04 Professional School'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'. ls_dropdown-value = '05 College'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'. ls_dropdown-value = '06 University'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '1'. ls_dropdown-value = '09 Other Establishment'. APPEND ls_dropdown TO lt_dropdown.
* Second ABART listbox (handle '2').
ls_dropdown-handle = '2'. ls_dropdown-value = '10 Primary School certificate'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '20 Lower secondary/Junior high'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '30 High school diploma(B-levels)'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '31 Vocational'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '32 Matriculation'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '40 Specialist vocational certificate'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '50 College degree Level1'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '51 College degree Level2'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '52 Masters degree'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '60 Univ Degree level1'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '61 Bachelors degree'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '62 Masters degree'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '63 Licenciate'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '64 Doctors Degree Ph.D'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '89 None'. APPEND ls_dropdown TO lt_dropdown.
ls_dropdown-handle = '2'. ls_dropdown-value = '90 Unknown'. APPEND ls_dropdown TO lt_dropdown.
*method to display the dropdown in ALV CALL METHOD g_grid->set_drop_down_table EXPORTING it_drop_down = lt_dropdown.
ENDFORM. " dropdown_table*&---------------------------------------------------------------------**& Form build_layout*&---------------------------------------------------------------------** text*----------------------------------------------------------------------**layout for ALV outputFORM build_layout .
gs_layout-cwidth_opt = 'X'. gs_layout-grid_title = 'ALV DROPDOWN LISTS'. gs_layout-no_toolbar = 'X'.
ENDFORM. " build_layout
给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
这篇关于zalv dropdowns的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!