Ver Mensaje Individual
  #5  
Antiguo 09-08-2006
tulio tulio is offline
Miembro
 
Registrado: may 2003
Ubicación: Argentina
Posts: 300
Reputación: 22
tulio Va por buen camino
Gracias compañeros, ya me cree una rutina que es la siguiente:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
barra,xx : string;
total,JJ,resto,digito : integer;
begin
barra:=edit1.text;
total:=0;
For JJ:= 1 to 40 do
begin
xx:=copy(barra,JJ,1);
If JJ Mod 2= 0 then
total:=total+(strtoint(xx)*3)
else
total:=total+(strtoint(xx)*1);
End;
resto:=total Mod 10;
If resto = 0 then
digito:=resto
else
digito:=10-resto;
edit2.text:=barra+'-'+inttostr(digito);
End;

Les cuento, en una factura debo mandar en un codigo de barra todos los datos de la factura, nro empresa,fecha 1 vencimiento, importe, fecha 2 vencimiento , importe , numero de factura, y EL DIGITO VERIFICADOR, que chequea cuando es leido en la boca de cobro , que no se haya alterado nada.

La rutina anterior toma todo el registro que describi y me arroja un numero que lo sumo al final de la lista.

saludos
gracias y disculpa por las molestias

tulio
Responder Con Cita