SAP基础知识学习资料整理_第1页
SAP基础知识学习资料整理_第2页
SAP基础知识学习资料整理_第3页
SAP基础知识学习资料整理_第4页
SAP基础知识学习资料整理_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据类型C :字符串D :日期型 格式为 YYYYMMDD 例:1999/12/03F : 浮点数 长度为8I :整数N :数值组成的字符串 如:011,302P : PACKED数 用于小数点数值 如:12.00542T : 时间 格式为:HHMMSS 如:14:03:00X : 16进制数 如:1A03*-*变数宣告DATA decimals 变数名称 变数类型 及 长度 初值 小数位数exp:DATA : COUNTER TYPE P DECIMALS 3.NAME(10) TYPE C VALUE DELTA.S_DATE TYPE D VALUE 19991203.exp:DATA : BEGIN OF PERSON,NAME(10) TYPE C,AGE TYPE I,WEIGHT TYPE DECIMALS 2,END OF PERSON.另外,有關DATA宣告的指令還有: CONSTANTS(宣告常數)、STATICS(臨時變數宣告).exp:CONSTANTS PI TYPE P DECIMALS 5 VALUE 3.14159.STATICS 敘述宣告的變數僅在目前的程式中使用, 結束後會自動釋放 語法: STATICS 系統專用變數說明系統內部專門創建了SYST這個STRUCTURE,里面的欄位存放系統變數,常用的系統變數有:SY-SUBRC : 系統執行某指令后,表示執行成功与否的變數,0 表示成功SY-UNAME: 當前使用者登入SAP的USERNAME;SY-DATUM: 當前系統日期;SY-UZEIT: 當前系統時間;SY-TCODE: 當前執行程式的Transaction codeSY-INDEX : 當前LOOP循環過的次數SY-TABIX: 當前處理的是internal table 的第几筆SY-TMAXL: Internal table的總筆數SY-SROWS: 屏幕總行數;SY-SCOLS: 屏幕總列數;SY-MANDT: CLIENT NUMBERSY-VLINE: 畫豎線SY-ULINE: 畫橫線TYPE 敘述用來指定資料型態或宣告自定資料型態Example:TYPES: BEGIN OF MYLIST,NAME(10) TYPE C,NUMBER TYPE I,END OF MYLIST.DATA LIST TYPE MYLIST.LIKE 敘述跟TYPE敘述使用格式相同, 如DATA TRANSCODE LIKE SY-TCODE.不同的是 LIKE 用在已有值的資料項, 如系統變數, 而TYPE敘述則是用在指定資料型態。*-*输出一. WRITE 語句ABAP/4用來在屏幕上輸出資料的指令是WRITE指令,例如:WRITE: USER NAME IS:, SY-UNAME.二. 指定屏幕輸出位置指定輸出位置的語句格式為:WRITE: AT / () 資料項 其中: / : 在下一行輸出: 指定輸出的行號;():指定輸出位數(長度): 指定顯示格式參數,參數有:LEFT-JUSTIFIED 資料靠左對齊CENTERED 資料靠中間對齊RIGHT-JUSTIFIED 資料靠右對齊UNDER 正對在資料項的下面顯示NO-GAP 緊接著顯示,不留空格USING EDIT MASK : 使用內嵌子元顯示, 如 12:03:20USING NO EDIT MASK: 不使用內嵌子元NO-ZERO: 數字前面 0 的部分不顯示NO-SIGN: 不顯示正負號DECIMALS : 顯示 位小數EXPOENT : F(浮點數)指數的值ROUND : 四舍五入至小數點后位CURRENCY : 幣別顯示DD/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: X TYPE I VALUE 11:20:30,A(5) TYPE C VALUE AB CDE.WRITE: / X USING EDIT MASK _:_:_.WRITE: / X USING EDIT MASK $_,_.WRITE: / Y NO-GAP.輸出結果為:11:20:30$112,030ABCDEF例如3: DATA: LEN TYPE I VALUE 10,POS TYPE I VALUE 11,TEXT(10) VALUE 1234567890WRITE The text - appears in the text.WRITE AT POS(LEN) TEXT.WRITE TO 语句的基本 形式要将值(文 字)或源字 段内容写入 目标字段, 可以使用 WRITE TO 语句:语法WRITE TO .DATA: NUMBER TYPE F VALUE 4.3,TEXT(10),FLOAT TYPE F,PACK TYPE P DECIMALS 1.WRITE NUMBER.WRITE NUMBER TO TEXT EXPONENT 2.WRITE / TEXT.WRITE NUMBER TO FLOAT.WRITE / FLOAT.WRITE NUMBER TO PACK.WRITE / PACK.MOVE NUMBER TO PACK.WRITE / PACK.exp:DATA: NAME(10) VALUE SOURCE,SOURCE(10) VALUE Antony,TARGET(10).WRITE (NAME) TO TARGET.WRITE: TARGET.exp :DATA: COUNTER TYPE I.COMPUTE COUNTER = COUNTER + 1.COUNTER = COUNTER + 1.ADD 1 TO COUNTER.在此,三条 运算语句进 行相同算术 运算输出屏幕上 的线和空行用下列语法 ,可以在输 出屏幕上生 成水平线:语法ULINE AT /().它等同于WRITE AT /() SY-ULINE.AT 后的格式规 范,与在 在屏幕上定 位 WRITE 输出 (页 28) 中为 WRITE 语句说明的 格式规范完 全一样。如果没有格 式规范,系 统则开始新 的一行,并 用水平线填 充该行。否 则,只按指 定输出水平 线。生成水平线 的另一种方 法,是在 WRITE 语句中键入 恰当数量的 连字符,如 下所示:WRITE AT /() -.垂直线用下列语法 ,可以在输 出屏幕上生 成垂直线:语法WRITE AT / SY-VLINE.或WRITE AT / |.空行用下列语法 ,可以在输 出屏幕上生 成空行:语法SKIP .该语句从当 前行开始, 在输出屏幕 上生成 个空行。如 果没有指定 的值,就输 出一个空行 。要将输出定 位在屏幕的 指定行上, 请使用:语法SKIP TO LINE .该语句允许 将输出位置 向上或向下 移动。四. 顯示圖示:語法: WRITE: AS SYMBOL.WRITE: AS ICON.例如: INCLUDE .INCLUDE .WRITE: / Phone symbol:, SYM_PHONE AS SYMBOL.WRITE: / Alarm Icon:, ICON_VOICE_OUTPUT AS ICON.要查看系統所提供有那些符號及圖示,可選擇EDIT下的Insert Statement,選擇Write,接下來選擇要查看的群組,如SYMBOL 或ICON, 接下來按Display即可.*-*一. Internal Table 的宣告ABAP/4中的Internal Table是一种Data Structure,類似于其他語言中的STRUTURE,它可以由几個不同類型的欄位(field)組成,用來表示具有不同屬性的某一事物,單獨一筆資料表示某個事物,多筆資料表示具有相同屬性的多個事物.Internal table 的定義有以下几种格式:格式一. DATA: BEGIN OF OCCURS , TYPE , TYPE , TYPE , END OF .語法:DATA OCCURS WITH HEADER LINEExample:DATA VECTOR TYPE I OCCURS 10 WITH HEADER LINE.格式二. TYPES: BEGIN OF , TYPE , TYPE , TYPE , END OF .TYPES TYPE OCCURS .格式三. DATA: BEGIN OF .INCLUDE STRUCTURE .DATA: END OF .DATA: LIKE OCCURS .exp:TYPES VECTOR TYPE I OCCURS 10.TYPES: BEGIN OF LINE,COLUMN1 TYPE I,COLUMN2 TYPE I,COLUMN3 TYPE I,END OF LINE.TYPES ITAB TYPE LINE OCCURS 10.TYPES: BEGIN OF DEEPLINE,TABLE1 TYPE VECTOR,TABLE2 TYPE ITAB,END OF DEEPLINE.TYPES DEEPTABLE TYPE DEEPLINE OCCURS 10.本示例创建 与上例相同 的内表数据 类型(VECTOR 和 ITAB) 。然后创建 数据类型 DEEPLINE 作为字段串 ,包含这些 内表作为组 件。通过该 字段串,数 据类型 DEEPTABLE 被创建为内 表。因此该 内表的元素 本身就是内 表。exp :TYPES: BEGIN OF LINE,COLUMN1 TYPE I,COLUMN2 TYPE I,COLUMN3 TYPE I,END OF LINE.TYPES ITAB TYPE LINE OCCURS 10.DATA TAB1 TYPE ITAB.DATA TAB2 LIKE TAB1 WITH HEADER LINE.同 创建内表数 据类型 (页 99) 中所示,该 示例创建数 据类型 ITAB 作为内表。 通过使用 DATA 语句的 TYPE 参数引用 ITAB, 使数据对象 TAB1 与 ITAB 结构相同。 通过使用 DATA 语句的 LIKE 参数引用 TAB1, 使数据对象 TAB2 结构相同。 创建的 TAB2 带表头行。 因此,可以 在程序中使 用 TAB2-COLUMN1、 TAB2-COLUMN2 和 TAB2-COLUMN3 等定位表格 工作区域 TAB2。exp :DATA FLIGHT_TAB LIKE SFLIGHT OCCURS 10.本示例创建 数据对象 FLIGHT_TAB, 其结构与数 据库表格 SFLIGHT 相同。本示例介绍 如何采用两 种不同的步 骤创建同一 内表。TYPES VECTOR_TYPE TYPE I OCCURS 10.DATA VECTOR TYPE VECTOR_TYPE WITH HEADER LINE.在 此创建一 个内表数据 类型 VECTOR_TYPE, 其行包含首 先创建的基 本类型 I 字段。然后 ,通过引用 VECTOR_TYPE 创建数据对 象 VECTOR。 通过使用 WITH HEADER LINE 选项还创建 表格工作区 域 VECTOR。 在这种情况 下,表格工 作区域包含 一种类型 I 字段,可以 通过名称 VECTOR 定位。DATA VECTOR TYPE I OCCURS 10 WITH HEADER LINE.在这种情况 下,通过直 接在 DATA 语句中使用 OCCURS 选项创建完 全一样的数 据类型 VECTOR。*-*1. TYPES type. 2. TYPES type(len).3. TYPES: BEGIN OF structype . END OF structype. 4. TYPES itabtype TYPE tabkind OF linetype LIKE tabkind OF lineobjWITH UNIQUE|NON-UNIQUE keydef INITIAL SIZE n. 5. TYPES itabtype TYPE RANGE OF type.TYPES itabtype LIKE RANGE OF f. 6. TYPES itabtype TYPE linetype|LIKE lineobj OCCURS n. *-*APPEND LINE 格式:APPEND TO 举例一:(使用WORK AREA)DATA : BEGIN OF LINE,COL1 TYPE I,COL2 TYPE I,END OF LINE.DATA ITAB LIKE LINE OCCURS 10.DO 2 TIMES.LINE-COL1 = SY-INDEX.LINE-COL2 = SY-INDEX * 2.APPEND LINE TO ITAB.ENDDO.LOOP AT ITAB INTO LINE.WRITE : / LINE-COL1,LINE-COL2.ENDLOOP.举例二 (不使用WORK AREA)DATA : BEGIN OF ITAB OCCURS 10,COL1 TYPE I,COL2 TYPE I,END OF ITAB.DO 2 TIMES.ITAB-COL1 = SY-INDEX.ITAB-COL2 = SY-INDEX * 2.APPEND ITAB.ENDDO.LOOP AT ITAB.WRITE : / ITAB-COL1,ITAB-COL2.ENDLOOP.exp:DATA: BEGIN OF ITAB OCCURS 10,COL1 TYPE C,COL2 TYPE I,END OF ITAB.DO 3 TIMES.APPEND INITIAL LINE TO ITAB.ITAB-COL1 = SY-INDEX. ITAB-COL2 = SY-INDEX * 2.APPEND ITAB.ENDDO.LOOP AT ITAB.WRITE: / ITAB-COL1, ITAB-COL2.ENDLOOP.舉例三. (加入另一個Internal table的元素)格式: APPEND LINES OF FROM TO TO .將的元素加入至中,可選取自至的范圍.APPEND LINES OF ITAB TO JTAB.COLLECT LINECOLLECT 指令也是將元素加入Internal table中,与APPEND 的區別是: COLLECT指令在非數值欄位相同的情況下,將數值欄位匯總.格式: COLLECT INTO DATA: BEGIN OF ITAB OCCURS 3,COL1(3) TYPE C,COL2 TYPE I,END OF ITAB.ITAB-COL1 = ABC. ITAB-COL2 = 10.COLLECT ITAB.ITAB-COL1 = XYZ. ITAB-COL2 = 20.COLLECT ITAB.ITAB-COL1 = ABC. ITAB-COL2 = 80.COLLECT ITAB.此時, internal table中放的是2筆數据, 分別為:ITAB-COL1 ITAB-COL2ABC 90XYZ 20*-*INSERT LINE將元素插入在指定的internal table位置之前.格式: INSERT INTO INITIAL LINE INTO INDEX 或者: INSERT LINES OF FROM TO INTO INDEX 其中: 即work area,工作區中的元素.INITIAL LINE INTO :插入一筆初始化的記錄.: internal tableINDEX : internal table 的記錄號.(新加入的元素放在此記錄前面)Example:DATA: BEGIN OF LINE,COL1 TYPE I,COL2 TYPE I,END OF LINE.DATA ITAB LIKE LINE OCCURS 10.DO 3 TIMES.LINE-COL1 = SY-INDEX *10.LINE-COL2 = SY-INDEX *20.APPEND LINE INTO ITAB.ENDDO.LINE-COL1=100.LINE-COL2=200.INSERT LINE INTO ITAB INDEX 2. 插入在位置2之前LOOP AT ITAB INTO LINE.WRITE: / SY-TABIX,LINE-COL1,LINE-COL2. SY-TABIX為Table位置ENDLOOP. 執行結果:1 10 202 100 200 插入的元素3 20 404 30 60插入另一Internal Table元素語法:INSERT LINES OF FROM TO TO INDEX 將的元素插入至中, 位置在 之前, 可選取自至的範圍Example:APPEND LINES OF ITAB TO JTAB INDEX 3.將ITAB所有元素插入JTAB中, 位置在第三個元素之前*-*讀取internal table格式一: LOOP AT INTO FROM TO WHERE ENDLOOP.Example:LOOP AT ITAB INTO LINE WHERE COL1 100.WRITE: / SY-TABIX,LINE-COL1.ENDLOOP.僅讀取 COL1 100 的元素格式二:READ TABLE INTO INDEX / WITH KEY 舉例. (格式二)DATA: BEGIN OF ITAB OCCURS 10,COL1 TYPE I,COL2 TYPE I,END OF ITAB.DO 10 TIMES.ITAB-COL1 = SY-INDEX.ITAB-COL2 = SY-INDEX * 2.APPEND ITAB.ENDDO.READ TABLE ITAB INDEX 3.(或者: READ TABLE ITAB WITH KEY COL1 = 3.)WRITE: / ITAB-COL1 = , ITAB-COL1, ITAB-COL2 = , ITAB-COL2.執行結果同樣是: ITAB-COL1 = 3ITAB-COL2 = 6.Example:READ TABLE ITAB INTO LINE INDEX 5讀取 ITAB的第5個元素資料, 放入 LINE的欄位中根據欄位內容尋找語法:READ TABLE INTO Example:ITAB-COL1 = ABC.READ TABLE ITAB INTO LINE.找出ITAB 中 COL1 欄位內容是 ABC 的元素, 找到的值放入 LINE 中若找到 SY-SUBRC傳回0, 找不到則傳回 4, 必須宣告有 work area*-*修改internal table 中的值格式: MODIFY FROM INDEX TRANSPORTING WHERE 舉例一. READ TABLE ITAB INDEX 3.LINE-COL1 = 29.MODIFY ITAB FROM LINE TRANSPORTING COL1.將第三筆記錄的COL1欄位的值修改為29.舉例二. T_SALARY - salary = 50.MODIFY T_SALARY TRANSPORTING salary WHERE birthday = 1999/12/06.DELETE internal table中的欄位格式: DELETE INDEX .或: DELETE FROM TO WHERE Internal table 排序 SORT BY 其中: 有DESCENDING 和ASCENDING, Default 為ASCENDING.: 為指定排序的欄位.Example: SORT ITAB DESCENDING BY COL2.將 ITAB 根據 COL2欄位遞減排序*-*确定内表属 性如果在处理 过程中想知 道内表一共 包含多少行 ,或者想知 道定义的 OCCURS 参数的大小 ,请使用 DESCRIBE 语句,用法 如下:语法DESCRIBE TABLE LINES OCCURS .如果使用 LINES 参数,则将 填充行的数 量写入变量 。 如果使用 OCCURS 参数,则将 行的初始号 写入变量 。DATA: BEGIN OF LINE,COL1 TYPE I,COL2 TYPE I,END OF LINE.DATA ITAB LIKE LINE OCCURS 10.DATA: LIN TYPE I, OCC TYPE I.DESCRIBE TABLE ITAB LINES LIN OCCURS OCC.WRITE: / LIN, OCC.DO 1000 TIMES.LINE-COL1 = SY-INDEX.LINE-COL2 = SY-INDEX * 2.APPEND LINE TO ITAB.ENDDO.DESCRIBE TABLE ITAB LINES LIN OCCURS OCC.WRITE: / LIN, OCC.其输出为:0 101.000 10在此创建内 表 ITAB。 在填充表格 前后执行 DESCRIBE 语句。更改 当前行号, 但无法更改 初始行号。*-*加總SUM.總和計算存放与work area中,但只能在LOOP 中使用.例: LOOP AT ITAB INTO LINE.SUM.ENDLOOP.WRITE: / LINE-COL1, LINE-COL2.LINE-COL1 和 LINE-COL2 存數值總和初始化internal tableREFRESH . 清空中的值.使用在沒有 HEADER LINE 的 Internal Table中, 清除所有元素CLEAR . 清空的Header Line.使用在有 HEADER LINE 的 Internal Table中, 清除所有元素FREE . 釋放記憶体空間.釋放(Release) Internal Table所佔的記憶體空間, 用在 REFRESH和 CLEAR指令之後将值重置为 默认值可以用 CLEAR 语句重置任 何数据对象 值,如下所 示:语法CLEAR .exp:DATA NUMBER TYPE I VALUE 10.WRITE NUMBER.CLEAR NUMBER.WRITE / NUMBER.输出为:100CLEAR 语句将字段 NUMBER 的内容从10 重置为默认 值 0。*-*添加字段 顺序并将结 果赋给另一 个字段语法ADD THEN UNTIL GIVING .如果 、 、 . 、 是在内存中 相同类型和 长度的等距 字段序列, 则进行求和 计算并将结 果赋给 添加字段 顺序并将结 果添加到另 一个字段的 内容中语法ADD THEN UNTIL TO .该语句除了 将字段总和 添加到 的旧内容中 之外,与上 面语句的工 作方式相同 。有关其它相 似变体的信 息,参见有 关 ADD 语句的关键 字文档。DATA: BEGIN OF SERIES,N1 TYPE I VALUE 10,N2 TYPE I VALUE 20,N3 TYPE I VALUE 30,N4 TYPE I VALUE 40,N5 TYPE I VALUE 50,N6 TYPE I VALUE 60,END OF SERIES.DATA SUM TYPE I.ADD SERIES-N1 THEN SERIES-N2 UNTIL SERIES-N5 GIVING SUM.WRITE SUM.ADD SERIES-N2 THEN SERIES-N3 UNTIL SERIES-N6 TO SUM.WRITE / SUM.输出如下:150350在此,将 N1 到 N5 组件内容求 和并将其值 赋给字段 SUM。然 后,将 N2 到 N6组件求 和并将其添 加到 SUM 的值中。*-*屏幕輸入命令在ABAP/4中要從螢幕輸入變量, 使用的命令是 PARAMETERS 及SELECTION-OPTIONS: 1. PARAMETER: 輸入一個變量或欄位內容2. SELECTION-OPTIONS: 使用條件篩選畫面來輸入數据 PARAMETERS 指令基本的輸入命令, 類似如BASIC的INPUT命令, 但無法使用F格式(浮點數)語法:PARAMETERS DEFAULT LOWER CASEOBLIGATORY AS CHECKBOXRADIOBUTTON GROUP Example:PARAMETERS: NAME(8),AGE TYPE I,BIRTH TYPE D.執行結果: 在日期的輸入格式上為 MM/DD/YY , MM/DD/YYYY, MMDDYY或MMDDYYYY , 如輸入 020165表 1965年02月01日, 與02/01/65的輸入是一樣的, 日期輸入範圍為西元1950年至2049年1. DEFAULT 設定輸入的預設值Example:PARAMETERS: COMPANY(20) DEFAULT DELTA,BIRTH TYPE D DEFAULT 19650201.2. LOWER CASEABAP/4預設是將字串輸入值自動轉換為大寫, 加上此參數會將輸入的資料轉成小寫, 3. OBLIGATORY強制要求輸入, 螢幕上會出現一個 ? , 使用者必須要輸入才可.4. AS CHECKBOX輸入 CHECKBOX的格式Example:PARAMETERS: TAX AS CHECKBOX DEFAULT X,NTD AS CHECKBOX.執行結果:5. RADIOBUTTON GROUP 輸入 RADIO BUTTON GROUP 的方式Example:PARAMETERS: BOY RADIOBUTTON GROUP SEX DEFAULT X, GIRL RADIOBUTTON GROUP SEX.exp :TABLES SPLFI.PARAMETERS: LOW LIKE SPFLI-CARRID, HIGH LIKE SPFLI-CARRID.SELECT * FROM SPLFI WHERE CARRID BETWEEN LOW AND HIGH.ENDSELECT.*-*SELECTION-OPTIONSSELECTION-OPTIONS所輸入的值實際上是放在internal table中的,該Internal table 有四個欄位,分別是:SIGN,OPTION,LOW,HIGH. 條件篩選檢查條件輸入畫面指令, 輸入條件後可配合SELECT指令自TABLE讀取符合條件的資料, 直接執行或放入 Internal Table中, 條件有四個參數:1. SIGN: I: 表篩選條件符合的資料E: 表篩選條件不符合的資料2. OPTION: 比較的條件符號EQ(等於),NE(不等於),GT(大於),LE(小於),CP(包含),NP(不包含)3. LOW: 最小值4. HIGH: 最大值語法:SELECTION-OPTIONS FOR Example:TABLES SPFLI.SELECT-OPTIONS AIRLINE FOR SPFLI-CONNID.將條件的輸入值存放入 AIRLINE, 篩選選擇為SPFLI中的CONNID欄位改變條件輸入格式1. DEFAULT TO 設定開始結束範圍輸入預設值Example:SELECT-OPTIONS AIRLINE FOR SPFLI-CONNID DEFAULT 2042 TO 4555.2. NO-EXTENSION設定不要Multi-Option輸入畫面3. NO INTERVALS設定不要區間範圍輸入畫面4. LOWER CASE輸入轉換成大寫5. OBLIGATORY強制要求輸入*-*配合 SELECT 命令條件輸入完後要將符合條件的資料篩選出來, 可配合使用 SELECT 指令1.使用WHERE Example:TABLES SPFLI.SELECT-OPTIONS AIRLINE FOR SPFLI-CONNID.SELECT * FROM SPFLI WHERE CONNID IN AIRLINE.WRITE: / SPFLI-CONNID,SPFLI-CITYFROM,SPFLI-CITYTO.ENDSELECT.2.使用CHECK參數Example:TABLES SPFLI.SELECT-OPTIONS AIRLINE FOR SPFLI-CONNID.SELECT * FROM SPFLI.CHECK AIRLINE.WRITE: / SPFLI-CONNID,SPFLI-CITYFROM,SPFLI-CITYTO.ENDSELECT.*exp: TABLES SPFLI.SELECT-OPTIONS: S_CARRID FOR SPFLI-CARRID,S_CITYFR FOR SPFLI-CITYFROM,S_CITYTO FOR SPFLI-CITYTO,S_CONNID FOR SPFLI-CONNID.SELECT * FROM SPFLI.CHECK: SPFLI-CARRID IN S_CARRID,SPFLI-CITYFR IN S_CITYFR,SPFLI-CITYTO IN S_CITYTO,SPFLI-CONNID IN S_CONNID.WRITE: / SPFLI-CARRID, SPFLI-CONNID, SPFLI-CITYFROM, SPFLI-CITYTO.ENDSELECT.3.使用 IF IN 敘述Example:SELECT-OPTIONS AIRLINE FOR SPFLI-CONNID.SELECT * FROM SPFLI.IF SPFLI-CONNID IN AIRLINE.WRITE: / SPFLI-CONNID,SPFLI-CITYFROM,SPFLI-CITYTO.ENDIF.ENDSELECT.*-*SELECTION-SCREEN 1.產生空白列語法:SELECTION-SCREEN SKIP Example:SELECTION-SCREEN SKIP 2.產生兩列空白列2.產生底線語法:SELECTION-SCREEN ULINE / (length)Example:SELECTION-SCREEN ULINE /10(30).自第10格開始產生長度30的底線3.印出備註說明語法: SELECTION-SCREEN COMMENT / (length) Example:REMARK = Pls enter your name.SELECTION-SCREEN COMMENT /10(30) REMARK.4. 同一列中輸入數個資料項語法:SELECTION-SCREEN BEGIN OF LINE.SELECTION-SCREEN END OF LINE.Example:SELECTION-SCREEN BEGIN OF LINE.SELECTION-SCREEN POSITION 20.PARAMETERS NAME(10).SELECTION-SCREEN POSITION 40.PARAMETERS BIRTH TYPE D.SELECTION-SCREEN END OF LINE.在20格輸入NAME內容, 40格輸入 BIRTH的內容5. 繪出BLOCK PANEL語法:SELECTION-SCREEN BEGIN OF BLOCK WITH FRAME TITLE .SELECTION-SCREEN END OF BLOCK .Example:SELECTION-SCREEN BEGIN OF BLOCK RADIO WITH FRAME .PARAMETER R1 RADIOBUTTON GROUP GR1.PARAMETER R2 RADIOBUTTON GROUP GR1.PARAMETER R3 RADIOBUTTON GROUP GR1.SELECTION-SCREEN END OF BLOCK RADIO. *-*SQL語法我們在編寫ABAP4程式的時候,經常需要從TABLE中根据某些條件讀取數据,.讀取數据最常用的方法就是通過SQL語法實現的.ABAP/4 中可以利用SQL語法創建或讀取TABLE,SQL語法分為DDL(DATA DEFINE LANGUAGE)語言和DML(DATA MULTIPULATION LANGUAGE)語言,DDL語言是指數据定義語言,例如CREATE等, DML語言是數据操作語言,例如SELECT, INSERT等語句. SQL語句有OPEN SQL語句和NATIVE SQL語句. OPEN SQL語句不是標准SQL語句,是ABAP/4語言,利用OPEN SQL語句能在Databases 和 Command 之間產生一個BUFFER,所以它有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论