FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
¡¡¡¿¿¿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
__________________
Sonrie al mundo, y el mundo te sonreirá :) |
#2
|
||||
|
||||
Espero que te sirva este link:
http://bulma.net/body.phtml?nIdNoticia=1396 esta en php, pero todos sabemos traducir lenguajes no??? Saludos, Tony |
#3
|
|||
|
|||
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
__________________
Sonrie al mundo, y el mundo te sonreirá :) |
#4
|
||||
|
||||
Bueno pues asi ya lo tenemos en dos lenguajes Mejor!!!
Saludos, Tony |
#5
|
|||
|
|||
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; |
|
|
|