ABAP基本

定義數(shù)據(jù)類(lèi)型用關(guān)鍵字 TYPES.
定義數(shù)據(jù)對(duì)象用關(guān)鍵字 DATA.

Paste_Image.png
變量

在abap程序中用abap基本數(shù)據(jù)類(lèi)型(預(yù)定義類(lèi)型)定義局部數(shù)據(jù)類(lèi)型,還可以定義包含多個(gè)abap基本數(shù)據(jù)類(lèi)型的結(jié)構(gòu)體類(lèi)型横媚。

參考現(xiàn)有的數(shù)據(jù)對(duì)象(LIKE)
DATA A2 LIKE A1."A1對(duì)象
參考現(xiàn)有的數(shù)據(jù)類(lèi)型(TYPE)
DATA A2 LIKE A1."A1類(lèi)型

VALUE關(guān)鍵字來(lái)指定數(shù)據(jù)對(duì)象的初始值酥泛。
DATA NUM1 TYPE I VALUE 10. "NUM1初始值為10
LENGHT關(guān)鍵字指變量長(zhǎng)度。
DATA NUM2 TYPE C LENGHT8.
DATA NUM2(8) TYPE C.
DATA語(yǔ)句沒(méi)有指定 TYPE則默認(rèn)長(zhǎng)度為1的C類(lèi)型莉测。

系統(tǒng)變量

SY-SUBRC:系統(tǒng)執(zhí)行某命令后颜骤,表示執(zhí)行成功與否的變量,'0'表示成功
SY-UNAME:當(dāng)前使用者的name
SY-DATUM:當(dāng)前系統(tǒng)日期
SY-UZEIT:當(dāng)前系統(tǒng)時(shí)間
SY-TCODE:當(dāng)前執(zhí)行程序的Tcode

常量

數(shù)值文字不加單引號(hào)
123捣卤,-123
字符文字加單引號(hào)
'HELLO','123.4','123E4'
CONSTANTS語(yǔ)句用來(lái)定義常數(shù)忍抽,必須有VALUE值
CONSTANTS a1 TYPE TNAME VALUE8.

一個(gè)漢字占兩個(gè)長(zhǎng)度

賦值
MOVE 對(duì)象/對(duì)象字段 TO 對(duì)象/對(duì)象字段.
對(duì)象/對(duì)象字段 = 對(duì)象/對(duì)象字段.

運(yùn)算
Paste_Image.png

所有的符號(hào)都要用空格隔開(kāi),圓括號(hào)和操作符都是關(guān)鍵字需要跟操作數(shù)之間至少用一個(gè)空格隔開(kāi)董朝。
例:( 20 + 10) *10 + 10 / 2.
用'/'去大值 用DIV取小值

數(shù)值函數(shù)

ABS(n):取絕對(duì)值

SIGN(n):判斷數(shù)值符號(hào)
n為正鸠项,返回1;n為0子姜,返回0祟绊;n為負(fù),返回-1哥捕;

CEIL(n):取大于數(shù)值n的最小整數(shù).
例:WRITE CEIL(1.23). 輸出2
WRITE CEIL(-2.23). 輸出-2

FLOOR(n):取小于數(shù)值n的最小整數(shù)
例:WRITE FLOOR(1.23). 輸出1
WRITE FLOOR(-2.23). 輸出-3

TRUNC(n):去數(shù)值的整數(shù)部分
例:WRITE TRUNC(1.23). 輸出1
WRITE TRUNC(-2.23). 輸出-2

FRAC(n):去數(shù)值的小數(shù)部分
例:WRITE FRAC(1.23). 輸出0.23

具體用法:

DATA NUM TYPE P LENGTH 15 DECIMALS 3 .
num = TRUNC( NUM1 ).
WRITE:num.```

#####字符串函數(shù)


* 字符串移位
語(yǔ)法:SHIFT <c> by <n> PLACES <modes>.
<modes>:(1)空白牧抽,字符串往左移一位
(2).LEFT 字符串往左移n位
(3).RIGHT 字符串往右移n位
(4).CIRCULAR  字符串以環(huán)形方式移位

* 取代
語(yǔ)法:REPLACE <STR1> WITH <STR2> INTO <c>.
將字符串<c>中的<STR1>以<STR2>取代 *區(qū)分大小寫(xiě)

* 大小寫(xiě)轉(zhuǎn)換
語(yǔ)法:```TRANSLATE<c> to LOWER CASE."轉(zhuǎn)小寫(xiě)
  TRANSLATE <c> to UPPER CASE."轉(zhuǎn)大寫(xiě)```

* 字符串長(zhǎng)度 strlen(<c>)*只能取字符不包含空格
例:a3 = strlen( <c> ).

* 取部分字符串
<c>+n(n)
例:a2 = <c>+2(2)

具體代碼:```DATA A1 TYPE C LENGTH 6 VALUE'HELLO'.
DATA A2 TYPE C LENGTH 6.
DATA A3 TYPE I.
DATA STR1(3) VALUE 'ELL'."區(qū)分大小寫(xiě)
DATA STR2(3) VALUE '123'.
shift a1.
WRITE:/ a1.
SHIFT a1 by 1 PLACES CIRCULAR.
WRITE:/ a1.
REPLACE STR1 WITH STR2 INTO A1.
WRITE:/ A1.
A1 = 'HELLO'.
TRANSLATE a1 to LOWER CASE.
WRITE:/ a1.
a3 = strlen( a1 ).
WRITE:/ a3.
a2 = a1+2(2).
WRITE:/ a2.```
![運(yùn)行結(jié)果.png](http://upload-images.jianshu.io/upload_images/3459413-57ddeba474440095.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

######選擇屏幕
* 單選框、按鈕
PARAMETERS  TYPE  后面是類(lèi)型
```DEFAULT``` 設(shè)置默認(rèn)值
```OBLIGATORY```  設(shè)置為必輸項(xiàng)

* 復(fù)雜輸入框遥赚、
SELECT-OPTIONS FOR    后面是對(duì)象
LOW HIGH為值得上下范圍
```DEFAULT <g>```設(shè)置LOW值
```TO <g>``` 設(shè)置HIGH值

* 將多個(gè)元素放在一行上
```SELECTION-SCREEN BEGIN OF line.
 PARAMETERS P_WEeKS TYPE T001W-WERKS  OBLIGATORY ."工廠
 PARAMETERS P_WEeKS TYPE T001W-WERKS  OBLIGATORY ."工廠
 SELECTION-SCREEN END OF line.```
將并排顯示
* 創(chuàng)建元素邏輯塊扬舒,把邏輯上在一起屏幕元素分組
```SELECTION-SCREEN BEGIN OF BLOCK X WITH FRAME TITLE TEXT-001.
PARAMETERS P_WERKS TYPE T001W-WERKS  OBLIGATORY ."工廠
SELECT-OPTIONS:S_LIFNR FOR LFA1-LIFNR,"供應(yīng)商編碼
  S_MATNR FOR MARA-MATNR,  "物料號(hào)
S_MTART FOR MARA-MTART,  "物料類(lèi)型
  S_MATKL FOR MARA-MATKL,"物料組
 S_EXTWG FOR MARA-EXTWG,"外部物料組
S_BUDAT FOR MKPF-BUDAT."過(guò)賬日期
SELECTION-SCREEN END OF BLOCK X.```

* 拓展
單選框?qū)崿F(xiàn)復(fù)選框的功能
``SELECTION-SCREEN BEGIN OF BLOCK X WITH FRAME TITLE TEXT-001.
PARAMETERS P_WERKS TYPE T001W-WERKS  OBLIGATORY ."工廠
SELECT-OPTIONS:S_P_WERKS FOR T001W-WERKS NO-EXTENSION no intervals  .
SELECTION-SCREEN END OF BLOCK X.```

![例圖.png](http://upload-images.jianshu.io/upload_images/3459413-1b3b4e94d67fd133.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

其實(shí)在外觀上和單選框一樣,但實(shí)際為沒(méi)有擴(kuò)展沒(méi)有間隔的復(fù)選框凫佛。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末讲坎,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子愧薛,更是在濱河造成了極大的恐慌晨炕,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件厚满,死亡現(xiàn)場(chǎng)離奇詭異府瞄,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)碘箍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén)遵馆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人丰榴,你說(shuō)我怎么就攤上這事货邓。” “怎么了四濒?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵换况,是天一觀的道長(zhǎng)职辨。 經(jīng)常有香客問(wèn)我,道長(zhǎng)戈二,這世上最難降的妖魔是什么舒裤? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮觉吭,結(jié)果婚禮上腾供,老公的妹妹穿的比我還像新娘。我一直安慰自己鲜滩,他們只是感情好伴鳖,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著徙硅,像睡著了一般榜聂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嗓蘑,一...
    開(kāi)封第一講書(shū)人閱讀 49,185評(píng)論 1 284
  • 那天须肆,我揣著相機(jī)與錄音,去河邊找鬼脐往。 笑死休吠,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的业簿。 我是一名探鬼主播瘤礁,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼梅尤!你這毒婦竟也來(lái)了柜思?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤巷燥,失蹤者是張志新(化名)和其女友劉穎赡盘,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體缰揪,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡陨享,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了钝腺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片抛姑。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖艳狐,靈堂內(nèi)的尸體忽然破棺而出定硝,到底是詐尸還是另有隱情,我是刑警寧澤毫目,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布蔬啡,位于F島的核電站诲侮,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏箱蟆。R本人自食惡果不足惜沟绪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望顽腾。 院中可真熱鬧近零,春花似錦、人聲如沸抄肖。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)漓摩。三九已至,卻和暖如春入客,著一層夾襖步出監(jiān)牢的瞬間管毙,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工桌硫, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留夭咬,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓铆隘,卻偏偏與公主長(zhǎng)得像卓舵,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子膀钠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說(shuō)閱讀 10,871評(píng)論 6 13
  • IF;CASE; WHEN如果僅查詢一個(gè)字段和多個(gè)值掏湾,建議用caseDO; ENDDO 無(wú)限循環(huán),遇見(jiàn)E...
    Mmm_余安閱讀 1,195評(píng)論 0 3
  • ¥開(kāi)啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開(kāi)一個(gè)線程肿嘲,因...
    小菜c閱讀 6,358評(píng)論 0 17
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理融击,服務(wù)發(fā)現(xiàn),斷路器雳窟,智...
    卡卡羅2017閱讀 134,601評(píng)論 18 139
  • 由健倍寧冠名金姆指贊助尊浪,攜手慢跑團(tuán)《100元連云港海上云臺(tái)山兩天一夜免費(fèi)游》已經(jīng)圓滿結(jié)束,大巴車(chē)回到青島新業(yè)廣場(chǎng)的...
    鄭群兵閱讀 1,097評(píng)論 0 0