当前位置: 首页 > news >正文

沈阳网站建设莫道网络阿里云主机wordpress

沈阳网站建设莫道网络,阿里云主机wordpress,长沙3天2晚自由行攻略,新手做网页用什么软件目录 ABAP 导入excel示例程序创建程序使用的结构上传下载模板 ABAP 导入excel示例程序 批量导入程序#xff0c;需要使用到导入模板#xff0c;首先需要创建程序#xff0c;之后是需要创建excel导入模板#xff0c;并且需要将excel导入模板上传到SAP系统里面#xff0c;之… 目录 ABAP 导入excel示例程序创建程序使用的结构上传下载模板 ABAP 导入excel示例程序 批量导入程序需要使用到导入模板首先需要创建程序之后是需要创建excel导入模板并且需要将excel导入模板上传到SAP系统里面之后才可以下载下来进行导入。 创建程序 ABAP 批量导入excel右击创建程序 *---------------------------------------------------------------------* * Report z_test_import_excel *---------------------------------------------------------------------* * TYPEReport * Description批量导入excel测试 * Creator刘洪裕 * Created On2024年2月19日 *---------------------------------------------------------------------* * Change History * ---------- ------------- ------------- ------------- * Version Date Change By Description * ---------- ------------- ------------- ------------- * N 2024.2.19 Hongyu.Liu 创建 *---------------------------------------------------------------------* Report z_test_import_excel NO STANDARD PAGE HEADING MESSAGE-ID zfimf01.TABLES: sscrfields.定义相关变量 *TYPES: BEGIN OF ty_data, * werks TYPE zfi_mfwb-werks, 工厂 * zmj_matnr TYPE zfi_mfwb-zmj_matnr, 模具料号 * zcp_matnr TYPE zfi_mfwb-zcp_matnr, 挤压产出成品料号 * zdmczl TYPE zfi_mfwb-zdmczl, 单套模具预计产出重量 * zsfty TYPE zfi_mfwb-zsfty, 是否通用 * zwhrj TYPE zfi_mfwb-zwhrj, 维护日期 * zwhr TYPE zfi_mfwb-zwhr, 维护人 *END OF ty_data. *DATA gs_data TYPE ty_data. 工作区 *DATA gt_data TYPE TABLE OF ty_data. 内表*---------------------------------------------------------------------* * 定义相关变量 *---------------------------------------------------------------------* TYPES: BEGIN OF ts_output, 展示结构INCLUDE STRUCTURE zfi_mfwb.werks TYPE zfi_mfwb-werks, 工厂zxlh TYPE zfi_mfwb-zxlh, 序列号zmj_matnr TYPE zfi_mfwb-zmj_matnr, 模具料号zcp_matnr TYPE zfi_mfwb-zcp_matnr, 挤压产出成品料号zdmczl TYPE p DECIMALS 2 , 单套模具预计产出重量两位小数zdmczl TYPE zfi_mfwb-zdmczl, 单套模具预计产出重量zsfty TYPE zfi_mfwb-zsfty, 是否通用zsfty TYPE abap_bool, 是否通用zwhrj TYPE zfi_mfwb-zwhrj, 维护日期zwhr TYPE zfi_mfwb-zwhr, 维护人zsfbf TYPE zfi_mfwb-zsfbf, 是否报废type TYPE bapiret2-type,message TYPE char100, bapiret2-message,icon TYPE text20,slbox TYPE c,celltab TYPE lvc_t_styl, 设置单元格编辑状态 END OF ts_output. TYPES: BEGIN OF ty_data,导入数据结构werks TYPE zfi_mfwb-werks, 工厂zxlh TYPE zfi_mfwb-zxlh, 序列号zmj_matnr TYPE zfi_mfwb-zmj_matnr, 模具料号zcp_matnr TYPE zfi_mfwb-zcp_matnr, 挤压产出成品料号zdmczl TYPE p DECIMALS 2 , 单套模具预计产出重量两位小数zdmczl TYPE zfi_mfwb-zdmczl, 单套模具预计产出重量zdmczl LIKE vbap-ntgew, 单套模具预计产出重量zsfty TYPE zfi_mfwb-zsfty, 是否通用zwhrj TYPE zfi_mfwb-zwhrj, 维护日期zwhr TYPE zfi_mfwb-zwhr, 维护人END OF ty_data.*DATA: is_data TYPE ty_data. 导入结构的工作区 *DATA: it_data TYPE TABLE OF ty_data. 导入结构的工作表 CONSTANTS:cos_template TYPE w3objid VALUE ZFIMFWB01,cos_filename TYPE string VALUE 模具分摊维护表导入模板.xlsx.DATA: gs_layout TYPE lvc_s_layo,gt_fieldcat TYPE lvc_t_fcat,gs_fieldcat TYPE lvc_s_fcat,gs_variant TYPE disvariant. 屏幕变式DATA: gt_output TYPE STANDARD TABLE OF ts_output WITH DEFAULT KEY,gs_output TYPE ts_output. DATA: gt_input TYPE TABLE OF zfi_mfwb. 内表结构与zfi_mfwb一致 DATA: gt_input TYPE TABLE OF ty_data. 导入模板数据 DATA: gt_output_old TYPE STANDARD TABLE OF ts_output WITH DEFAULT KEY.被修改前的数据DATA: gt_bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE. 用来存储屏幕字段参数值,传递录屏参数 DATA: gt_messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE. 记录执行BDC过程中产生的消息DATA: gv_mode TYPE c VALUE N.* 用于 修改要提示删除要提示 DATA:gv_edit_flag TYPE c, X 表示修改过gv_save_flag TYPE c, X 表示已经保存。gv_check_flag TYPE c, X 表示已经保存。gv_sref_flag TYPE c, X 表示刷新。gv_line TYPE int4. 行数CLASS lcl_event_receiver DEFINITION.PUBLIC SECTION.METHODS:handle_data_changedFOR EVENT data_changed OF cl_gui_alv_gridIMPORTING er_data_changed,handle_data_changed_finishedFOR EVENT data_changed_finished OF cl_gui_alv_gridIMPORTINGe_modifiedet_good_cells.ENDCLASS.CLASS lcl_event_receiver IMPLEMENTATION.METHOD handle_data_changed. * PERFORM FRM_DATA_CHANGED * USING ER_DATA_CHANGED.ENDMETHOD.METHOD handle_data_changed_finished. * PERFORM FRM_DATA_CHANGED_FINISH * USING E_MODIFIED ET_GOOD_CELLS.ENDMETHOD.ENDCLASS. *---------------------------------------------------------------------* * 选择屏幕 *---------------------------------------------------------------------* SELECTION-SCREEN FUNCTION KEY 1. 这是在屏幕的执行按钮后的位置添加一个功能按钮SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE TEXT-001.PARAMETERS p_file TYPE rlgrap-filename MODIF ID m1. SELECTION-SCREEN END OF BLOCK blk1.*---------------------------------------------------------------------* * 定义相关变量 *---------------------------------------------------------------------*FORM frm_init_data.DATA: ls_textfield TYPE smp_dyntxt. 菜单制作器:动态文本的程序接口ls_textfield-icon_id 49.ls_textfield-icon_text 下载导入模板.sscrfields-functxt_01 ls_textfield.ENDFORM.*---------------------------------------------------------------------* * 屏幕事件 *---------------------------------------------------------------------*INITIALIZATION. 初始化选择屏幕添加按钮PERFORM frm_init_data.AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file. 按选择帮助F4键时触发该事件PERFORM frm_get_file_name CHANGING p_file.AT SELECTION-SCREEN. 在此事件里可以进行对用户输入进行完整性进行检查。 * 处理选择屏幕的按钮 下载模板PERFORM frm_screen_button_event. AT SELECTION SCREEN OUTPUT事件(也就是PBO) 在这个事件里你可以通过修改系统默认screen内表修改屏幕的某些属性 AT SELECTION-SCREEN OUTPUT. * 修改选择屏幕的元素的状态PERFORM modify_selction_screen_status.START-OF-SELECTION. 仅在选择屏幕处理结束之后触发即当用户点击“执行”按钮时PERFORM frm_check_authority.PERFORM batch_input.PERFORM alv_display USING X. *---------------------------------------------------------------------* * Form frm_get_file_name获取文件名称 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- P_FILE *---------------------------------------------------------------------* FORM frm_get_file_name CHANGING cv_file.DATA: lt_filetable TYPE filetable, 表类型ls_filetable TYPE file_table, 结构类型lv_rc TYPE i.FREE lt_filetable.CLEAR: lv_rc.CALL METHOD cl_gui_frontend_servicesfile_open_dialogEXPORTING * window_title default_extension cl_gui_frontend_servicesfiletype_excel * default_filename file_filter cl_gui_frontend_servicesfiletype_excel * with_encoding * initial_directory * multiselection CHANGINGfile_table lt_filetablerc lv_rc * user_action * file_encoding EXCEPTIONSfile_open_dialog_failed 1cntl_error 2error_no_gui 3not_supported_by_gui 4OTHERS 5.READ TABLE lt_filetable INTO ls_filetable INDEX 1.IF sy-subrc 0. * Implement suitable error handling hereENDIF.IF sy-subrc EQ 0.cv_file ls_filetable-filename.ENDIF.ENDFORM. *---------------------------------------------------------------------* * Form frm_screen_button_event点击下载模板按钮 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM frm_screen_button_event .CASE sscrfields-ucomm.WHEN FC01.PERFORM frm_download_template USING cos_template cos_filename.WHEN OTHERS.ENDCASE. ENDFORM. *---------------------------------------------------------------------* * Form modify_selction_screen_status *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM modify_selction_screen_status .ENDFORM. *---------------------------------------------------------------------* * Form frm_check_authority *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM frm_check_authority .ENDFORM. *---------------------------------------------------------------------* * Form batch_input *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM batch_input . * EXCEL数据到内表PERFORM file_data_input. * 转换内表PERFORM file_data_convert. * 检查数据PERFORM file_data_check. ENDFORM. *---------------------------------------------------------------------* * Form alv_display展示alv *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- P_ *---------------------------------------------------------------------* FORM alv_display USING u_edit TYPE abap_bool .PERFORM set_alv_layout.PERFORM build_fieldcat USING u_edit.PERFORM call_alv_func. ENDFORM. *---------------------------------------------------------------------* * Form frm_download_template下载模板 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- COS_TEMPLATE * -- COS_FILENAME *---------------------------------------------------------------------* FORM frm_download_template USING u_objid TYPE w3objidu_file_name TYPE string.DATA: ls_key TYPE wwwdatatab,lv_filename TYPE string,lv_path TYPE string,lv_fullpath TYPE string.判断模板是否存在SELECT SINGLE * FROM wwwdataWHERE relid EQ MIAND objid EQ u_objidINTO CORRESPONDING FIELDS OF ls_key.IF sy-subrc NE 0. * 模板1不存在MESSAGE s007 WITH u_objid.RETURN.ENDIF. * 调用函数打开文件选择框CALL METHOD cl_gui_frontend_servicesfile_save_dialogEXPORTING * window_title default_extension cl_gui_frontend_servicesfiletype_exceldefault_file_name u_file_name * with_encoding * file_filter * initial_directory * prompt_on_overwrite XCHANGINGfilename lv_filenamepath lv_pathfullpath lv_fullpath * user_action * file_encoding EXCEPTIONScntl_error 1error_no_gui 2not_supported_by_gui 3invalid_default_file_name 4OTHERS 5.IF sy-subrc 0. * Implement suitable error handling hereENDIF.CHECK lv_fullpath NE . * 下载SMW0模版CALL FUNCTION DOWNLOAD_WEB_OBJECTEXPORTINGkey ls_keydestination CONV localfile( lv_fullpath ).ENDFORM. *---------------------------------------------------------------------* * Form file_data_inputEXCEL数据到内表 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM file_data_input . * 数据EXCEL-》内表PERFORM frm_excel_to_table TABLES gt_input USING p_file 2. ENDFORM. *---------------------------------------------------------------------* * Form file_data_convert转换内表 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM file_data_convert . * 添加前导0LOOP AT gt_input ASSIGNING FIELD-SYMBOL(lfs_input).lfs_input-zmj_matnr |{ lfs_input-zmj_matnr ALPHA IN }|.lfs_input-zcp_matnr |{ lfs_input-zcp_matnr ALPHA IN }|.ENDLOOP.gt_output CORRESPONDING #( gt_input ). ENDFORM. *---------------------------------------------------------------------* * Form file_data_check检查数据 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM file_data_check .IF gt_output IS NOT INITIAL.LOOP AT gt_output ASSIGNING FIELD-SYMBOL(ls_output).CLEAR:ls_output-type,ls_output-message.IF ls_output-werks IS INITIAL.ls_output-type E.ls_output-message 工厂不能为空.ENDIF.IF ls_output-zmj_matnr IS INITIAL.ls_output-type E.ls_output-message ls_output-message 模具料号不能为空.ENDIF.IF ls_output-zcp_matnr IS INITIAL.ls_output-type E.ls_output-message ls_output-message 挤压产出成品料号不能为空.ENDIF.IF ls_output-type E. 如果关键值不为空ls_output-type N. 将类型设置为NENDIF.PERFORM set_light CHANGING ls_output. 设置提示灯ENDLOOP.ENDIF. ENDFORM. *---------------------------------------------------------------------* * Form frm_excel_to_table *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- GT_INPUT * --U_FILE 文件 * --U_START_ROW 文件内的数据从哪行开始取 *---------------------------------------------------------------------* FORM frm_excel_to_table TABLES et_input TYPE STANDARD TABLEUSING u_file TYPE rlgrap-filenameu_start_row TYPE i.DATA: lt_intern TYPE STANDARD TABLE OF zalsmex_tabline.FREE: lt_intern.*DATA FILENAME TYPE RLGRAP-FILENAME. *DATA I_BEGIN_COL TYPE I. *DATA I_BEGIN_ROW TYPE I. *DATA I_END_COL TYPE I. *DATA I_END_ROW TYPE I. *DATA INTERN TYPE STANDARD TABLE OF ZALSMEX_TABLINE.CALL FUNCTION ZALSM_EXCEL_TO_INTERNAL_TABLEEXPORTINGfilename u_filei_begin_col 1i_begin_row 2i_end_col 99i_end_row 65536TABLESintern lt_internEXCEPTIONSinconsistent_parameters 1upload_ole 2OTHERS 3.IF sy-subrc NE 0.ENDIF.SORT lt_intern BY row col.LOOP AT lt_intern INTO DATA(ls_intern).下面检查是否是数字AT NEW row. 如果字段row及row的左侧全部字段的数据与上一行数据不一致则执行代码。APPEND INITIAL LINE TO et_input ASSIGNING FIELD-SYMBOL(ls_input). 创建一个新行并分配指针ENDAT.ASSIGN COMPONENT ls_intern-col OF STRUCTURE ls_input TO FIELD-SYMBOL(lv_val).就是在每次循环中都会分配一个结构的字段是根据索引来决定的IF lv_val IS ASSIGNED.IF ls_intern-col EQ 5. 如果是第5列是否通用lv_val ls_intern-value.ENDIF.TRY.lv_val ls_intern-value.CATCH cx_sy_conversion_no_number INTO DATA(lr_cx_sy_conversion_no_number). * 行1列2值3,4MESSAGE e003 WITH ls_intern-row ls_intern-col ls_intern-value lr_cx_sy_conversion_no_number-get_text( ).CATCH cx_sy_conversion_overflow INTO DATA(lr_cx_sy_conversion_overflow). * 行1列2值3,4MESSAGE e003 WITH ls_intern-row ls_intern-col ls_intern-value lr_cx_sy_conversion_overflow-get_text( ).CATCH cx_root INTO DATA(lr_cx_root). * 行1列2值3,4MESSAGE e003 WITH ls_intern-row ls_intern-col ls_intern-value lr_cx_root-get_text( ).ENDTRY.UNASSIGN lv_val. 取消分配ENDIF.ENDLOOP. ENDFORM. *---------------------------------------------------------------------* * Form set_alv_layout设置alv的layout *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM set_alv_layout .CLEAR: gs_layout,gs_variant.gs_layout-zebra X. 斑马线gs_layout-cwidth_opt X. 自动列宽gs_layout-box_fname SLBOX. 选择框字段名 用户在ALV控件的行选中对应的内存中【SLBOX】字段会被打上Xgs_variant-report sy-repid.gs_variant-handle 01. ENDFORM. *---------------------------------------------------------------------* * Form build_fieldcat *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- U_EDIT *---------------------------------------------------------------------* FORM build_fieldcat USING e_edit TYPE abap_bool.IF gt_fieldcat IS INITIAL. 如果gt_fieldcat是初始状态APPEND VALUE #( fieldname ICON ref_field ID ref_table ICON scrtext_l 状态 ) TO gt_fieldcat[].APPEND VALUE #( fieldname MESSAGE ref_field MESSAGE ref_table BAPIRET2 scrtext_l ) TO gt_fieldcat[].ENDIF. * DATA CT_FIELDCAT TYPE LVC_T_FCAT.CALL FUNCTION LVC_FIELDCATALOG_MERGEEXPORTING * I_BUFFER_ACTIVE I_BUFFER_ACTIVEi_structure_name ZFI_MFWB * I_CLIENT_NEVER_DISPLAY X * I_BYPASSING_BUFFER I_BYPASSING_BUFFER * I_INTERNAL_TABNAME I_INTERNAL_TABNAMECHANGINGct_fieldcat gt_fieldcatEXCEPTIONSinconsistent_interface 1program_error 2OTHERS 3. * 循环字段修改显示的列名CLEAR gs_fieldcat.LOOP AT gt_fieldcat INTO gs_fieldcat.IF gs_fieldcat-fieldname ZMJ_MATNR.gs_fieldcat-coltext 模具料号.ELSEIF gs_fieldcat-fieldname ZXLH.gs_fieldcat-coltext 序列号.ELSEIF gs_fieldcat-fieldname ZCP_MATNR.gs_fieldcat-coltext 挤出产出成品料号.ELSEIF gs_fieldcat-fieldname ZDMCZL.gs_fieldcat-coltext 单套模具预计产出重量.gs_fieldcat-edit X.可编辑 * gs_fieldcat-edit .不可编辑 * IF p_file IS INITIAL. 如果不是导入文件的操作则设置重量为编辑 * gs_fieldcat-edit X.可编辑 * ENDIF.ELSEIF gs_fieldcat-fieldname ZSFTY.gs_fieldcat-coltext 是否通用.gs_fieldcat-edit X.可编辑ELSEIF gs_fieldcat-fieldname ZWHRJ.gs_fieldcat-coltext 维护日期.ELSEIF gs_fieldcat-fieldname ZWHR.gs_fieldcat-coltext 维护人.ELSEIF gs_fieldcat-fieldname ZSFBF.gs_fieldcat-coltext 是否报废.gs_fieldcat-edit X.可编辑ENDIF.MODIFY gt_fieldcat FROM gs_fieldcat.CLEAR gs_fieldcat.ENDLOOP.IF sy-subrc 0. * Implement suitable error handling hereENDIF.ENDFORM. *---------------------------------------------------------------------* * Form call_alv_func调用alv显示函数 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM call_alv_func .DATA: lt_event TYPE slis_t_event,ls_event TYPE slis_alv_event.CALL FUNCTION REUSE_ALV_GRID_DISPLAY_LVCEXPORTINGi_callback_program sy-repidi_callback_pf_status_set SET_PF_STATUSi_callback_user_command USER_COMMAND * I_CALLBACK_TOP_OF_PAGE * i_callback_html_top_of_page FRM_TOP_OF_PAGEis_layout_lvc gs_layoutit_fieldcat_lvc gt_fieldcati_save Uis_variant gs_variantit_events lt_event * IMPORTING * E_EXIT_CAUSED_BY_CALLER E_EXIT_CAUSED_BY_CALLER * ES_EXIT_CAUSED_BY_USER ES_EXIT_CAUSED_BY_USERTABLESt_outtab gt_outputEXCEPTIONSprogram_error 1OTHERS 2.IF sy-subrc 0. * Implement suitable error handling hereENDIF.ENDFORM.*---------------------------------------------------------------------* * FORM FRM_TOP_OF_PAGE *---------------------------------------------------------------------* * TEXT *---------------------------------------------------------------------* * -- P1 TEXT * -- P2 TEXT *---------------------------------------------------------------------* FORM frm_top_of_page USING p_cl_dd TYPE REF TO cl_dd_document.ENDFORM.*---------------------------------------------------------------------* * FORM SET_PF_STATUS *---------------------------------------------------------------------* * TEXT *---------------------------------------------------------------------* * -- P1 TEXT * -- P2 TEXT *---------------------------------------------------------------------* FORM set_pf_status USING u_t_extab TYPE slis_t_extab.SET PF-STATUS STANDARD EXCLUDING u_t_extab.SET TITLEBAR STANDARD. ENDFORM.*---------------------------------------------------------------------* * FORM USER_COMMAND *---------------------------------------------------------------------* FORM user_command USING u_v_ucomm LIKE sy-ucommu_s_selfield TYPE slis_selfield.DATA: lr_grid TYPE REF TO cl_gui_alv_grid,lv_error TYPE char1,lv_confirm TYPE c.DATA: lt_mod_data TYPE lvc_t_modi,ls_mod_data TYPE lvc_s_modi.DATA: lo_data TYPE REF TO cl_alv_changed_data_protocol.*DATA IR_SALV_FULLSCREEN_ADAPTER TYPE REF TO CL_SALV_FULLSCREEN_ADAPTER. *DATA ET_EXCLUDING TYPE SLIS_T_EXTAB. *DATA E_REPID TYPE SY-REPID. *DATA E_CALLBACK_PROGRAM TYPE SY-REPID. *DATA E_CALLBACK_ROUTINE TYPE SLIS_FORMNAME. *DATA E_GRID TYPE REF TO CL_GUI_ALV_GRID. *DATA ET_FIELDCAT_LVC TYPE LVC_T_FCAT. *DATA ER_TRACE TYPE REF TO CL_ALV_TRACE. *DATA E_FLG_NO_HTML TYPE C. *DATA ES_LAYOUT_KKBLO TYPE KKBLO_LAYOUT. *DATA ES_SEL_HIDE TYPE SLIS_SEL_HIDE_ALV. *DATA ET_EVENT_EXIT TYPE KKBLO_T_EVENT_EXIT. *DATA ER_FORM_TOL TYPE REF TO CL_SALV_FORM. *DATA ER_FORM_EOL TYPE REF TO CL_SALV_FORM.CALL FUNCTION GET_GLOBALS_FROM_SLVC_FULLSCR * EXPORTING * IR_SALV_FULLSCREEN_ADAPTER IR_SALV_FULLSCREEN_ADAPTERIMPORTINGe_GRID lr_grid.lr_grid-check_changed_data( ).CASE u_v_ucomm.WHEN SAVE.PERFORM file_data_check.PERFORM refresh_alv.PERFORM user_command_import_check CHANGING lv_error.CHECK lv_error .PERFORM check_user_decision USING 确认 确定保存 CHANGING lv_confirm.CHECK lv_confirm EQ abap_true.PERFORM user_command_import.gv_save_flag X.WHEN EXIT.LEAVE TO SCREEN 0.CLEAR: gv_edit_flag,gv_save_flag.WHEN OTHERS.ENDCASE.PERFORM refresh_alv.ENDFORM. *---------------------------------------------------------------------* * Form refresh_alv *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM refresh_alv .DATA: lr_grid TYPE REF TO cl_gui_alv_grid,ls_stable TYPE lvc_s_stbl.CALL FUNCTION GET_GLOBALS_FROM_SLVC_FULLSCRIMPORTINGe_grid lr_grid.lr_grid-get_frontend_layout(IMPORTINGes_layout DATA(ls_layout)).ls_layout-cwidth_opt abap_true.lr_grid-set_frontend_layout( is_layout ls_layout ).ls_stable-row X.ls_stable-col X.lr_grid-refresh_table_display(EXPORTINGis_stable ls_stableEXCEPTIONSfinished 1OTHERS 2 ).IF sy-subrc 0.MESSAGE ID sy-msgidTYPE sy-msgtyNUMBER sy-msgnoWITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.ENDIF. ENDFORM. *---------------------------------------------------------------------* * Form user_command_import_check *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- LV_ERROR *---------------------------------------------------------------------* FORM user_command_import_check CHANGING c_error TYPE char1.CLEAR c_error.IF lines( gt_output ) 0.MESSAGE s000 WITH 导入数据为空 DISPLAY LIKE E.c_error X.EXIT.ENDIF.IF NOT line_exists( gt_output[ slbox X ] ).MESSAGE s000 WITH 至少选中一行数据 DISPLAY LIKE E.c_error X.EXIT.ENDIF.IF line_exists( gt_output[ type E slbox X ] ).MESSAGE s000 WITH 数据检查不通过不可导入 DISPLAY LIKE E.c_error X.EXIT.ENDIF. ENDFORM. *---------------------------------------------------------------------* * Form check_user_decision确认用户决定 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- P_ * -- P_ * -- LV_CONFIRM *---------------------------------------------------------------------* FORM check_user_decision USING u_titleu_questionCHANGING ch_confirm.DATA: lv_answer TYPE char1.CLEAR: ch_confirm.CLEAR: lv_answer.CALL FUNCTION POPUP_TO_CONFIRMEXPORTINGtitlebar u_titletext_question u_questiondefault_button 2display_cancel_button IMPORTINGanswer lv_answerEXCEPTIONStext_not_found 1OTHERS 2.IF sy-subrc NE 0.ENDIF.IF lv_answer EQ 1.ch_confirm abap_true.ELSE.ENDIF. ENDFORM. *---------------------------------------------------------------------* * Form user_command_import *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- p1 text * -- p2 text *---------------------------------------------------------------------* FORM user_command_import .DATA: gs_input TYPE zfi_mfwb. 工作区结构与zfi_mfwb一致LOOP AT gt_output ASSIGNING FIELD-SYMBOL(lfs_output) WHERE slbox abap_true.MOVE-CORRESPONDING lfs_output TO gs_input.gs_input-mandt sy-mandt. 当前集团号gs_input-zwhrj sy-datum. 当前日期gs_input-zwhr sy-uname. 当前登录用户名INSERT zfi_mfwb FROM gs_input.IF sy-subrc 0.lfs_output-type E.IF sy-subrc 4.lfs_output-message 导入失败数据库已存在此条数据.ENDIF.ENDIF.IF sy-subrc 0.lfs_output-type S.lfs_output-message 导入成功.ENDIF.PERFORM set_light CHANGING lfs_output. 设置提示灯ENDLOOP. ENDFORM.*---------------------------------------------------------------------* * Form USER_COMMAND_EXIT_CHECK *---------------------------------------------------------------------* * 如果没保存就退出 弹框提示 *---------------------------------------------------------------------* * -- LV_ERROR *---------------------------------------------------------------------* FORM user_command_exit_check CHANGING c_error.DATA: lv_confirm TYPE c.* IF p_cre X. * IF NOT line_exists( gt_output[ type E ] ). * gv_edit_flag X. * ENDIF. * ENDIF.IF gv_edit_flag X AND gv_save_flag .PERFORM check_user_decision USING 确认还没保存确定退出?CHANGING lv_confirm.IF lv_confirm EQ abap_true.ELSE.c_error X.EXIT.ENDIF.ENDIF.ENDFORM. *---------------------------------------------------------------------* * Form set_light设置提示灯 *---------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -- LS_OUTPUT *---------------------------------------------------------------------* FORM set_light CHANGING ch_output TYPE ts_output.IF ch_output-type EQ E. 失败状态ch_output-icon ICON_RED_LIGHT.ELSEIF ch_output-type EQ S. 成功状态ch_output-icon ICON_GREEN_LIGHT.ELSEIF ch_output-type EQ N. 空状态ch_output-icon ICON_YELLOW_LIGHT.ENDIF.CALL FUNCTION ICON_CREATEEXPORTINGname ch_output-iconIMPORTINGresult ch_output-iconEXCEPTIONSicon_not_found 1outputfield_too_short 2OTHERS 3.IF sy-subrc 0.ENDIF. ENDFORM.使用的结构 双击结构名称结构的字段如下 上传下载模板
http://www.pierceye.com/news/993981/

相关文章:

  • 网站开发登录要做哪些验证wordpress如何修改电子邮箱
  • 网站空间租用合同wordpress更改主题名称
  • 宁波网站推广找哪家wordpress 搜索标签
  • 购物网站建设特色沈阳公司网站制作
  • seo网站编辑是做什么的微博seo排名优化
  • 南通网站建设方案托管关键词优化排名首页
  • 哈尔滨全员核酸检测福建整站优化
  • 电子商务网站建设汉狮辽宁移动网站
  • 厂西建设厅网站网站流量依赖率
  • 手机能看的网站企业网站开发市场
  • 企业建设网站的过程世界各大网站搜索引擎提交入口
  • 网站建设云南做静态网站成本
  • 超低价的锦州网站建设网站开发有哪些软件有哪些
  • 中英文网站后台photoshop做网站
  • 优秀网站开发公司软件开发工具与环境实践报告
  • 茂名网站开发网站关键词优化步骤
  • 介绍家乡的网站怎么做天眼查企业查询公司
  • 公司网站建设代理一般做多久苏州关键词优化企业
  • 北京网站网站建设vps做网站怎么加速
  • 销售网站怎么做一个公司可以做多少网站
  • 西安旅游攻略必去景点网站优化成都哪里好
  • 网站特色泉州做网站优化价格
  • 小米官方网站开发版在哪里推进门户网站建设 用好用活
  • 玉器企业网站源码软件商店哪个好用
  • 学校网站建设的安全策略江苏太平洋建设集团官方网站
  • 织梦做中英文企业网站给特宝网站商家网址怎样做
  • 网站邮箱接口怎么设置WordPress国外主机
  • 西安做网站的公司哪家好怎么样查询网站被挂黑链
  • 卯兔科技网站建设河南旅游集团 网站建设
  • 重庆网站建设c做食品网站的素材