点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我希望在某些情况下进行屏幕屏蔽输入,其中之一是用户状态。 我使用FM status_text_edit获取用户状态的值。 就像下面的代码一样。
但是有问题,当用户更改用户状态时,这是错误的。
FORM USEREXIT_FIELD_MODIFICATION。 数据:jstat的it_status类型标准表, wa_status喜欢it_status的行, lv_objnr TYPE vbak-objnr, lv_line TYPE BSVX-STTXT, lv_status类型BSVX-STTXT。 清除:lv_objnr。 刷新it_status。 从vbak选择单个objnr到lv_objnr,其中vbeln = vbak-vbeln。 通话功能" STATUS_TEXT_EDIT" 出口 客户= SY-MANDT FLG_USER_STAT ='X' objnr = lv_objnr ONLY_ACTIVE ='X' spras = sy-langu * BYPASS_BUFFER ='' 输入 * ANW_STAT_EXISTING = * E_STSMA = LINE = lv_line USER_LINE = lv_status * STONR = 例外情况 OBJECT_NOT_FOUND = 1 其他= 2 。 如果sy-subrc <> 0。 *在这里实施适当的错误处理 万一。 IF语法EQ'VA02'。 sy-uname NE'STC25'和sy-uname NE'STC26'。 如果是lv_status EQ'AP'或lv_status EQ'CBDA'。 " AP和CBDA" 案例屏幕名称。 当" RV45A-KWMENG"时。 如果是VBAP-PSTYV EQ'ZPPR'。 屏幕输入= 0。 修改屏幕。 万一。 当" VBAP-VRKME"时。 如果是VBAP-PSTYV EQ'ZPPR'。 屏幕输入= 0。 修改屏幕。 万一。 当'VBEP-WMENG'。 如果是VBAP-PSTYV EQ'ZPPR'。 屏幕输入= 0。 修改屏幕。 万一。 结束。 万一。 万一。 万一。 ENDFORM。
在屏幕上滚动
ENDLOOP
缺少
请参见下面的代码
当我使用循环时,它变慢了。
我在userexit_field_modification中将FM STATUS_TEXT_EDIT放错了吗?
是的,我想根据用户状态将数量和单位字段设置为只读。
我刚刚意识到,如果任何人都可以更改用户状态,那就没用了。
我认为,我应该与SAP顾问再次讨论此逻辑。
一周热门 更多>