资源描述:
《sap必备基础语法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ABAP基础知识数据类型C:字符串D:日期型格式为YYYYMMDD例:'1999/12/03'F:浮点数长度为8I:整数N:数值组成的字符串如:011,'302'P:PACKED数用于小数点数值如:12.00542T:时间格式为:HHMMSS如:'14:03:00'X:16进制数如:'1A03'*-------------------------------------------------------------------------------------*变数宣告DATA[][][decimals]变数名称变数类型及长
2、度初值小数位数exp:DATA:COUNTERTYPEPDECIMALS3.NAME(10)TYPECVALUE'DELTA'.S_DATETYPEDVALUE'19991203'.exp:DATA:BEGINOFPERSON,NAME(10)TYPEC,AGETYPEI,WEIGHTTYPEDECIMALS2,ENDOFPERSON.另外,有關DATA宣告的指令還有:CONSTANTS(宣告常數)、STATICS(臨時變數宣告).exp:CONSTANTSPITYPEPDECIMALS5VALUE'3.14159'.STATI
3、CS敘述宣告的變數僅在目前的程式中使用,結束後會自動釋放語法:STATICS[][][]系統專用變數說明系統內部專門創建了SYST這個STRUCTURE,里面的欄位存放系統變數,常用的系統變數有:SY-SUBRC:系統執行某指令后,表示執行成功与否的變數,'0'表示成功SY-UNAME:當前使用者登入SAP的USERNAME;SY-DATUM:當前系統日期;SY-UZEIT:當前系統時間;SY-TCODE:當前執行程式的TransactioncodeSY-INDEX:當前LOOP循環過的次數SY-TABIX:當前處理的是inte
4、rnaltable的第几筆SY-TMAXL:Internaltable的總筆數SY-SROWS:屏幕總行數;SY-SCOLS:屏幕總列數;SY-MANDT:CLIENTNUMBERSY-VLINE:畫豎線SY-ULINE:畫橫線TYPE敘述用來指定資料型態或宣告自定資料型態Example:TYPES:BEGINOFMYLIST,NAME(10)TYPEC,NUMBERTYPEI,ENDOFMYLIST.DATALISTTYPEMYLIST.LIKE敘述跟TYPE敘述使用格式相同,如DATATRANSCODELIKESY-TCOD
5、E.不同的是LIKE用在已有值的資料項,如系統變數,而TYPE敘述則是用在指定資料型態。*-------------------------------------------------------------------------------------*输出一.WRITE語句ABAP/4用來在屏幕上輸出資料的指令是WRITE指令,例如:WRITE:'USERNAMEIS:',SY-UNAME.二.指定屏幕輸出位置指定輸出位置的語句格式為:WRITE:[AT][/][][()]資料項[]其中:/:在下一行輸出:指定輸出的行
6、號;():指定輸出位數(長度):指定顯示格式參數,參數有:LEFT-JUSTIFIED資料*左對齊CENTERED資料*中間對齊RIGHT-JUSTIFIED資料*右對齊UNDER正對在資料項的下面顯示NO-GAP緊接著顯示,不留空格USINGEDITMASK:使用內嵌子元顯示,如12:03:20USINGNOEDITMASK:不使用內嵌子元NO-ZER數字前面0的部分不顯示NO-SIGN:不顯示正負號DECIMALS:顯示位小數EXPOENT:F(浮點數)指數的值ROUND:四舍五入至小數點后位CURRENCY:幣別顯示DD/
7、MM/YY:日期顯示格式MM/DD/YY:YY/MM/DD:YY/DD/MMMM/DD/YYYY:DD/MM/YYYYYYYY/MM/DD:YYYY/DD/MM:例如1:WRITE:/10(6)'ABCDEFGHIJK'.輸出結果為:ABCDEF例如2:DATA:XTYPEIVALUE'11:20:30',A(5)TYPECVALUE'ABCDE'.WRITE:/XUSINGEDITMASK'__:__:__'.WRITE:/XUSINGEDITMASK'$___,___'.WRITE:/YNO-GAP.輸出結果為:11:20:
8、30$112,030ABCDEF例如3:DATA:LENTYPEIVALUE10,POSTYPEIVALUE11,TEXT(10)VALUE'1234567890'WRITE'Thetext------------appearsinthetext.'.WRITE