Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Campos calculados dinamicamente (https://www.clubdelphi.com/foros/showthread.php?t=58106)

Vlady 08-07-2008 20:46:13

Campos calculados dinamicamente
 
Hola amigos del foro mi problem es el siguiente: tengo una consulta SQL que se ejecuta con variables en tiempo de ejecución, y quisiera saber si es posible mediante codigo realizar una consulta para un campo calculada pero que las variables de consulta del campo calculado sean dinamicas, lo cual no se como se puede acceder al procedimiento donde se realiza la consulta del campo calculado para modificarlo:


Código SQL [-]
procedure TRArqueoTituloRes.TotalesRArqueoCalcFields(DataSet: TDataSet);
begin
   DataM.Graba.Close;
   DataM.Graba.SQL.Clear;
   DataM.Graba.SQL.Text := 'SELECT * FROM TOTALARQUEO (:CAJERO, :FECHA, :LOCAL, NULL, 0) WHERE FPAGO = :FPAGO';
   DataM.Graba.ParamByName('CAJERO').Value := DataM.Cajero['ID'];
   DataM.Graba.ParamByName('FECHA').Value := DATE;
   DataM.Graba.ParamByName('LOCAL').Value := DataM.Local['ID'];
   DataM.Graba.ParamByName('FPAGO').Value := TotalesRArqueo['FPAGO'];
   DataM.Graba.Open;

   TotalesRArqueo['TOTAL'] := DataM.Graba['TOTALFPAGO']
end;

estas variables son las q deseo cambiar pero desde otro lugar del codigo por ejemplo cuando ejecuto la sentencia de consulta, es esto posible???

se me olvidaba uso delphi 7 firebird 2.0

felipe88 08-07-2008 21:14:30

A ver si entiendo, lo que quieres es cambiar son los nombres de los parametros que actualmente estas usando cuando te sea necesario pero desde otro procedimiento?

Vlady 08-07-2008 21:20:35

si quiero cambiar los paramentros de esta consulta ya que cambian y desde otro procedimiento

felipe88 08-07-2008 21:31:43

Bueno... y no seria simplemente con pasar la otra consulta de nuevo al Query y darle otros parametros, o simplemente crear un Query auxiliar :rolleyes:

O por ejemplo intentar hacer algo como esto...
Código Delphi [-]
DataM.Graba.ParamByName('CAJERO').Value := variable1;
DataM.Graba.ParamByName('FECHA').Value := variable2;
DataM.Graba.ParamByName('LOCAL').Value := variable3;
DataM.Graba.ParamByName('FPAGO').Value := variable4;

En este caso seria solo para cambiar los valores si es necesario que lo hagan, las variables serian globales...

Vlady 08-07-2008 21:41:55

No habia pensado en eso.

Lo voy a hacer aunque no me gusta crear variables, y menos globales. Recarga el sistema


La franja horaria es GMT +2. Ahora son las 19:09:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi