abap名词理解
1.occurs
??? a.occurs是ABAP 3.0之前聲明內(nèi)表的關(guān)鍵字選項(xiàng)(是指定內(nèi)存 )
??? b.occurs <n>,<n> 是指定行的初始號。將第一行寫入創(chuàng)建的內(nèi)表后,就為指定行保留了內(nèi)存。
?????? 如果添加到內(nèi)表中的行比 <n> 指定的要多 ,則自動(dòng)擴(kuò)展保留的內(nèi)存。(現(xiàn)在新版本都不建議都不使用這個(gè)關(guān)鍵字了 )
?
?
2.header line
??? a.header line是表工作區(qū),我們通常都稱表頭行,內(nèi)表是按行進(jìn)行訪問的 。必須使用某個(gè)工作區(qū)域作為與表格互相傳輸【with header line定義了結(jié)構(gòu)與table同名,不需要第三方的結(jié)構(gòu)來轉(zhuǎn)換】
?????? 數(shù)據(jù)的接口。沒有表頭的內(nèi)表,是不可以直接去讀取的。
???? b.abap4中的內(nèi)表可以分帶表頭行的內(nèi)表和不帶表頭行的內(nèi)表。(不過我們現(xiàn)在都建議使用不帶表頭行的內(nèi)表,再格
??????? 外定 義表工作區(qū)比較好。)? it_table表示結(jié)構(gòu),則it_talbe[]表示表
?
?
3.work area
???? a.工作區(qū)就是內(nèi)表的一行,可以Loop這個(gè)表放到工作區(qū)中進(jìn)行操作
???? b.DATA wa TYPE line.這里wa就是定義的work area.
?
?
4.structure
???? a.結(jié)構(gòu)是不能裝數(shù)的只提供一個(gè)表結(jié)構(gòu)
?
?
5.
?????透明表:針對結(jié)構(gòu)或abap字典中實(shí)際存在的存儲記錄的表
?????內(nèi)表:abap程序中定義的零時(shí)去存儲記錄的表
??
?
6.types與data的區(qū)別
????? a.data和types都定義了本地結(jié)構(gòu),但是如果這個(gè)結(jié)構(gòu)還要被其他結(jié)構(gòu)所引用的話,比如嵌套,那么就只能使用types
???????? 了.? 否則,兩個(gè)用來定義本地結(jié)構(gòu)沒有什么區(qū)別.
????? b.如果是types定了結(jié)構(gòu),則不能用LIKE TABLE OF,只能用TYPE TABLE OF,例如(DATA: itab_material
???????? TYPE TABLE OF struc_material )
?
?
?
例子:DATA:itab_mseg?? LIKE TABLE OF mseg WITH HEADER LINE. 這個(gè)語句就是定義一個(gè)內(nèi)表, 它的結(jié)構(gòu)是mseg表的結(jié)果,它里面可以存放mseg表字段的數(shù)據(jù)。 在定義中, 我們使用到了WITH HEADER LINE 這個(gè)語句的意思是定義的這個(gè)內(nèi)表的名字可以在操作內(nèi)表時(shí)同時(shí)當(dāng)作工作區(qū)使用。
?
總結(jié)