Closed GoogleCodeExporter closed 8 years ago
Original comment by gerardoa...@gmail.com
on 28 Mar 2011 at 6:42
En la línea:
Me.TxtDigito.Text = 10 - (CLng(Me.TxtTotal.Text) Mod 10)
Ricardo Lemos sugirió que en el caso que (CLng(Me.TxtTotal.Text) Mod 10) de un
valor =0 entonces el dígito verificador daría como resultado = 10. En el
resto de los casos, el dígito verificador daría entre 1 y 9. Por lo tanto se
podría reemplazar esa línea de código con la siguiente lógica:
If CLng(Me.TxtTotal.Text) Mod 10 = 0 Then
Me.TxtDigito.Text = 0
Else
Me.TxtDigito.Text = 10 - (CLng(Me.TxtTotal.Text) Mod 10)
End If
Original comment by marcelor...@gmail.com
on 28 Mar 2011 at 7:17
Aca paso el mismo ejemplo traducido para Delphi:
var
i: integer;
Impares, Pares, Total : Integer;
Codigo, Digito : String;
sCUIT, sCODComp, sPtoVta, sCAE, sVtoCAE : String;
begin
sCUIT := '';
sCODComp := '';
sPtoVta := '';
sCAE := '';
sVtoCAE := '';
Codigo := sCUIT + sCODComp + sPtoVta + sCAE + sVtoCAE;
Pares := 0;
Impares := 0;
for i := 1 to Length(Codigo) do
begin
if (i mod 2) = 0 Then
Pares := Pares + StrToInt(Copy(Codigo, I, 1))
else
Impares := Impares + StrToInt(Copy(Codigo, I, 1));
end;
Digito := IntToStr(10 - ((Pares + (3 * Impares)) Mod 10));
if Digito = 10 then
Digito := 0;
Result := Codigo + Digito;
Original comment by bare...@gmail.com
on 18 Apr 2011 at 3:16
Original comment by gerardoa...@gmail.com
on 1 May 2011 at 2:09
Original issue reported on code.google.com by
marcelor...@gmail.com
on 21 Feb 2011 at 12:49Attachments: