SAPABAP開發(fā)基礎概述_第1頁
SAPABAP開發(fā)基礎概述_第2頁
SAPABAP開發(fā)基礎概述_第3頁
SAPABAP開發(fā)基礎概述_第4頁
SAPABAP開發(fā)基礎概述_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、學習順序數據類型域什么什么的字符串結構內表OpenSQL函數子程序報表一、T-CODESE80 對象掃瞄器SE38 寫程序SE11 建表SE37 函數SM04 查看用戶SE91 message系統(tǒng)sy-uzeit 系統(tǒng)時刻sy-datum 系統(tǒng)日期sy-datum是2010.10.10 sy-datum+0(2)是20 sy-datum+2(3)是101PS a-comun+29(11).這也是偏移的操作sy-subrc 正常是0,不正常是0或其他二、數據類型完整型d 日期 8字節(jié) YYYYMMDDt 時刻 6字節(jié)i 整型f 浮點型string 可變長的字符型非完整型非完整型c 字符型 (若不

2、指定長度默認是1個字節(jié))n 數字字符型p 小數(常用)(壓縮數 裝載它的空間是(x+1)/2 x是原來裝載它的長度)data v1(5) type p decimals 2 value 123.45.三、各種定義差不多格式DATA:XX TYPE YY VALUEZZ各種來了*參照數據字典定義*參照數據元素定義data v9 type zdata_jg_20100325_01.*參照數據庫表的字段定義data v10 type scarr-carrid.*定義常量CONSTANTS c1 TYPE i VALUE 1.*定義單值選側屏幕PARAMETERS p1(8) TYPE n defau

3、lt AA.*參照自定義類型定義變量TYPES t1(10) TYPE c.DATA v9 TYPE t1.*參照自定義變量定義變量DATA v10 LIKE v9.*參照數據字典中的TYPE GROUP定義數據類型TYPE-POOLS zjg01 .data v20 type zjg01_z1.定義結構DATA : BEGIN OF wa, carrid TYPE spfli-carrid, connid TYPE spfli-connid, cityfrom TYPE spfli-cityfrom, cityto TYPE spfli-cityto, distance TYPE spfli

4、-distance, distid TYPE string, END OF wa.依照結構定義內表DATA itab LIKE TABLE OF wa. 流程操縱-IFELSEIF a 12. WRITE : 他比12大.ELSE. WRITE : 他比12小.ENDIF.循環(huán)DO 10 TIMES. WRITE: / 這是第,ie,次. ie = ie + 1.ENDDO.把內表循環(huán)到結構中LOOP AT itab INTO wa. WRITE : / wa-id.ENDLOOP.內表各種操作-collect在內表中一定有一個數值型的字段,而且其他字段均為字符型把數值型字段上的數加起來DAT

5、A : BEGIN OF wa, a(4) TYPE c, b(4) TYPE c, c TYPE i, END OF wa.DATA itab LIKE TABLE OF wa.wa-a = 001.wa-b = 0101.wa-c = 100.*APPEND wa TO itab.COLLECT wa INTO itab.wa-a = 002.wa-b = 0201.wa-c = 200.*APPEND wa TO itab.COLLECT wa INTO itab.wa-a = 002.wa-b = 0201.wa-c = 100.*APPEND wa TO itab.COLLECT w

6、a INTO itab.LOOP AT itab INTO wa. WRITE : / wa-a, wa-b, wa-c.ENDLOOP.內表各種操作-readLOOP AT itab1 INTO wa. READ TABLE itab2 INTO wa1 WITH KEY carrid = wa-carrid. IF sy-subrc 0. clear wa1. move-corresponding wa to wa1. append wa1 to itab2. ENDIF.ENDLOOP.依照結構修改內表modify itab from wa.SQL操作1、把SQL結果放入內表中SELEC

7、T carrid connid cityfrom cityto distance distid FROM spfli INTO CORRESPONDING FIELDS OF TABLE itab. 放到了內表中INTO CORRESPONDING FIELDS OF wa.放到了結構中2.1、多表查詢SELECT scarrcarrid scarrcarrname spfliconnid spflicityfromspflicityto FROM scarr INNER JOIN spfli ON scarrcarrid = spflicarrid INTO CORRESPONDING FI

8、ELDS OF TABLE itab.2.2、更多表查詢SELECT spflicarrid spfliconnid spflicityfrom spflicitytosbookfldate sbookbookid sbookcustomid sbookcusttype scustomnamescustomstreet FROM spfli INNER JOIN sbook ON spflicarrid = sbookcarrid AND spfliconnid = sbookconnid INNER JOIN scustom ON sbookcustomid = scustomid INTO

9、 CORRESPONDING FIELDS OF TABLE itab.各種關鍵字APPEND wa TO itab.把結構搞到內表中MOVE TO 結構賦值modify itab from wa依照結構修改內表MOVE-CORRESPONDING str1 TO str3.同名字段賦值分支研究data:v1 type i value 1.v2 type i.do 50 times.v2 = v1 * 2.write : v1,v2.v1=v1 +1.enddo.函數來了字符串操作CONCATENATE wa-fldate wa-week INTO wa-www SEPARATED BY/星期

10、.子程序三種類型:值傳遞,值傳遞并返回# 1.值傳遞-實參在傳遞過程中不發(fā)生改變,只是傳遞一個實參的拷貝,適用于值不能改變的單值,不適合內表參數傳遞。# 2.值傳遞并返回結果-傳遞一個實參的拷貝,實參的拷貝發(fā)生改變,返回給實參,適合于能夠改變的單值傳遞,不適合內表參數傳遞。# 3.引用傳遞-傳遞實參,子程序運行結束后,實參依照子程序運行結果,適合單值也適合內表??纯创a就明白如何用了DATA : a TYPE i, b TYPE i, c TYPE i.PERFORM x USING a.這是值傳遞PERFORM y CHANGING b.這是值傳遞改變PERFORM z CHANGING c

11、.這是引用傳遞PERFORM xyz USING a CHANGING b c.連起來確實是這么用滴*值傳遞和值傳遞引用改變需要寫個value,引用傳遞不需要FORM xyz USING value(f1) TYPE i值傳遞 CHANGING value(f2) TYPE i值傳遞改變 f3 TYPE i.引用傳遞ENDFORM. *假如傳入的是內表,子程序中能夠這么寫FORM xyz CHANGING p-itab like itab.*也能夠這么寫吧FORM xyz CHANGING p-itab type itab.屏幕START-OF-SELECTION. 主程序開始了! WRITE

12、 : / text-001,sy-lsind.AT LINE-SELECTION. CASE sy-lsind. WHEN 1. WRITE : / 第一級詳細列表,sy-lsind. WHEN 2. WRITE : / 第二級詳細列表,sy-lsind. WHEN 3. WRITE : / 第三級詳細列表,sy-lsind. ENDCASE.單值選擇屏幕PARAMETER p1 TYPE scarr-carrid DEFAULT AA.多重選擇屏幕TABLES scarr.相當于data scarr type scarr.SELECT-OPTIONS pi FOR scarr-carrid.

13、 for后面不是類型是變量*下面是用法SELECT carrid carrname FROM scarr INTO CORRESPONDING FIELDS OF TABLE itab WHERE carrid IN pi.LOOP AT itab INTO wa. WRITE : / wa-carrid, wa-carrname.ENDLOOP.data : v1 type i value 1.data : v2 type i value 1.data : v3 type i value 2.data : v4 type i value 3.do v1 times.write : v1, -

14、 , v2.write : v1, - , v2.write : v1, - , v2.data : begin of wa1, ebeln(3) type c, dat type d, menge type i, end of wa1. data itab like table of wa1. wa1-ebeln = 001. wa1-dat = 20070803. wa1-menge = 10. append wa1 to itab. clear wa1. wa1-ebeln = 001. wa1-dat = 20070903. wa1-menge = 20. append wa1 to

15、itab. clear wa1. wa1-ebeln = 002. wa1-dat = 20080303. wa1-menge = 20. append wa1 to itab. clear wa1. wa1-ebeln = 003. wa1-dat = 20080603. wa1-menge = 30. append wa1 to itab. clear wa1.loop at itab into wa1.write : / wa1-ebeln, wa1-dat, wa1-menge.endloop.uline.data : begin of wa2, ebeln(3) type c, menge type i, end of wa2. data itab2 like table of wa2.loop at itab into wa1.move-corresponding wa1 to wa2.collect wa2 into itab2.endlo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論