SAP ABAP选择屏幕OBLIGATORY参数输入!仍提示必填是什么原因?
问题背景
你提到的ABAP选择屏幕代码如下:
PARAMETERS: d_char OBLIGATORY. WRITE d_char.
在输入框输入!运行后仍然触发必填校验,原因如下:
根因说明
!是SAP ABAP选择屏幕的内置特殊控制字符,功能为清空当前输入字段的内容,不会被识别为普通的输入值。- 程序触发执行时,系统会先执行选择屏幕输入的预处理逻辑:识别到输入值为单独的
!后,直接将d_char字段的值清空为初始值,之后才会运行OBLIGATORY属性对应的必填校验。此时字段已经是空值,自然就会触发必填项提示。
补充说明
如果确实需要将!作为实际业务值输入到该字段,只需要在输入时在!前补充一个半角单引号',系统就会识别为你要输入普通字符!,不会触发清空逻辑,也能正常通过必填校验。
内容的提问来源于stack exchange,提问作者sumedh patil
相关产品推荐
相关产品推荐

