ABAP 基本數據類型


 第一個程序:Hello world

CLASS z_helloworld DEFINITION
  PUBLIC
  FINAL
  CREATE PUBLIC .

  PUBLIC SECTION.
*實現接口.
  INTERFACES IF_OO_ADT_CLASSRUN.
  PROTECTED SECTION.
  PRIVATE SECTION.
ENDCLASS.

CLASS z_helloworld IMPLEMENTATION.
METHOD IF_OO_ADT_CLASSRUN~MAIN.
*創建方法,打印Hello world.
OUT->WRITE('Hello world').
ENDMETHOD.
ENDCLASS.

首先要實現接口if_oo_adt_classrun

編寫接口中的main方法,輸出hello world

 

ABAP 中規范

命名時使用:Z或者Y開頭

ABAP 不區分大小寫

 

基本數據類型

 

數據類型按運行期間長度是否能改變可划分為兩類

不可變數據類型:C、N、T、D、I、F、P、X

長度可變數據類型:String、XString

ABAP中的語言是可以自動轉換的。

 

變量定義

  ①、Data   變量名(長度)  Type  數據類型   [精度(可選)]   [value  默認值(可選)]   —— csdn學堂(自己環境不能用)

data var_name(10) type c value 'aa'.

  ②、DATA <f> TYPE <type> VALUE <val>.   ——w3c

  ③、DATA <f> TYPE <type> LENGTH <len>.   ——w3c

 

C:默認長度為1,從前往后讀取,如:var_c長度為1,值為ab,輸出時只會輸出a

N:默認長度為1,從后往前讀取。可以對其進行運算,運算時不能直接使用 var_t = '2568' + 1,這個格式在ABAP中會被認為時兩個字符相加

DATA var_n(3) type n.
var_n = '123'.
var_n = var_n + 1.
out->write( var_n ).

T:輸出時會按照時間格式輸出22:14:59,可以對其進行運算,運算規則會按照時間分秒60進1,在運算時不能使用如下格式:var_t = ‘232159’ + 1,

data var_t type t.
var_t = '221459'.
var_t = var_t + 1.
out->write( var_t ).

D:輸出會按照格式輸出yyy-mm-dd,利用加減運算,可以得到上個月最后一天的值

data var_d type d.
var_d = sy-datum."sy-datum系統服務器時間
var_d = var_d + 1.
out->write( var_d ).

I:ABAP會自動識別數據類型,所以I類型只會讀取整數部分,同時會四舍五入

data var_i type i.
var_i = 100.
*var_i = '100.5'.abap語言中.為結束符號,所以在小數時,利用abap語言數據類型自動轉換的特點,用單引號將字符轉換為小數
out->write( var_i ).

F:浮點數輸出時都是用科學計數法

data var_f type f.
var_f = '21.35'."2.1350000000000001E1
out->write( var_f ).

P:在使用時一定是要規定精度,否則只會輸出整數部分,在SAP系統中基本上都是使用p類型,幾乎不使用F類型

data var_p type p decimals 2.
var_p = '25.36'."未定義精度時,只會輸出整數部分,同時也會遵守四舍五入
out->write( var_p ).

String:ABAP中拼接字符串不能使用加號

data var_s type string.
var_s = 'abc'.
concatenate 'sdf' 'sdae' into var_s."拼接字符串
out->write( var_s ).

 ABAP中沒有boolean類型,怎么辦,如下為標准型的代碼代替方式

*abap中沒有boolean類型數據,怎么辦
data var_bool type c.
var_bool = 'x'.
if var_bool = ''.
    out->write('false').
endif.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM