1. 程式人生 > >ALV中新增按鈕 進行修改、建立、刪除、新增、匯入、儲存等操作

ALV中新增按鈕 進行修改、建立、刪除、新增、匯入、儲存等操作

&———————————————————————
*& Form FRM_CHANGE_FUNCTION
&———————————————————————
* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_change_function .
DATA:lw_layout TYPE slis_layout_alv.
CLEAR: lw_layout.”它用來定義ALV報表的整體屬性
lw_layout-edit = ‘X’.
CALL FUNCTION ‘REUSE_ALV_GRID_LAYOUT_INFO_SET’
EXPORTING
is_layout = lw_layout.
ENDFORM.
&———————————————————————


*& Form FRM_DELETE_FUNCTION
&———————————————————————
* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_delete_function .
DATA: l_answer(1) TYPE c.
READ TABLE gt_out WITH KEY sel = ‘X’.
IF sy-subrc <> 0.
MESSAGE ‘請選擇要刪除的行!’ TYPE ‘E’.
ELSE.
CALL FUNCTION ‘POPUP_TO_CONFIRM’
EXPORTING
titlebar = ‘刪除’
text_question = ‘是否要刪除該內容?’
default_button = ‘2’
display_cancel_button = ‘X’
IMPORTING
answer = l_answer
EXCEPTIONS
text_not_found = 1
OTHERS = 2.
IF l_answer = ‘1’.
LOOP AT gt_out WHERE sel = ‘X’.
DELETE gt_out.
DELETE FROM zpm003 WHERE swerk = gt_out-swerk AND zzfgs = gt_out-zzfgs.
IF sy-subrc = 0.
MESSAGE ‘刪除成功!’ TYPE ‘S’.
ELSE.
MESSAGE ‘刪除失敗!’ TYPE ‘E’.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
ENDFORM.
&———————————————————————

*& Form FRM_CREATE_FUNCTION
&———————————————————————
* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_create_function .
APPEND INITIAL LINE TO gt_out.
ENDFORM.
&———————————————————————
*& Form FRM_SAVE_FUNCTION
&———————————————————————

* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_save_function .
DATA: lv_valid TYPE char01.
DATA:lv_mes TYPE string.
DATA lt_save TYPE TABLE OF zpm003 WITH HEADER LINE.
CALL FUNCTION ‘GET_GLOBALS_FROM_SLVC_FULLSCR’
IMPORTING
e_grid = g_grid.
CALL METHOD g_grid->check_changed_data
IMPORTING
e_valid = lv_valid.
IF lv_valid IS INITIAL.
EXIT.
ENDIF.
REFRESH lt_save.
LOOP AT gt_out.
lt_save-swerk = gt_out-swerk.
lt_save-name1 = gt_out-name1.
lt_save-zzfgs = gt_out-zzfgs.
lt_save-butxt = gt_out-butxt.
lt_save-bukrs = gt_out-bukrs.
lt_save-butxt_d = gt_out-butxt_d.
APPEND lt_save.
CLEAR lt_save.
ENDLOOP.
MODIFY zpm003 FROM TABLE lt_save.
COMMIT WORK.
IF sy-subrc = 0.
MESSAGE ‘儲存成功!’ TYPE ‘I’.
ELSE.
MESSAGE ‘儲存失敗!’ TYPE ‘E’.
ENDIF.
ENDFORM.
&———————————————————————
*& Form FRM_IMPORT_FUNCTION
&———————————————————————
* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_import_function .
PERFORM frm_get_fiel_name.
PERFORM frm_excel_upload.
PERFORM frm_data_get.
ENDFORM.
&———————————————————————
*& Form FRM_GET_FIEL_NAME
&———————————————————————
* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_get_fiel_name .
CALL FUNCTION ‘WS_FILENAME_GET’
EXPORTING
mode = ‘O’
title = ‘選取路徑’
IMPORTING
filename = gv_file
EXCEPTIONS
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
OTHERS = 5.

ENDFORM.
&———————————————————————
*& Form FRM_EXCEL_UPLOAD
&———————————————————————
* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_excel_upload .
CALL FUNCTION ‘ALSM_EXCEL_TO_INTERNAL_TABLE’
EXPORTING
filename = gv_file
i_begin_col = 1
i_begin_row = 2
i_end_col = 4
i_end_row = 5000
TABLES
intern = gt_excel
EXCEPTIONS
inconsistent_parameters = 1
upload_ole = 2
OTHERS = 3.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
REFRESH gt_upload.
SORT gt_excel BY row.
LOOP AT gt_excel INTO gw_excel.
CASE gw_excel-col.
WHEN ‘001’.
gt_upload-swerk = gw_excel-value.
WHEN ‘002’.
gt_upload-name1 = gw_excel-value.
WHEN ‘003’.
gt_upload-zzfgs = gw_excel-value.
WHEN ‘004’.
gt_upload-butxt = gw_excel-value.
WHEN ‘005’.
gt_upload-bukrs = gw_excel-value.
WHEN ‘006’.
gt_upload-butxt_d = gw_excel-value.
WHEN OTHERS.
ENDCASE.
AT END OF row.
APPEND gt_upload.
CLEAR gt_upload.
ENDAT.
ENDLOOP.
ENDFORM.
&———————————————————————
*& Form FRM_DATA_GET
&———————————————————————
* text
———————————————————————-
* –> p1 text
* <– p2 text
———————————————————————-
FORM frm_data_get .
DATA:lt_import LIKE TABLE OF zpm003 WITH HEADER LINE.
LOOP AT gt_upload.
MOVE-CORRESPONDING gt_upload TO gt_out.
APPEND gt_out.
CLEAR gt_out.
ENDLOOP.
REFRESH lt_import.
LOOP AT gt_out.
MOVE-CORRESPONDING gt_out TO lt_import.
APPEND lt_import.
CLEAR lt_import.
ENDLOOP.
MODIFY zpm003 FROM TABLE lt_import.
COMMIT WORK.
IF sy-subrc = 0.
MESSAGE ‘匯入成功!’ TYPE ‘S’.
ELSE.
MESSAGE ‘匯入失敗’ TYPE ‘E’.
ENDIF.
ENDFORM.

相關推薦

ALV新增按鈕 進行修改建立刪除新增匯入儲存操作

&——————————————————————— *& Form FRM_CHANGE_FUNCTION &——————————————————————— * text ——————————————————

檢視當前伺服器的所有的topic,建立topic,刪除topic,通過shell命令傳送訊息,通過shell消費訊息,檢視topic詳情,對分割槽數進行修改

一、 Kafka常用操作命令  檢視當前伺服器中的所有topic [root@hadoop3 kafka]# bin/kafka-topics.sh --list --zookeeper hadoop11:2181 [root@hadoop3 kafk

android studio設定主題護眼色字型Logcat前景色背景色建立類時,新增作者名和日期

1、設定主題 按快捷鍵Ctrl+Alt+s,開啟settings視窗。再選擇Apprearance,選擇自己喜歡的主題,預設兩款,一個白,一個黑。我選擇的是白色預設。如圖: 2、設定護眼色  護眼

Qt對圖片的顏色進行修改

由Qimage的colorTable方法獲得圖片中全部的顏色,然後找到你要更換的顏色,把顏色的編號交給setColor方法就可以了,具體請看qt的文件。 QImage image(":/image//

Mysql的基本使用(登陸&退出建立&刪除&選擇資料庫基本資料型別建立&刪除表格)

登入mysql資料庫 mysql -h hostname -u username -p 如何hostname是本機的話,要替換為127.0.0.1或者是localhost 例子:mysql -h localhost -uroot -p 這樣輸完之後會換行讓你輸密碼,我們也可以直接把密

Java第十三天學習筆記~多執行緒(執行緒的狀態建立執行緒的第二種方式同步程式碼塊同步函式)

                                 多執行緒 執行緒的狀態 CPU的執行資格:可以被C

Linux的相對和絕對路徑cd命令建立刪除目錄mkdir/rmdir和rm命令

一、相對路徑和絕對路徑 1、絕對路徑:路徑的寫法一定由根目錄“/”寫起。例如我們之前編輯的網絡卡檔案 /etc/sysconfig/network-scripts/ifcfg-eno1677xxx ,這個就是絕對路徑。 2、相對路徑:路徑的寫法不是

相對和絕對路徑cd命令建立刪除目錄mkdirrmdirrm命令

目錄 2.6 相對和絕對路徑2.7 cd命令2.8 建立和刪除目錄mkdir/rmdir 2.9 rm命令 1、相對和絕對路徑 絕對路徑 從根開始的路徑 相對路徑 不是以根開頭的,相對當

linux 連結的使用 建立刪除符號連線(軟硬連結)

在Linux系統中,核心為每一個新建立的檔案分配一個Inode(索引結點),每個檔案都有一個惟一的inode號。檔案屬性儲存在索引結點裡,在訪問檔案時,索引結點被複制到記憶體在,從而實現檔案的快速訪問。 連結是一種在共享檔案和訪問它的使用者的若干目錄項之間建立聯絡的一種方法。Linux中包括兩種連結:硬連結

二週第一次課 2017.10.23 相對和絕對路徑cd命令建立刪除目錄mkdir/rmdirrm命令

2.6 相對和絕對路徑 每個檔案或命令都是有一個從根開始的路徑,這個從根開始的路徑就是絕對路徑。不管在那個目錄下,你都可以使用絕對路徑找到這個檔案。 相對當前目錄的路徑,叫相對路徑(不是從根開始的)。 pwd:檢視當前所在的目錄。 2.7 cd命令 cd:移動到指定的目

linux 連結ln的使用 建立刪除符號連線(軟硬連結)

1 . 使用方式 :ln [option] source_file dist_file   (source_file是待建立連結檔案的檔案,dist_file是新建立的連結檔案)                    -f 建立時,將同檔案名刪除.                     -i 刪除前進行詢

cmd 命令操縱檔案管理器建立刪除)多級資料夾

1. 使用 start 命令 # 開啟指定資料夾 > start 路徑 # 開啟當前資料夾 > start . # 開啟含空格資料夾 > start "" "D:\p

Oracle建立表空間建立使用者,給使用者分配表空間以及可操作許可權

建立表空間一共可分為四個步驟 具體指令碼如下:     第1步:建立臨時表空間       create temporary tablespace yd_temp       tempfile '

SQL的幾種約束的建立刪除

約束是SQL Server提供的自動保持資料庫完整性的一種方法, 它通過限制欄位中資料、記錄中資料和表之間的資料來保證資料的完整性。 約束可分為以下幾種: 1、PRIMARY KEY 主鍵約束 2、FOREIGN KEY 外來鍵約束

java的執行緒建立執行緒的 3 種方式靜態代理模式Lambda表示式簡化執行緒

# 0、介紹 **執行緒**:多個任務同時進行,看似多工同時進行,但實際上一個時間點上我們大腦還是隻在做一件事情。程式也是如此,除非多核cpu,不然一個cpu裡,在一個時間點裡還是隻在做一件事,不過速度很快的切換,造成同時進行的錯覺。 **多執行緒**: 方法間呼叫:普通方法呼叫,從哪裡來到哪裡

資料結構 連結串列的建立,求連結串列的長度,插入元素操作程式碼展示

 今上午老師佈置的作業,很不情願的寫了個單鏈表。。。發現長時間不寫確實很難一步寫對,除錯了20分鐘,可算是寫完了, 感覺應該是對了,測了幾組資料沒啥問題..... 程式碼如下: #include <cstdio> #include <cstring&g

C#對DataGridView的資料進行新增修改刪除操作c#操作datatable

1.建立表 DataSet ds=new DataSet(); DataTable dt=new DataTable("User"); ds.Add(dt); dt.Columns.Add("user_name",typeof(string)); dt.Columns.Ad

程序通過定義學生結構體變量,存儲學生的學號姓名和3門課的成績。函數fun的功能是:對形參b所指結構體變量的數據進行修改,並在主函數輸出修改後的數據。

一次 數據 mod long 成績 nbsp data 例如 main 程序通過定義學生結構體變量,存儲學生的學號、姓名和3門課的成績。函數fun的功能是:對形參b所指結構體變量中的數據進行修改,並在主函數中輸出修改後的數據。例如,若b所指變量t中的學號、姓名和三門課的成績

如何在cmd命令列檢視修改刪除新增環境變數

1、檢視當前所有可用的環境變數:輸入 set 即可檢視。 2、檢視某個環境變數:輸入 “set 變數名”即可,比如想檢視path變數的值,即輸入 set path 3、修改環境變數 :輸入 “set 變數名=變數內容”即可,比如將path設定為“d:\nmake.exe”,只要輸入set

C# 選擇檔案選擇資料夾開啟檔案(或者資料夾) 路徑獲取檔案全路徑目錄副檔名檔名稱 追加拷貝刪除移動檔案建立目錄 修改檔名資料夾名!!

https://www.cnblogs.com/zhlziliaoku/p/5241097.html 1、選擇檔案用OpenDialog OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true;/