使用数字格式传递值

时间:2017-01-05 04:35:42

标签: rexx

我在格式化问题上传递价值方面存在问题。 由于我在PreEditedCheque部分的代码中传递if ValidateMMonCheque <> MM时遇到问题,因此我在代码中添加了说明。 if length(RawChequenumber) = 15的输出将为1位而不是00001(示例)

MM = HostGetFLD('','MM')
YY = HostGetFLD('','YY')
PreEditedCheque = substr(RawChequenumber,11,5)

ValidateMMonCheque = substr(RawChequenumber,7,2)

if ValidateMMonCheque <> MM Then    *From this statement* 
Do
   PreEditedCheque = substr('00000',1,5)  *This part where those 0 can't be properly shown if pass to the next statement*
   EditedCheque = '00'||'2'||'0'||YY||MM||'00'||PreEditedCheque 
   rc = message(2,2,EditedCheque)
End


if length(RawChequenumber) = 15 Then  

   EditedCheque = '00'||'2'||'0'||YY||MM||'00'||PreEditedCheque + 1 *Second statement if <>MM ran, this part, the PreEditedCheque will be not in 00001, it will be 1. 

rc = PanSetCtlData('PREVIEW',EditedCheque)

1 个答案:

答案 0 :(得分:3)

您要求的是在5个字符的字段中用零填充左侧的支票号码。 Right() function是你的朋友:

Right(PreEditedCheque, 5, '0') /* "1" -> "00001" */