在itemchanged事件中的SetItem()期间无法向字段添加尾随0

2020-09-24 05:04发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 请解决这个问题,我已经尝试...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好 请解决这个问题,我已经尝试解决了好几个小时,但是失败了。

我正在对itemchanged()事件中的字段执行SetItem()。 要求是该字段将始终为6个数字字符。 因此,如果用户键入11,则在跳出时我尝试设置0000,以便该值变为110000。

在调试期间,我看到在数据窗口中设置了值110000,但是当执行转到itemfocuschanged()事件时,该值会自动更改为11。

最初,我认为该字段是Char类型,所以可能是个问题,但不是。 对于Long类型字段,其行为也相同。 我也尝试过将AcceptText()放在itemChanged()和ItemFocusChanged()事件中,但是没有成功。

下面是我在Itemchanged event()中的代码:

ls_col_value = This.GetItemString(row," col_name")//由于安全原因未提及实际的列名//

如果镜头(数据)<6然后

数据=数据+填充(" 0",6-Len(数据))

This.SetItem(行," col_name",数据)

END IF

4条回答
SKY徐
2020-09-24 05:13 .采纳回答

尝试一下...。

字符串ls_name
字符串ls_data

ls_name =字符串(DWO.Name)

ls_data =修剪(data)
选择大小写ls_name
case" <您的col name>"
IF Len(ls_data)<6 then
data = ls_data + fill(" 0", 6-Len(ls_data))
END IF
结束选择

返回0

一周热门 更多>