Ver Mensaje Individual
  #8  
Antiguo 13-02-2013
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Añado más cosas. Perdonad que lo haga así, pero según voy haciendo pruebas lo pngo. He probado a montar el código de otra manera.
Ejecuto un bucle para leer los datos de Auxiliar del tipo 1:
AnsiString cAux = "";
Código:
Query->Close();
Query->SQL->Text = "SELECT Valor FROM Auxiliar WHERE Tipo = 1 AND Usuario = :Usuario";
Query->ParamByName("Usuario")->AsString = NombreUser;
Query->Open();
for (; !Query->Eof; Query->Next())
     cAux = cAux + FormatFloat("0', '", Query->FieldByName("Valor")->AsInteger);
cAux = cAux.SubString(1, cAux.LastDelimiter(",") - 1);
Esto la hago para que me quede uan cadena del tipo
Cita:
1, 2, 3, 4
que luego pondré en el query así:
Código:
Query->Close();
Query->SQL->Text = "SELECT * FROM Ls01 WHERE CodPrv = :CodPrv AND Junta IN (" + cAux + ") ORDER BY Apellidos, Nombre";
Query->ParamByName("CodPrv")->AsInteger = nCodPrv;
Query->Open();
¡Y así funciona perferctamente! Lo que pasa que no quisera usar este método porque puede crear verdaderas monstruosidades de código.
Responder Con Cita