iT邦幫忙

2024 iThome 鐵人賽

DAY 17
0
佛心分享-IT 人自學之術

從0開始的ABAP之旅 系列 第 17

Day 17 如何建立客製table & 插入資料

  • 分享至 

  • xImage
  •  

Hi 大家好
今天要來分享的內容是在SAP中建立一個客製的Table ,

建立客製table的目的

SAP雖然在主檔提供了許多不同功能的欄位,
但企業可能會因為業務上的需求,
沒辦法找到滿足需求的標準欄位,
這時候就需要建立客製table來存放資料 。

建立步驟

t-code : se11

輸入TABLE名稱
https://ithelp.ithome.com.tw/upload/images/20241001/2016914774aw8LU3Z2.png

https://ithelp.ithome.com.tw/upload/images/20241001/20169147E4QBTVUnEL.png

DELIVERY CLASS是表中的一个属性,用來定義在系统中的角色和資料的管理方式,特别是在系统傳輸和客户端管理(client-dependence)方面,
這裡我們選A表示允許跨Client

https://ithelp.ithome.com.tw/upload/images/20241001/20169147dK7ZNYpV6w.png
開始建立我們要的欄位
Data elememt 就填我們要參照的資料類型
這裡有兩個欄位可以勾選
-key :定義這個欄位是不是key值,key值在程式中是為了確保表中的每條紀錄都是唯一的,並且能夠快速、查找、更新或删除紀錄。
-initial value :當欄位為空值時給予預設值,例如金額欄位是空值時自動為0

https://ithelp.ithome.com.tw/upload/images/20241001/20169147Dwc0S5tLNV.png
如果table中有數量或是金額欄位,
要在Currency/quantity field這個頁簽填入參照欄位
例如amount是金額欄位後面就要參照waers這個幣別欄位,
原因是不同幣別可能有不同小數位數,
這樣當程式要賦值給金額欄位時才可以透過幣別來定義金額欄位的小數位數。

https://ithelp.ithome.com.tw/upload/images/20241001/201691472Rg2RWPPlz.png
儲存後跟程式一樣放入Package並建立Request

該如何讓table有資料

data custom_table type table of ztabletest . "定義一個內表,來源參照我們剛建立的客製table 
data wa_custom_table type ztabletest.
wa_custom_table-matnr = 'A001'.
wa_custom_table-werks = '0001'.
wa_custom_table-amount = 1000.
wa_custom_table-lukum = 1. 

append wa_custom_table to custom_table. "將工作區的資料插入內表
insert ztabletest from custom_table. "將內表資料插入客製table

IF sy-subrc = 0.
  WRITE: 'Data inserted successfully.'.
  COMMIT WORK.  " 修改table後要搭配commit語句修改才會生效!
ELSE.

以上就是今天的分享/images/emoticon/emoticon08.gif


上一篇
Day16 SAP工程師除了打Code都在做什麼?工作內容完整介紹 
下一篇
Day 18 SAP中的外掛-增強Enhancement介紹
系列文
從0開始的ABAP之旅 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言