SAP内存和ABAP内存的简单介绍说明
生活随笔
收集整理的這篇文章主要介紹了
SAP内存和ABAP内存的简单介绍说明
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
? 在編寫程序的過程中不同的程序之間經(jīng)常需要相互傳值,SET / GET PAREMETER 和 IMPORT / EXPORT 是SAP 提供的兩種方式。前者的值是放在SAP內(nèi)存,后者是放在
ABAP
內(nèi)存。這兩種內(nèi)存的主要的區(qū)別就是作用范圍了,SAP內(nèi)存是對當(dāng)前登錄所有會話都可以訪問到的,除非用戶退出系統(tǒng)不然在整個登錄期間都有效。ABAP內(nèi)存只是針對一個會話,你用哪個會話設(shè)置的那么就只能在當(dāng)前的會話才可以取到值,新開的或者是其他的會話是訪問不到的。
下面通過兩段簡單的代碼來說明下
代碼1.設(shè)置內(nèi)存值
DATA:str(20) TYPE c,
? ???pstr(20) TYPE c.
"ABAP內(nèi)存 EXPORT
str = 'ABAP EXPORT'.
EXPORT str TO MEMORY ID 'EXPORT'.
"SAP內(nèi)存 SET PAREMETER
pstr = 'SAP SET PAREMTER'.
SET PARAMETER ID 'PARAMETER' FIELD pstr.
WRITE:'SET OK'. 復(fù)制代碼
代碼2.獲取值
DATA:str(15) TYPE c,
? ???pstr(20) TYPE c.
GET PARAMETER ID 'PARAMETER' FIELD pstr.
IMPORT str FROM MEMORY ID 'EXPORT'.
WRITE :'PARAMETER VALUE:',pstr,/,'EXPORT VALUE:',str. 復(fù)制代碼
代碼3.設(shè)置新的值
DATA:str(20) TYPE c,
? ???pstr(20) TYPE C.
"ABAP內(nèi)存 EXPORT
str = 'ABAP EXPORT NEW'.
EXPORT str TO MEMORY ID 'EXPORT'.
"SAP內(nèi)存 SET PAREMETER
pstr = 'SAP SET PAREMTER NEW'.
SET PARAMETER ID 'PARAMETER' FIELD pstr.
WRITE:'SET OK'. 復(fù)制代碼
首先執(zhí)行代碼1
同一會話執(zhí)行第二個程序?
輸出:兩個都有值
PARAMETER VALUE: SAP SET PAREMTER
EXPORT VALUE: ABAP EXPORT
/OSE38 新會話執(zhí)行代碼2
輸出: PARAMTER 有值??EXPORT 沒值
PARAMETER VALUE: SAP SET PAREMTER
EXPORT VALUE:
3.使用其他賬戶登錄 執(zhí)行代碼2
輸出:兩個都沒有值
PARAMETER VALUE:
EXPORT VALUE:
4.新的賬號運行代碼3 原來的賬號和新的賬號分別執(zhí)行代碼2(這個說明了SAP內(nèi)存是一個用戶一個,不共享各自獨立的)
新的賬號的輸出
PARAMETER VALUE: SAP SET PAREMTER NEW
EXPORT VALUE: ABAP EXPORT NEW
原來的輸出
PARAMETER VALUE: SAP SET PAREMTER
EXPORT VALUE: ABAP EXPORT
??
附:以下一段是從網(wǎng)上拷過來的,關(guān)于SAP內(nèi)存和ABAP內(nèi)存的比較,挺好的就拷貝過來看看
? ? 1、讀取和使用方法不同
? ? SAP內(nèi)存使用SET/GET parameters方法;
? ? ABAP內(nèi)存使用 EXPORT 和 IMPORT??方法;
? ? 2、共享范圍不同
? ? SAP內(nèi)存可以被所有的主session訪問,內(nèi)存數(shù)據(jù)可以同一個session中不同程序之間,或者不同session之間;
? ? ABAP只能在同個session的不同程序之間共享數(shù)據(jù);
? ? 3、作用范圍不同
? ? SAP內(nèi)存在整個終端session時間內(nèi)都有效;
? ? ABAP內(nèi)存只能在一個session時間內(nèi)有效;
? ? 4、使用一般原則
? ? SAP內(nèi)存用于 屏幕 默認值輸入;
? ? ABAP內(nèi)存用于模塊之間傳替數(shù)據(jù)
下面通過兩段簡單的代碼來說明下
代碼1.設(shè)置內(nèi)存值
首先執(zhí)行代碼1
同一會話執(zhí)行第二個程序?
輸出:兩個都有值
PARAMETER VALUE: SAP SET PAREMTER
EXPORT VALUE: ABAP EXPORT
/OSE38 新會話執(zhí)行代碼2
輸出: PARAMTER 有值??EXPORT 沒值
PARAMETER VALUE: SAP SET PAREMTER
EXPORT VALUE:
3.使用其他賬戶登錄 執(zhí)行代碼2
輸出:兩個都沒有值
PARAMETER VALUE:
EXPORT VALUE:
4.新的賬號運行代碼3 原來的賬號和新的賬號分別執(zhí)行代碼2(這個說明了SAP內(nèi)存是一個用戶一個,不共享各自獨立的)
新的賬號的輸出
PARAMETER VALUE: SAP SET PAREMTER NEW
EXPORT VALUE: ABAP EXPORT NEW
原來的輸出
PARAMETER VALUE: SAP SET PAREMTER
EXPORT VALUE: ABAP EXPORT
??
附:以下一段是從網(wǎng)上拷過來的,關(guān)于SAP內(nèi)存和ABAP內(nèi)存的比較,挺好的就拷貝過來看看
? ? 1、讀取和使用方法不同
? ? SAP內(nèi)存使用SET/GET parameters方法;
? ? ABAP內(nèi)存使用 EXPORT 和 IMPORT??方法;
? ? 2、共享范圍不同
? ? SAP內(nèi)存可以被所有的主session訪問,內(nèi)存數(shù)據(jù)可以同一個session中不同程序之間,或者不同session之間;
? ? ABAP只能在同個session的不同程序之間共享數(shù)據(jù);
? ? 3、作用范圍不同
? ? SAP內(nèi)存在整個終端session時間內(nèi)都有效;
? ? ABAP內(nèi)存只能在一個session時間內(nèi)有效;
? ? 4、使用一般原則
? ? SAP內(nèi)存用于 屏幕 默認值輸入;
? ? ABAP內(nèi)存用于模塊之間傳替數(shù)據(jù)
總結(jié)
以上是生活随笔為你收集整理的SAP内存和ABAP内存的简单介绍说明的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【转】根据起止日期+时间取数
- 下一篇: 根据指定行数拆分内表