我已经把一个公式显示在晶体报告中并将其掩盖后显示一个字段的值。但它在cardno变量中显示错误“字符串是非数字”。以下是我的公式代码:晶体报告中的'字符串是非数字'错误公式
StringVar cardno;
NumberVar current_len;
NumberVar card_len;
NumberVar start;
NumberVar last;
StringVar ca;
card_len := ToNumber (Mid ({@lens},1,2));
start := ToNumber (Mid ({@lens},3,2));
last := ToNumber (Mid ({@lens},5,2));
current_len := Length (Trim (ToText({CA.CA}, 0 ,'')));
ca := ReplicateString("0",card_len-current_len) + Totext({CA.CA},0,'');
If card_len > current_len Then
If start = 0 Then
If last <= 1 Then
cardno := Mid(ca, last, card_len)
Else
cardno := ReplicateString("X",last-start-1) + Mid(ca, last, card_len)
Else
cardno := Mid (ca,1,start) + ReplicateString("X",last-start-1) + Mid(ca, last, card_len);
请提供一个解决方案,以避免此错误。提前致谢。
你会发布什么样的数量类似的例子,希望的掩模? – craig
我需要cardno,如“cardno = XXXXXX1234”。 – maddy2012
字符串的长度是否为常量?或者有效长度是多少? – craig