GARANTIR DESCONTO

Fórum Parametro para imprimir entre datas e ordem crescente #571795

29/11/2016

0

Boa tarde!

quero passar um parâmetro para QUERY

Imprimir por período (entre datas)
Imprimir por ordem crescente.
Mailson Janoca

Mailson Janoca

Responder

Posts

01/12/2016

Natalia

Bom dia. Acredito que seja assim:

1 - Por período
    Query.SQL.ADD('Select cod_Produto, nom_Produto');
    Query.SQL.ADD('From tb_Produto');
    Query.SQL.ADD('Where dt_Cadastro >= :dt_Inicial and c.dt_Movimento <= :dt_Final');
    Query.SQL.ADD.Parameters.ParamByName('dt_Inicial').Value := dbDataInicial.Text;
    Query.SQL.ADD.Parameters.ParamByName('dt_Final').Value := dbDataFinal.Text;



2 - Por ordem crescente
 Query.SQL.ADD('Select cod_Produto, nom_Produto');
    Query.SQL.ADD('From tb_Produto');
    Query.SQL.ADD('Order by cod_Produto asc');
Responder

Gostei + 0

01/12/2016

Araujo Junior.

Tem um erro ai nos parametros.... não tem esse ADD.Parameters.ParamByName. Lembrando que a montagem do ParamByName dependa da Engine de conexao que voce usa.

É interessante voce limpar a query antes de adicionar os comandos.

O comando completo pode ficar assim:

Query.SQL.ADD('Select cod_Produto, nom_Produto');
Query.SQL.ADD('From tb_Produto');
Query.SQL.ADD('Where dt_Cadastro >= :dt_Inicial and c.dt_Movimento <= :dt_Final');
Query.SQL.ADD('Order by cod_Produto');
Query.SQL.Parameters.ParamByName('dt_Inicial').Value := dbDataInicial.Text;
Query.SQL.Parameters.ParamByName('dt_Final').Value := dbDataFinal.Text;
Responder

Gostei + 0

01/12/2016

Natalia

Eu não utilizo assim, foi só um exemplo para ele saber como seriam os parâmetros.
Obrigada pela correção :)
Responder

Gostei + 0

01/12/2016

Jones Granatyr

Pode usar também o between ao invés de >= e <=

Where dt_Cadastro between :dt_Inicial and :dt_Final
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar