ABAP选择屏幕字段无法输入负值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABAP选择屏幕字段无法输入负值相关的知识,希望对你有一定的参考价值。
ABAP选择屏幕中,我定义了一个选择定段 SELECT-OPTIONS: L_BRGEW FOR MARA-BRGEW,但运行的时候,我输入负数提示:请仅指定正值,请问我要怎么设置才能输入负数呢?谢谢
你无法输入负数,是因为你参照的数据类型不允许输入负数,MARA-BRGEW是quan类型的就像你定义一个日期类型的SY-DATUM,但是输入字符abcd的话,是不允许的
这是一种系统自带的数据正确性检查
你要想输入负值,可以换一个允许输入负值数据类型
或者,在选择屏幕上加一个标识,如果为负,打钩,在程序中,用标识判断,是否乘以-1
希望可以帮到你 参考技术A 首先确定MARA-BRGEW对应的Data Element中对应的Domain是否是可以有负数形式的,即sign标致是否已经勾选。如果没有可以换用其他的数据类型,或者自己创建domain并引用。
也可以在选择屏幕上添加一个check box来标示当前输入为一个负数,然后在程序中判断手动修改L_BRGEW。 参考技术B parameters p type i.
试试这个,指定i类型就能够输入负数了。
不过,话说selection screen里面输入负数有什么实际意义么?仅仅作为学习测试么?
^_^ 参考技术C 你确定这是一种消极的屏幕上输入?
没有其他需求,需求在它之下。
可能是我不经常听到的负输入屏幕。 参考技术D 假如BRGEW字段定义的就是不能取负值,那你为什么要输入负值呢?这样最后数据要是需要重新传入MARA岂不是会报错?
abap选择屏幕中的输入字段,怎么触发
参考技术A 你要触发什么动作,一般回车或者点击按钮都会触发的以上是关于ABAP选择屏幕字段无法输入负值的主要内容,如果未能解决你的问题,请参考以下文章
ABAP 如何获取屏幕输入的字段,不是选择屏幕,是screen painter中用数据库直接生成的可以输入的字段?