Ver Mensaje Individual
  #9  
Antiguo 16-11-2012
jsc jsc is offline
Miembro
 
Registrado: nov 2003
Posts: 144
Reputación: 21
jsc Va por buen camino
Hola de nuevo,
aburrido de probar con la funcion IIF... algo se acercaba a lo que pretendia pero no daba con el correcto funcionamiento

cambie de metodo y consegui lo que me pretendia
en un principio pense que todo esto seria mas facil; en fin de todo se aprende
dejo el codigo y el programa de como a mi me ha funcionado por si a alguien le ocurre lo mismo
PROPOSITO: lanzar una consulta con los parametros que haya en 1,2,3... los edit que sean
solucionado si el campo es Null... devuelve las coincidencias de los edit

gracias a los que se interesaron por mi consulta;

codigo de la funcion:
Código:
function fAsigParamconsul (str:string):string;
var i,j:integer;
    camp,crit:string ;
begin
   with form1 do
   begin
      j:= 0 ;
      FOR i:=1 to 4 DO
      begin
         CASE i OF
            1: camp:= 'NOMBRE';
            2: camp:= 'DIRECCION';
            3: camp:= 'TELEF1';
            4: camp:= 'TELEF2';
         END;{FIN case}
      IF TEdit(Findcomponent('Edit'+inttostr(i))).Text <> ''
      then
         begin
            CASE j OF
               0: crit:='WHERE' ;
               1: crit:='AND' ;
            END;{FIN case}
         {SELECT * FROM TABLA WHERE CAMPO LIKE param}
         str := str+' '+crit+' '+camp+' LIKE '+chr(39)+'%'+TEdit(FindComponent('Edit'+inttostr(i))).Text+'%'+chr(39);
         j:= 1 ;
         end{FIN then TEdit <> ''}
//      else j:= 0 ;{ELSE TEdit <> ''}
      end;{FIN bucle FOR}
      Result := str ;
   end;{FIN with frm}
end;
llamada a la funcion
Código:
strconsul:=fAsigParamConsul ('SELECT * FROM TABLA1')
Archivos Adjuntos
Tipo de Archivo: zip SOLUCIONADO_pruebas_consulta_sql.zip (18,4 KB, 1 visitas)
Responder Con Cita