Ver Mensaje Individual
  #17  
Antiguo 21-07-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola cipce22.

Opino igual que Casimiro, debería ser:
Código Delphi [-]
...
 cont_arr := 0; // <-
 ....
 begin
      SetLength(Array_idmatriculas_incorr, cont_arr + 1 ); // <-

      Array_idmatriculas_incorr[cont_arr]:=dm.IBQuery1.FieldByName('id').AsInteger;
      inc(cont_arr,1);
  ...

También lo podrías escribir de este modo (ahorrándote el contador):
Código Delphi [-]
...
  while not dm.IBQuery1.eof do
  begin
    if  not (dm.IBQuery1.FieldByName('id').AsInteger=campo_id_oficial)  then
    begin
      SetLength(Array_idmatriculas_incorr, Length(Array_idmatriculas_incorr) + 1 );
      Array_idmatriculas_incorr[High(Array_idmatriculas_incorr)]:= dm.IBQuery1.FieldByName('id').AsInteger;
    end;
    dm.IBQuery1.Next;
  end;
...

Otra alternativa es darle al arreglo dinámico, el tamaño de una sola vez:
Código Delphi [-]
...
  cont_arr := 0;
  SetLength(Array_idMatriculas_incorr, dm.IBQuery1.RecordCount ); // <-
  while not dm.IBQuery1.eof do
  begin
    if  not (dm.IBQuery1.FieldByName('id').AsInteger=campo_id_oficial)  then
    begin
      Array_idmatriculas_incorr[cont_arr]:= dm.IBQuery1.FieldByName('ID').AsInteger;
      Inc(cont_arr, 1);
    end;
    dm.IBQuery1.Next;  
  ...

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 21-07-2015 a las 19:04:50.
Responder Con Cita