我需要在SAPScript中从右边修剪一个字符串。似乎没有任何功能可以实现这一点&myfield+3&只从左边修剪。
有办法从右边修剪吗?偏移量可以接受负值吗?
我的最终目标是取一个数字,比如一个数量;12.43,并将其转换为:001243。
- 6个字符长
- 用零向左填充
- 没有特殊字符(小数或千位分隔符)
最终,我必须首先定义一个字段并进行初始编号格式化:
/:DEFINE &myfield& = &qtyfield(.2CT)&
上述
- 将数字设置为2个小数点(.2)
- 空间压缩
- 删除千位分隔符(T)
然后我在打印例程中调用一个函数来进行特殊的字符剥离,如下所示:
/:PERFORM get_unformatted_value IN PROGRAM zbc_rle_ean128_label
/:USING &myfield&
/:CHANGING &myfield&
/:ENDPERFORM
然后我可以做这样的最终输出:
/ &myfield(K6RF0)&
其中:
- 忽略任何转换(K)
- 将输出长度设置为6并右对齐(6R)
- 和带零的左焊盘(F0)
这似乎对我有用。希望这能帮助到别人!