ABAP WRITE、WRITE TO、FORMAT语句

WRITE
,
pos ,
) ,
) ) )
右对齐
s
5
右对齐
P
2 * 字段长度(+1如果有小数点)
右对齐
F
24
右对齐
I
11
右对齐
C
字段长度,maximum 255
左对齐
D
8
左对齐
N
字段长度,maximum 255
左对齐
T
6
左对齐
X
2 * 字段长度,maximum 255
左对齐
数字数据类型 F、I 和 P 是右对齐的,左边用空格填充,如果有足够的空间,也输出千位分隔符。,不能比10小,也不能是默认的输出宽度)来输出数据:
) d, ()d.
20110709 20110709 2011.07.09
时间也是一样:
) t , () t.
111111 111111 11:11:11
下面字段number变量实际上输出总长为 13,即9 位数字(包括小数点)、前导负号和作为分隔符的两个逗号。但因为这里的变量为P(8)类型,所以默认情况下(Write语句中未使用len参数)系统会为P(8)类型预留输出长度为 2*8+1(一位符号位)=17,所以前面剩余的位置用四个空格填充。
.
) ) )
GUI-dependent
{1 |COL_HEADING }
1
{ 2 |COL_NORMAL }
2
3
Yellow
{ 4 | COL_KEY }
4
Blue-green
{ 5 | COL_POSITIVE }
5
Green
{ 6 | COL_NEGATIVE }
6
Red
{ 7 | COL_GROUP }
7
orange桔黄
OFF选项等效于color为COL_BACKGROUND或者col为0,这也是默认值,此时色依赖于GUI window。
INTENSIFIED [{ON|OFF}|{= flag }]
INTENSIFIED选项设置background color高亮显示(时,background color会使用高亮方式来显示(默认),否则为OFF或flag为0时,使用弱的background color。例外:An exception to this is the COL_BACKGROUND background color, used by INTENSIFIED OFF to control the foreground color.
如果ON、OFF、flag都没指定时,时,则COLOR用来设置前景色(注:时,则COLOR用来设置背景色的(默认)
如果ON、OFF、flag都没指定时,.

INPUT
INPUT [{ON|OFF}|{= flag}]
使用ON选项(或者flag不为0)格式化后继输出字段为可输入字段(Input-enabled)。
Input-enabled字段对于输出选项COLOR,INVERSE,andHOTSPOT不再起作用,但INTENSIFIED会有效
可以格式化ULINE为输入字段,但空行SKIP不能。
如果ON, OFF, nor flag都不输入时,默认为ON
如果输出的字段只包含空格,则不会显示为可输入,除非在之前使用了SET BLANK LINES ON。
时,则显示为表格框线(默认);否则显示为普通的字符。
如果ON, OFF, nor flag都指定,默认为ON
"FORMAT FRAMES ON.
123
CURRENCY cur
不能与ENVIRONMENT TIME FORMAT 、 TIME ZONE、STYLE一起使用,适用于i, p, f类型。
数据库字段TCURC-WAERS存储了货币代码,一般货币都是精确到小数点后两位,除非这些货币代码在 TCURX-CURRKEY出现,则此时的货币的小数位以TCURX-CURRDEC为准
-/+scale,然后对于整数(I或P无小数)取整(与DECIMALS选项一起使用时则会保留数位)。对于浮点数f,好像不起作用
.
123.46
12,345.600
1,234.560
12.346
1.235
UNIT unit
不能与DECIMALS, ROUND, STYLE, ENVIRONMENT TIME FORMAT, TIME ZONE一起使用
单位代码可从数据库表 T006-MSEHI获得,DECAN列决定了小数点的位置,如果指定的单位代码中T006中不存在,则会忽略。如果为P类型同时有CURRENCY选项,则会先执行CURRENCY选项 ,f类型会忽略。
对于f类型,UNIT选项与DECIMALS作用一样 请参见 知识小结.docx文档
15:46:33
示例:因为数据元素(data element)S_FLTIME的domain域S_DURA在词典中关联一个名叫“SDURA”的转换规则(请看后面两个截图),所以msk返回"==SDURA",然后WRITE语句使用该规则将seconds转换分钟的格式进行显示:
) .
IMPORTING
位的年表示,并且有日期分隔符,但日期分隔符与年月日的输入顺序是由Client端用户主数据设置的值来决定的,所以这两种格式只是决定了日期输出时年的位数与年月日的输入顺序,它只是个掩码,不是真正日期。
Both additions have the same effect. The date output has a four-digit year value and separator. The separator and the order are taken from the definition for date output in the user master record. DD/MM/YYYY und MM/DD/YYYY具有同样的作用,日期输入时使用4位的年表示,并且有日期分隔符,但日期分隔符与年月日的输入顺序是由Client端用户主数据设置的值来决定的,所以这两种格式只是决定了日期输出时年的位数与年月日的输入顺序,它只是个掩码,不是真正日期。
Both additions have the same effect. The date output has a two-digit year value and no separator. The order is taken from the definition for date output in the user master record. ? DDMMYY 与 MMDDYY具有同样的作用,日期输入时使用2位的年表示,但没有日期分隔符,日期年月日的输出顺序是由Client端用户主数据设置的值来决定的,所以这两种格式只是决定了日期输入时年的位数与年月日的输入顺序,它只是个掩码,不是真正日期。
This addition provides a date output with a two-digit year value without a separator in the format YYMMDD. 该格式与上面三种不同的时,它本身就是一种日期格式,输出时会按此来格式化输出。
Write具体成什么格式的日期,这与当前用户主数据所设定的格式来显示,用户主数据日期格式可以通过以下方式获取到:
获取当前Client端的日期格式与时间格式:
ABAP WRITE、WRITE TO、FORMAT语句的更多相关文章
- [SAP ABAP开发技术总结]动态语句、动态程序
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- ABAP中RETURN与EXIT语句的区别
EXIT:1) EXIT如果出现在循环中,退出的是整个循环操作,.程序会从循环结束处开始继续执行,其作用相当于Java与C++中的break.2)EXIT如果出现在循环之外,退出的是当前执行的程序块( ...
- abap 常用 function
ABAP常用函数总结 alv .smartform. excel .text.邮件 .远程访问,FTP服务器... **********常用功能function REUSE_ALV_GRID_DI ...
- ABAP常用函数集锦
函数名 描述 SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT=“*”重新组织VI ...
- ABAP OO的八大理由
原贴地址:http://scnblogs.techweb.com.cn/abaplv/archives/127.html 几年前SAP BASIS 4.6为ABAP扩展了OO功能,这是很多传统的ABA ...
- SAS PROC PRINT 常用选项和语句说明
常用选项1.使用选项OBS=修改观测序号标签2.使用NOOBS选项不显示观测序号列3.使用ID语句在输出中取代观测序号列4.使用VAR选择输出的变量5.使用WHERE语句选择输出的观测6.使用数据集选 ...
- ABAP 常用函数
函数名 描述 SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT=“*”重新组织VI ...
- 使用字面量或者绑定变量在HANA Studio里执行SQL语句
在SAP note 2000002 – FAQ: SAP HANA SQL Optimization里提到了SQL语句的两种执行方式,具体差异体现在where语句里搜索条件的指定方式上. 所谓Lite ...
- 201703 ABAP面试题002
转自: ABAP 面试问题及答案(一):数据库更新及更改 SAP Standard (转) 问题一:锁对象(Lock Object)和 FM(Function Module)激活锁定对象时,产生的 F ...
随机推荐
- datatables中columns.render的使用
可直接在columns申明中对应列下方使用render改变该列样式 也可单独在columnsDefs中用targets指定目标. "render":function(data,ty ...
- flex 添加右键链接
private var myMenu:ContextMenu; private function setViewerVersion():void { var menuItem:ContextMenuI ...
- while DEMO
while DEMO #!/bin/bash #author:xiluhua #since: let v_count= " ] do ] then sleep echo $v_count l ...
- php单链表实现的代码
<?php/*** 单链表*/ class Demo{private $id;public $name;public $next;public function __construct ($id ...
- 安装使用RESTful 框架SLIM方法
相关框架: http://www.golaravel.com 是一个PHP框架,内置名为LUMEN的RESTful API框架,有中文文档, http://lumen.golaravel.com/do ...
- 在ecshop顶部会员信息提示区显示会员等级
会员登陆后,在顶部会员信息提示区显示会员等级会员登陆后会在顶部出现这样的提示:您好,test2, 欢迎您回来 ! 进入用户中心 |退出现在设想在会员名后面加上“会员等级”效果如下:您好,test2, ...
- 《C++标准库》
函数对象 使用bind时注意,占位符有自己的命名空间std::placeholders,如果不在程序开始处using std::placeholders,那么就要写成: std::bind(std:: ...
- ACM题目————Anagram
Description You are to write a program that has to generate all possible words from a given set of l ...
- Android invalidate() 和 postInvalidate()的区别
Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中 ...
- bnu A Matrix 北京邀请赛A题
A Matrix Time Limit: 2000ms Memory Limit: 65536KB 64-bit integer IO format: %lld Java class n ...