ABAP Select Skill....

今天在www.sapsh.com 论坛上看到了一个帖子是关于ABAP 程序优化的写法,这里我做一个整理:

用来抓取数据提搞速度,

写法1:

SELECT MATNR BUDAT
INTO(ITAB-MATNR,ITAB-BUDAT)
FROM AUFM
WHERE MATNR IN P_MATNR AND
BUDAT IN P_BUDAT.

写法2:

SELECT MATNR BUDAT
INTO corresponding fields of table itab
FROM AUFM
WHERE MATNR IN P_MATNR AND
BUDAT IN P_BUDAT.

以前的程序运行所得的结果都是一样的, 但获取数据的速度,方法1 比方法2 快, 为什么呢?

取少数项目值时用INTO赋值到 变量中,取得项目多时应使用INTO TABLE,
对应的内表中的项目定义顺序最好和SELECT所选项目顺序相同,然后直接使用INTO TABLE itab,
而不是用CORRESPONDING FIELD,CORRESPONDING FIELD语句使编程人员方便编程,
不用一个一个对照项目顺序,但实际上这部分功能没有省,而是系统替你来完成的,
系统赋值前,要先对照是否项目名相同,相同才赋,不同继续向下比较,所以很费系统资源,
编程序本身就是“一劳永逸”的事情,还是建议在编写的时候多费点心思调整好,
可为将来千万次的调用,提高意想不到的效率。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: abap.curr() 是一个 ABAP 语言中的函数,用于将数字类型的数据格式化为货币类型的字符串。在 ABAP 中,有时需要将数字类型的数据格式化为货币类型的字符串,例如在输出报表等场景中。abap.curr() 函数可以将数字类型的数据格式化为指定货币单位的字符串。其语法如下: ```ABAP abap.curr( amount, currency, decplaces ) ``` 其中,amount 是要格式化的数字;currency 是货币单位,例如 USD、EUR 等;decplaces 是小数位数。该函数会根据货币单位和小数位数,将数字格式化为货币类型的字符串。例如: ```ABAP abap.curr( 1234.56, 'USD', 2 ) ``` 会返回字符串 `$1,234.56`,其中 $ 表示美元货币单位。 ### 回答2: abap.curr()是一个在ABAP编程中使用的系统函数,主要用于返回当前用户登录的客户端的货币单位。它的返回结果是一个字符串,表示当前客户端的货币单位。 在ABAP编程中,货币单位是一个重要的概念,用于表示数值字段的货币单位。ABAP提供了许多函数和表达式来处理和转换货币单位,其中abap.curr()就是其中之一。 使用abap.curr()函数,我们可以方便地获取当前用户登录客户端的货币单位。这对于在程序中对货币数值进行格式化、转换和计算都非常有用。通过获取货币单位,我们可以根据不同的货币单位来显示货币数值的符号、小数位数和分组分隔符等。 使用abap.curr()函数的示例代码如下: ``` DATA: curr_unit TYPE c LENGTH 3. curr_unit = abap.curr(). WRITE: '当前货币单位为', curr_unit. ``` 在上面的示例中,我们先声明了一个字符类型的变量curr_unit用于存储货币单位。然后使用abap.curr()函数将当前用户登录客户端的货币单位赋值给curr_unit变量。最后,使用WRITE语句将货币单位输出到屏幕上。 需要注意的是,abap.curr()函数返回的货币单位是一个字符串,通常是三个字符的缩写形式,例如USD代表美元,EUR代表欧元等。 总之,abap.curr()函数是一个方便的系统函数,可以帮助我们在ABAP编程中获取当前用户登录客户端的货币单位,从而方便地处理和转换货币数值。 ### 回答3: abap.curr()是SAP ABAP编程语言中的一个系统变量或函数,用于获取当前会话的币种。 在SAP系统中,不同的国家或地区使用不同的货币,因此在编程中需要了解当前使用的货币是什么。这时可以使用abap.curr()来获取当前的货币信息。 abap.curr()的返回值是一个货币数据类型的变量,可以用来表示当前会话的货币。这个货币数据类型可以用于各种货币相关的计算或判断,在编程中非常实用。 例如,如果需要根据当前货币来进行金额格式化,可以使用abap.curr()来获取货币信息,然后根据货币类型来确定小数点位数,从而格式化金额。 另外,abap.curr()还可以用于与其他货币数据进行比较。例如,可以将当前货币与一个指定的货币进行比较,判断它们是否相同或不同,从而决定是否执行特定的逻辑。 总之,abap.curr()是SAP ABAP编程语言中用于获取当前会话货币的系统变量或函数,可以帮助开发者在编程中处理货币相关的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值