GARANTIR DESCONTO

Fórum Grid e subgrid #587317

30/10/2017

0

Bom dia, estou usando o firedac para o Banco de Dados MYSQL, e usando o componente DBGRID, o mesmo está funcionando normalmente para tbContas_Pagar, só que tenho uma dúvida e não sei como fazer, tenho duas tabelas TBContas_Pagar e TBContas_Pagar_Pagamento, na primeira será gravado os dados da compra:
TBContas_Pagar                                       TBContas_Pagar_Pagamento
id (Chave Primaria                                     id (Chave Primaria)
numero_doc                                               id_contas_pagar (Chave estrangeira)
data_compra                                              parcelas
tipo_vencimento                                         data_vencimento
tipo_vencimento_a_vista                           vlr_parcela
dia_vencimento                                         data_pagamento
qtde_parcelas                                           vlr_pagamento
vlr_abatido                                                status
data_cadastro
Status

Creio que devo gravar os dados na TBContas_pagar e depois TBContas_pagar_pagamento, deduzo que como vinculei a chave estrangeira id_contas_pagar ele irá vincular a uma venda já realizada, podendo ter varias parcelas e ao clicar no primeiro data grid queria ver as parcelas e suas situações.

Preciso de ideias para conseguir fazer se tiverem algum exemplo ajudaria e muito, obrigado.
Marcelo Duarte

Marcelo Duarte

Responder

Post mais votado

30/10/2017

Boa tarde, respondendo minha pergunta para registro futuro de dúvidas ou outras pessoa que passe por este mesmo problema.

No projeto existem duas grid. dbgDados e dbgPagamento, o primeiro tem os registros do que foi compro e o total de parcelas, já o segundo seria referente ao pagamento.

ligar a base de dados normalmente pelo dsPagamento, para exibir o registro na tabela filha (de pagamentos) fiz as seguintes alterações no código:

na dbgDados:

no evento OnCellClick:


//Pegar o ID do Campo onde clico da tabela TBContas_Pagar
id_tbcontas_pagar := dmBanco.fdqrycontas_pagarid.AsInteger;

dmBanco.fdqryContas_pagar_pagamento.Close;

//Realizo a consulta com o ID pego na linha da tabela e realizo a consulta
dmBanco.fdqryContas_pagar_pagamento.SQL.CommaText := 'SELECT * FROM TBCONTAS_PAGAR_PAGAMENTO WHERE ID_CONTAS_PAGAR = ' + IntToStr(id_tbcontas_pagar);

dmBanco.fdqryContas_pagar_pagamento.Open;



Bem simples e funcional.

Marcelo Duarte

Marcelo Duarte
Responder

Gostei + 1

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

Aceitar