Solucionado.
Código Delphi
[-]
procedure TF_Inici.Codi_B;
var Temp,Anyo,Rebut,Arbitre,Codi_B: String;
a,m,d: Word;
begin
Codis_B.Close;
Codis_B.Open;
F_ModulDades.Rebut.Close;
F_ModulDades.Rebut.Open;
while not Codis_B.Eof do
begin
F_ModulDades.Rebut.Locate('ID_REBUT', Codis_BID_REBUT.Value,[]);
F_ModulDades.Rebut.Edit;
DecodeDate(Codis_BDATA.Value, a,m,d);
Anyo:= IntToStr(a);
Temp:='0000';
Delete(Temp,1,Length(IntToStr(Codis_BID_REBUT.Value)));
Rebut:=Concat(Temp+IntToStr(Codis_BID_REBUT.Value));
Temp:='00';
Delete(Temp,1,Length(IntToStr(Codis_BID_USUARI.Value)));
Arbitre:=Concat(Temp+IntToStr(Codis_BID_USUARI.Value));
Codi_B:=(Anyo+Rebut+Arbitre+'000');
F_Rebut.CodiCorrecte(Codi_B);
F_ModulDades.RebutCODI_BARRES.Value:=Codi_B;
F_ModulDades.Rebut.Post;
Codis_B.Next;
end;
end;
He creado esta funcion en el Form Inicio para que la consluta Codis_B busque los codigos vacios y con el eof -> Next lo recorro rellenando los valores que faltan.
Funciona de maravilla
Gracias a todos por vuestroa ayuda, a veces no veo más allá de mi nariz y veía como hacerlo pero no encontraba la manera de aplicarlo, jejeje...
Josep