首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

SAP ABAP 數據類型轉換:P(帶小數)、N(純數字)、C(字符) 相互賦值規則詳解

     編輯:關於C語言

類型定義

  • P (Packed):定長十進制,含小數位、小數點、符號位。如 TYPE P DECIMALS 2 長度 17 含 13 整數位 + 1 點 + 2 小數 + 1 符號。
  • N (Numeric):純數字字符,無符號、無小數點,自動補前導零。
  • C (Character):定長字符串。

轉換規則與效果

源 → 目標規則示例
P → C目標長度需 ≥ 源定義長度(含符號/點),否則截斷P(17) → CHAR17 完整保留
P → N去除符號、小數點,四捨五入取整,補前導零123.45 → 000000000000123
C → N自動過濾非數字字符"A1B2" → "000000000000012"

代碼示例

[abap]
DATA: g_p17 TYPE P DECIMALS 2 VALUE '123.45',
      g_c17 TYPE C LENGTH 17,
      g_n17 TYPE N LENGTH 17.

g_c17 = g_p17.  " 完整轉字符
g_n17 = g_p17.  " 變為 000000000000123 (四捨五入)
g_n17 = g_c17.  " 過濾非數字

應用技巧

  • C → N 可用於「從字符串提取純數字」。
  • 接口文件(TXT/Excel)導出時,P 型建議先轉 C 型定長字段,再寫入。
  • 注意長度匹配,避免截斷導致數據失真。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved