Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   ¡¡¡¿¿¿autocalcular el digito de control???!!! (https://www.clubdelphi.com/foros/showthread.php?t=11060)

Giniromero 04-06-2004 11:34:29

¡¡¡¿¿¿autocalcular el digito de control???!!!
 
Hola a tod@s,

Tengo una aplicación hecha con delphi6 e Interbase 7.

En una de las tablas guardo el número de cuenta corriente del cliente para la domiciliación bancaria.

El caso es que necesito asegurarme que en ese campo se insertan datos, si se selecciona la modalidad de Domiciliación Bancaria, y que estos sean correctos.
Lo de que se asegure que hay datos ya lo tengo, pero me falta el asegurarme que sean correctos.

Se que el dígito de control de una cuenta bancaria sale haciendo algún tipo de cálculo, ¿alguien que lo tenga implementado o me diga donde encontrar información para hacerlo? ¿alguna idea?

Muchas gracias,

Virginia

tcp_ip_es 04-06-2004 11:39:52

Espero que te sirva este link:

http://bulma.net/body.phtml?nIdNoticia=1396

esta en php, pero todos sabemos traducir lenguajes no??? :D


Saludos, Tony

Giniromero 04-06-2004 11:55:01

Hola,

Gracias por la ayuda, aunque por desgracia yo no se PHP.

En cualquier caso, un conocido me ha remitido a esta pagina:
http://www.elrinconcito.com/delphi/trucos/Delphi4.htm

donde viene con código Delphi.

Por si a alguien le interesa.

Saludos,

Y gracias,

Virginia

tcp_ip_es 04-06-2004 11:56:39

Bueno pues asi ya lo tenemos en dos lenguajes Mejor!!! :D

Saludos, Tony

spu 04-05-2006 15:00:50

Aquí os pongo otra función similar hecha por mi:
antes hay que declarar por ejemplo en las variables globales este array:

Código:

pesos : array[1..10] of integer = (1,2,4,8,5,10,9,7,3,6);
Código:

function dcont(entidad,oficina,cuenta:String):String;
var
  entofi,dig: string;
  i,n,t,suma: integer;
  r,r2: real;
begin
  suma := 0;
  entofi := entidad + oficina;
  for i := 1 to 8 do
  begin
    dig := copy(entofi,i,1);
    n := strtoint(dig);
    t := pesos[i+2]* n;
    suma := suma + t;
  end;
  r := 11 - (suma mod 11);
  suma := 0;
  for i := 1 to 10 do
  begin
    dig := copy(cuenta,i,1);
    n := strtoint(dig);
    t := pesos[i]* n;
    suma := suma + t;
  end;
  r2 := 11 - (suma mod 11);
  dcont := floattostr(r) + floattostr(r2);
end;



La franja horaria es GMT +2. Ahora son las 15:28:24.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi