VC是SAP中非常重要的功能,過去多年來,我參與了不少使用VC的項目,我將通過多篇文章介紹VC的一些應用,本文介紹通過VC修改銷售訂單行項目的字段
01 概覽
在銷售訂單創建時,對于可配置物料來說,不同的配置可能會影響銷售訂單行項目中的字段,譬如同一產品,不同的配置可能具有不同的重量,因此需要通過可配置功能在銷售訂單中實現輸入不同的配置,有不同的重量。
業務邏輯簡述如下:
1、根據物料+配置(本文為測試方便,僅使用一個配置:“型號”)確定物料的單件重量。
2、單件重量乘以訂單數量確定銷售訂單中的重量。
02 系統實現

備注:如果你對可配置有所了解,那么測試本場景所需花費時間預計20分鐘。
主數據-CT04/CL01創建分類和特征
主數據-CU61創建包含特征的表?
主數據-CU60維護表?
主數據-CU01創建相關性?
主數據-CU41為物料創建配置參數文件,并分配相關性
業務操作-VA01創建銷售訂單
1、主數據-CT04/CL01創建類( Z1)和特征,共包含五個特征。
五個特征的字段屬性/作用如下:

備注:重點在于這里的參照表和字段,在本文的最后端對此進行具體說明
特征 | 描述/作用 | 參照表 | 參考字段 |
ZMATNR | 物料,讀取訂單行項目的物料 | VBAP | MATNR |
Z13 | 訂單行項目的重量,反寫到訂單行項目 | VCSD_UPDATE | BRGEW |
Z14 | 型號,可配置的選項 | N/A | N/A |
ZMENGE | 物料,讀取訂單行項目的物料 | VBAP | KWMENG |
Z15 | 單個物料的重量 | N/A | N/A |
02、主數據- CU61創建包含特征的表
如下圖所示,設置根據物料編號+型號確定單個物料的毛重。
03、?主數據-CU60 維護表的內容
根據物料+型號維護對應的單個毛重
04、 主數據-CU01 創建相關性
相關性類別為“過程”,代碼非常簡單:首先根據物料+類別確定 單個重量,再根據單個重量乘以數量得到銷售訂單行項目的重量。
table Z11( Z14 = Z14, ZMATNR = ZMATNR, Z15 = $SELF.Z15),$SELF.Z13 = Z15 * ZMENGE.
05、 主數據-CU41為物料創建配置參數文件,并分配相關性

前提條件:創建示例物料CAR9,并設置為可配置,并將上文中的分類Z1分配給該物料。本文未展示具體過程
如下圖所示,CU41為物料創建配置參數文件,分配分類Z1,并分配相關性Z1.
06、 業務操作- VA01 創建銷售訂單
VA01創建銷售訂單,輸入客戶、物料CAR9、數量2個,并在可配置的窗口輸入配置信息,如型號“A”,系統根據上文中維護的信息確定出每個重量為100KG,銷售訂單數量為2個,因此總重量為200KG.
如下圖所示,特征值(毛重)反寫到銷售訂單的行項目中。
03?系統實現說明
銷售訂單的字段與VC的特征值之間可分為二種情況:讀取銷售訂單字段值到特征值 及特征值反寫到銷售訂單的字段中,具體邏輯如下:
1、銷售訂單的如下表字段可以在VC被讀取到
可以看到銷售訂單的大部分字段都可以被VC讀取到特征中。
上文示例中,我們讀取了銷售訂單行項目的2個字段:VBAP-MATNR(物料)、VBAP- KWMENG(數量),用來計算物料的重量
表 | 描述 |
VBAK | Header data(訂單抬頭) |
VBAP | Item data(訂單行項目) |
MAEPV | Material master fields(物料主數據信息) |
MAAPV | Material master fields(物料主數據信息) |
VBKD | Sales document: commercial data(訂單業務數據) |
VBPA_AG | AG Partner: sold-to party(售達方) |
VBPA_WE | WE Partner: ship-to party(送達方) |
VBPA_RE | RE Partner: bill-to party(發票方) |
VBPA_RG | RG Partner: payer(付款方) |
2、只有銷售訂單中的行項目字段能夠被特征值反向修改
可以被修改的字段都在結構VCSD_UPDATE中,該結構包含的字段如下表:
上文示例中將特征值寫到VCSD_UPDATE-BRGEW(銷售訂單行項目的重量)中。
字段 | 中文描述 | 英文描述 |
BRGEW | 毛重 | Gross weight of item |
NTGEW | ?凈重 | Net weight of item |
GEWEI | ?重量單位 | Unit of weight |
VOLUM | ?體積 | Volume |
VOLEH | ?體積單位 | Volume unit |
KWMENG | ?訂單數量 | Item quantity |
VRKME | ?銷售單位 | Sales unit of measure |
?轉換 | Conversion factors | |
ZMENG | ?目標數量 | Target quantity |
ZIEME | ?目標數量單位 | Target quantity unit |
ARKTX | ?物料描述 | Article description |
如有必要,可在增強(EXIT_SAPLCEI0_001 /EXIT_SAPFV45S_002)修改訂單行項目的其他字段。