FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Parametros en firebird
Saludos estimados foristas
deseo saber si existe alguna manera de controlar la cantidad de parametros que envio a un SP, resulta que tengo un SP que en algunos casos va a requerir de 4 parametros y en algunos otros solo de 3 como le indico dentro del SP la tarea a realizar de acuerdo a la cantidad de parametros enviados. gracias |
#2
|
||||
|
||||
Aunque no conozco si hay una funcion que cuente los parametros, no es simplemente:
if Param4 EstaVacio else ???
__________________
El malabarista. |
#3
|
||||
|
||||
oki
Yo uso esta función para mandarle los parámetros que sea, pruebalo:
Código:
function EjecProc(SP:TIBStoredProc;ParamEntrada,ParamEBusqueda,ParamResultado:String; ContResult:Byte):String; var x,y:byte; begin {**Parámetros Parámetros de Entrada, Parámetros de Busqueda, Parámetros de Salida(Resultado), Número de Resultados a Devolver} for y:=1 to 2 do for x:=1 to ContResult do Resultados[x,y]:=''; sp.Prepare; ExtraerCamposDatos(ParamEntrada,ParamEBusqueda,ParamResultado); if ParamEntrada<>'' then begin if c>0 then for x:=1 to c do if (Campox[x]<>'') and (Datox[x]<>'') then sp.ParamByName(campox[x]).value:=Datox[x]; end; sp.ExecProc; if ContResult=1 then result:=sp.ParamByName(resultx[1]).AsString else if sp.RecordCount =1 then begin for x:=1 to ContResult do begin Resultados[x,1]:=sp.ParamByName(resultx[x]).AsString; if Resultados[x,1]='' then Resultados[x,1]:='1'; end end else for y:=1 to sp.RecordCount do begin for x:=1 to ContResult do begin Resultados[x,y]:=sp.ParamByName(resultx[x]).AsString; if Resultados[x,y]='' then Resultados[x,y]:='1'; end; sp.Next; end; end; (*********************************************************************************** ExtraerCamposDatos : Es una función que te separa los parámetros, poniendole comas(,) en las separaciones, por ejemplo: Parametro de Entrada: Clave,Nombre,Dirección Espero te Ayude. Sino estoy a sus ordenes. |
|
|
|