Truncar data em StoredProcedure -gt; Frirebird 1.5

Delphi

25/09/2006

Salve pessoal

Tenho o seguinte procedimento trabalhando com Delphi 7 + IBX + Firebird:

  with cdsConsultaCliente do begin
    Close;
    CommandText := ´select * from CLIENTE where ((COTACAO_GRUPO = 1) and (mod(COTACAO_PROXIMA_DATA, 7) = :COTACAO_PROXIMA_DATA_7 )) or ´ +
                                               ´((COTACAO_GRUPO = 2) and (mod(COTACAO_PROXIMA_DATA, 10) = :COTACAO_PROXIMA_DATA_10 )) or ´ +
                                               ´((COTACAO_GRUPO = 3) and (mod(COTACAO_PROXIMA_DATA, 15) = :COTACAO_PROXIMA_DATA_15 )) or ´ +
                                               ´((COTACAO_GRUPO = 4) and (mod(COTACAO_PROXIMA_DATA, 30) = :COTACAO_PROXIMA_DATA_30 )) or ´ +
                                               ´((COTACAO_GRUPO = 5) and (mod(COTACAO_PROXIMA_DATA, 60) = :COTACAO_PROXIMA_DATA_60 )) or ´ +
                                               ´((COTACAO_GRUPO = 6) and (mod(COTACAO_PROXIMA_DATA, 90) = :COTACAO_PROXIMA_DATA_90 )) or ´ +
                                               ´((COTACAO_GRUPO = 7) and (mod(COTACAO_PROXIMA_DATA, 120) = :COTACAO_PROXIMA_DATA_120 )) or ´ +
                                               ´((COTACAO_GRUPO = 8) and (mod(COTACAO_PROXIMA_DATA, 180) = :COTACAO_PROXIMA_DATA_180 ))´;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_7´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 7;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_10´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 10;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_15´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 15;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_30´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 30;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_60´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 60;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_90´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 90;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_120´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 120;
    Params.ParamByName( ´COTACAO_PROXIMA_DATA_180´ ).AsInteger := trunc(strtodate(Edit2.Text)) mod 180;
    try
      Open;
    except
      on e : Exception do ShowMessage( ´Erro: ´ + e.Message );
    end;
  end;


Esta funcionando perfeitamente o que eu gostaria de fazer é fazer uma StoredProcedure e passar como parametro para a mesma apenas uma data. Não sei como transformar a data em inteiro.

Se alguem puder me dar uma ajuda.

valewww!


Mmoreira

Mmoreira

Curtidas 0
POSTAR