我在格式化问题上传递价值方面存在问题。
由于我在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)
答案 0 :(得分:3)
您要求的是在5个字符的字段中用零填充左侧的支票号码。 Right() function是你的朋友:
Right(PreEditedCheque, 5, '0') /* "1" -> "00001" */