创建一个函数,检查ID号是否满足条件

时间:2016-07-10 14:12:09

标签: microsoft-dynamics navision dynamics-nav dynamics-nav-2015 microsoft-dynamics-nav

我是NAV的新手,所以也许我的问题看起来有点像菜鸟,但在这里。 我创建了一个表,其中有一个名为ID号的字段,用户需要输入一个代表他/她ID的10位Biginteger(或代码,IDK更好)。 我必须创建一个函数,通过检查它是否满足以下条件来检查这个数字是否正确:

如果number为ABCDEFGHIJ,则数字J(称为控制数字)必须等于: J=13-( 7*(A+G) + 6*(B+H) + 5*(C+I) + 4*(D+J)) MOD 13

并且还需要满足以下标准:

J <= 9 -> X = J
J > 9 -> X = 0

我认为首先使用函数FORMAT将整数转换为字符串,然后将COPYSTR转换为每个局部变量A,B,C,D ......但它不起作用:( 任何人都可以帮我解决正确的代码吗?

2 个答案:

答案 0 :(得分:1)

  

Str:= format(“Id”);答:=海峡[1]; B:=海峡[2];

等等...

或者如果你想要A,B,C作为整数。

  

Str:= format(“Id”);评价(A,Str [1]);评估(B,Str [2]);

答案 1 :(得分:0)

您可以尝试使用此代码,因为它对我有用:

Num : BigInteger;
Digits : Array of Byte;
I : Integer;

FOR i := 10 DOWNTO 1 DO BEGIN
  Digits[i] := Num MOD 10;
  Num := Num DIV 10;
END;

如果它不适合你,请告诉我。

相关问题