query para retornar num dbgrid parcela atrasada cobrando juros de 0.0033% ao dia mais multa de 0.02% no delphi usando banco mysql
//rotina para baixar a parcela selecionada //essa é a programação que tenho mas ela só baixa a parcela e atualiza no caixa precisava de uma programação para checar na tabela se a prestação tem mais que 3 dias de atraso, caso alguém possa ajudar //obs. não seria mais lógico eu mudar o lay-out da tela ?, essa programação vai num speedbuttom, agradeço desde já TB_baixarParcela.Active := True; TB_baixarParcela.Locate('parc_id', SQL_parcelasProntasparc_id.Value, []); TB_baixarParcela.Edit; TB_baixarParcelaparc_pago.Value := 'SIM'; TB_baixarParcelaparc_data_pago.Value := Date; TB_baixarParcela.Post; ShowMessage('Parcela paga com sucesso !!'); //lançar no caixa with dm.SQL_caixa do begin Close; SQL.Clear; SQL.Add('update caixa set caixa_valor = caixa_valor + :valor'); SQL.Add('where caixa_data_abre = :data and caixa_usuario = :user'); ParamByName('user').Value := dm.SQL_usuariosuser_id.Value; ParamByName('data').Value := Date; ParamByName('valor').Value := SQL_parcelasProntasparc_valor.Value; ExecSQL; end;
Marcos Albano
Curtidas 0
Respostas
Italo Pereira
24/03/2017
tenta assim:
if (data_vencimento > now) then begin if ((now - data_vencimento) > 3) then begin showmessage('tem mais de três dias'); end; end;
GOSTEI 0
Programador Aloprado
24/03/2017
Bom dia Marcos!
Só para ter certeza que eu entendi direito. No momento de dar a baixa na parcela você quer calcular o juros e a multa? Ou você quer fazer o calculo no momento de listar? Por que se for na listagem, era bom postar o código que faz a listagem.
Espero ter ajudado!
Só para ter certeza que eu entendi direito. No momento de dar a baixa na parcela você quer calcular o juros e a multa? Ou você quer fazer o calculo no momento de listar? Por que se for na listagem, era bom postar o código que faz a listagem.
Espero ter ajudado!
GOSTEI 0
Marcos Albano
24/03/2017
boa tarde programador, primeiramente obrigado pela ajuda, eu estou tentando retornar multa e juros na grid para o cliente visualizar, e sim ao selecionar na grid gostaria que os valores aparecessem, vou postar o que tentei fazer achei uma função power tentei usar ela mas foi em vão segue:
procedure TF_baixarParcelas.btn_pagarParcelaClick(Sender: TObject); var Juros, var1, var2 :Real; var diasAtraso :TDateTime; begin //calculo de juros Juros := 0; var1 := 0; var2 := 0; diasAtraso:= TB_baixarParcelaparc_data_pago.Value - TB_baixarParcelaparc_vence.Value; if diasAtraso > 3 then begin var1 := (1+(0.02 * 0.0033)); var2 := Power(var1, diasAtraso); Juros := (TB_baixarParcelaparc_valor.Value * var2) - TB_baixarParcelaparc_valor.Value; TB_baixarParcelaparc_juros.Value := Juros; //rotina para baixar a parcela selecionada TB_baixarParcela.Active := True; TB_baixarParcela.Locate(''parc_id'', SQL_parcelasProntasparc_id.Value, []); TB_baixarParcela.Edit; TB_baixarParcelaparc_pago.Value := ''SIM''; TB_baixarParcelaparc_data_pago.Value := Date; TB_baixarParcela.Post; ShowMessage(''Parcela paga com sucesso !!''); end else begin //rotina para baixar a parcela selecionada TB_baixarParcela.Active := True; TB_baixarParcela.Locate(''parc_id'', SQL_parcelasProntasparc_id.Value, []); TB_baixarParcela.Edit; TB_baixarParcelaparc_pago.Value := ''SIM''; TB_baixarParcelaparc_data_pago.Value := Date; TB_baixarParcela.Post; ShowMessage(''Parcela paga com sucesso !!''); end; //lançar no caixa with dm.SQL_caixa do begin Close; SQL.Clear; SQL.Add(''update caixa set caixa_valor = caixa_valor + :valor''); SQL.Add(''where caixa_data_abre = :data and caixa_usuario = :user''); ParamByName(''user'').Value := dm.SQL_usuariosuser_id.Value; ParamByName(''data'').Value := Date; ParamByName(''valor'').Value := SQL_parcelasProntasparc_valor.Value; ExecSQL; end; //=================================================================== //atualização da sql SQL_parcelasProntas.Close; SQL_parcelasProntas.Open; end;
GOSTEI 0
Marcos Albano
24/03/2017
tentei dessa forma, mas acabei me perdendo no caminho, duvida, pra listar juros, parcela, vencto eu preciso de uma view para a grid?, e a programação está correta na tb_baixarparcela_valor?
se puder analisar eu agradeço
se puder analisar eu agradeço
GOSTEI 0