Ver Mensaje Individual
  #8  
Antiguo 26-11-2009
jaimeh jaimeh is offline
Miembro
 
Registrado: mar 2007
Posts: 68
Reputación: 18
jaimeh Va por buen camino
Eso es lo mismo que antes

al final lo he hecho con delphi y parece que funciona
algo parecido a esto

Código Delphi [-]

    tblCodigosFin.Open;
    tblCodigosFin.IndexFieldNames := 'TIQUE;CODIGO';

  list := TStringList.Create;
  list.Add('1');
  list.Add('3');
  list.Add('5');

  listSeleccionado := TStringList.Create;

  TiqueAnterior := '';
  tblCodigosFin.First;
  while not tblCodigosFin.Eof do
  begin

    Tique := tblCodigosFin.FieldByName('Tique').AsString;
    Codigo := tblCodigosFin.FieldByName('Codigo').AsInteger;

    if Tique <> TiqueAnterior then
    begin
//       TiqueAnterior := Tique;

       if listSeleccionado.Count =
          list.Count then
       begin

         tblSeleccion.Append;
         tblSeleccion.FieldByName('Tique').AsString := TiqueAnterior;
//       tblSeleccion.FieldByName('Codigo').AsInteger := Codigo;
         tblSeleccion.Post;
       end;

       listSeleccionado.Clear;
       TiqueAnterior := Tique;

    end
    else begin
       if list.IndexOf(IntToStr(Codigo)) >= 0 then
         if listSeleccionado.IndexOf(IntToStr(Codigo)) < 0 then
           listSeleccionado.Add(IntToStr(Codigo));

    end;



    tblCodigosFin.next;
  end;


Gacias a todos y saludos
Responder Con Cita