Duvida com o Sum na aplicação do DEPHI
Gostaria de saber como fazer este comando da forma correta.
begin
begin
begin
with UntDMBanco.qryServico do
BEGIN
Close;
SQL.Clear;
SQL.ADD('SELECT sum(SR_TOTAL_HORAS_DIA)as SR_DATA_ENTRADA FROM SERVICO_REALIZADO');
SQL.Add('WHERE SR_DATA_ENTRADA=edtDataEntradaServico.text LIKE :OSS');
ParamByName('OSS').AsString:= Edit1.Text+ '%';
Open;
END;
end;
end;
end;
Estou fazendo esta aplicação no Dephi para calcular quantas horas as maquinas ficam parada na manutenção por dia. Neste caso ele estará pegando as OS e somando todas que foram aberta no dia.
Alguém poderia me ajudar?
begin
begin
begin
with UntDMBanco.qryServico do
BEGIN
Close;
SQL.Clear;
SQL.ADD('SELECT sum(SR_TOTAL_HORAS_DIA)as SR_DATA_ENTRADA FROM SERVICO_REALIZADO');
SQL.Add('WHERE SR_DATA_ENTRADA=edtDataEntradaServico.text LIKE :OSS');
ParamByName('OSS').AsString:= Edit1.Text+ '%';
Open;
END;
end;
end;
end;
Estou fazendo esta aplicação no Dephi para calcular quantas horas as maquinas ficam parada na manutenção por dia. Neste caso ele estará pegando as OS e somando todas que foram aberta no dia.
Alguém poderia me ajudar?
Rodrigo Carlos
Curtidas 0
Melhor post
Natanael Ferreira
10/08/2016
Qual o tipo do campo SR_DATA_ENTRADA? Está realmente como Data no banco de dados?
Se puder, poste como ficou seu código.
Se puder, poste como ficou seu código.
GOSTEI 1
Mais Respostas
Rodrigo Carlos
10/08/2016
Bom dia!
Sera que consigo fazer esta soma com um DGrid?
Tipo filtrar por data o Dgrid e depois somar só que estiver filtrado?
Sera que consigo fazer esta soma com um DGrid?
Tipo filtrar por data o Dgrid e depois somar só que estiver filtrado?
GOSTEI 0
Natanael Ferreira
10/08/2016
Qual o banco de dados?
Qual a estrutura dos campos da sua tabela?
Qual a estrutura dos campos da sua tabela?
GOSTEI 0
Rodrigo Carlos
10/08/2016
Firebird
GOSTEI 0
Rodrigo Carlos
10/08/2016
FIREBIRD
SR_ID
SR_OS
SR_EVENTO
SR_HORA_INICIAL
SR_HORA_FINAL
SR_NOME_EXECUTANTE
SR_DESCRICAO
SR_PECAS_ITENS
SR_QUANTIDADE
SR_UNIDADE
SR_VALOR
SR_FORNECEDOR
SR_DATA_ENTRADA
SR_TOTAL_HORAS_DIA
SR_DIA
SR_MES
SR_ANO
SR_ID
SR_OS
SR_EVENTO
SR_HORA_INICIAL
SR_HORA_FINAL
SR_NOME_EXECUTANTE
SR_DESCRICAO
SR_PECAS_ITENS
SR_QUANTIDADE
SR_UNIDADE
SR_VALOR
SR_FORNECEDOR
SR_DATA_ENTRADA
SR_TOTAL_HORAS_DIA
SR_DIA
SR_MES
SR_ANO
GOSTEI 0
Natanael Ferreira
10/08/2016
Teste assim:
with UntDMBanco.qryServico do
begin
Close;
SQL.Clear;
SQL.ADD('SELECT sum(SR_TOTAL_HORAS_DIA) as SOMAHORAS FROM SERVICO_REALIZADO');
SQL.ADD('WHERE SR_DATA_ENTRADA = CURRENT_DATE AND SR_OS = :OSS');
ParamByName('OSS').AsString := Edit1.Text;
Open;
end;GOSTEI 0
Rodrigo Carlos
10/08/2016
Desta forma foi, mais será que consigo colocar qual a data que quero que seja somado?
tipo se no TEdit colocar o numero 1
existe como a somatória ser somente no dia "1"????
Agradeço a ajuda e a atenção!
Muito Obrigado.
tipo se no TEdit colocar o numero 1
existe como a somatória ser somente no dia "1"????
Agradeço a ajuda e a atenção!
Muito Obrigado.
GOSTEI 0
Natanael Ferreira
10/08/2016
Neste caso, te aconselharia a usar o componente DateTimePicker (Aba Win32) para definir o dia da consulta.
E teste o código assim:
E teste o código assim:
with UntDMBanco.qryServico do
begin
Close;
SQL.Clear;
SQL.ADD('SELECT sum(SR_TOTAL_HORAS_DIA) as SOMAHORAS FROM SERVICO_REALIZADO');
SQL.ADD('WHERE SR_DATA_ENTRADA = :DATASS AND SR_OS = :OSS');
ParamByName('OSS').AsString := Edit1.Text;
ParamByName('DATASS').AsDate := DateTimePicker1.Date;
Open;
end;GOSTEI 0
Rodrigo Carlos
10/08/2016
agora esta dando este erro.
dynamic sql error
expression evaluation not supported
argument for SUM in Dialect3 must b numeric
pode me ajudar?
dynamic sql error
expression evaluation not supported
argument for SUM in Dialect3 must b numeric
pode me ajudar?
GOSTEI 0
Rodrigo Carlos
10/08/2016
Bom dia!
Desculpe a demora em responder, consegui fazer. Era da quela forma mesmo.
Muito Obrigado pela atenção.
Desculpe a demora em responder, consegui fazer. Era da quela forma mesmo.
Muito Obrigado pela atenção.
GOSTEI 0