Ir para conteúdo
Fórum Script Brasil
  • 0

exibir dados em um formulario


Livio Neiva

Pergunta

eu crie um procedimento chamado QueyToEdits para ser usado no procedimentos de exibição, tipo para alterar.

so que eu uso no formulario um Edit para exibir o codigo Fornecedor e um edit para exibir a descrição do fornecedor, so que nesse formulario usa um campo que é chave estrangeira codigo do fornecedor, mais não tem chave estrangeira para a descricao do fornecedor (sabendo você que fornecedor uma tabela)

eu quero fazer com que esse procedimento abaixo consiga exibir a descrição do fornecedor???

como faço isso????

abaixo estar o procedimento

procedure TF_Pagamentos.QueryToEdits;

begin

EditDoc.Text := F_DMExpress.Cds_Pagamento.FieldByName('NUMDOC').AsString;

EditCodForn.Text := F_DMExpress.Cds_Pagamento.FieldByName('CODFORN').AsString;

//EditForn.Text := F_DMExpress.Cds_Fornecedor.FieldByName('NOME').AsString; MaskEmissao.Text := F_DMExpress.Cds_Pagamento.FieldByName('EMISSAO').AsString;

MaskVencim.Text := F_DMExpress.Cds_Pagamento.FieldByName('VENCIMENTO').AsString;

EditValor.Text := F_DMExpress.Cds_Pagamento.FieldByName('VLTOTAL').AsString;

//EditValorJuros.Text :=

EditValorResult.Text := F_DMExpress.Cds_Pagamento.FieldByName('JURO').AsString;

//EditMulta.Text :=

EditValorMulta.Text := F_DMExpress.Cds_Pagamento.FieldByName('MULTA').AsString;

//EditDesc.Text :=

EditValorDesc.Text := F_DMExpress.Cds_Pagamento.FieldByName('DESCONTO').AsString;

EditPago.Text := F_DMExpress.Cds_Pagamento.FieldByName('VLRPAGO').AsString;

MaskPag.Text := F_DMExpress.Cds_Pagamento.FieldByName('PAGAMENTO').AsString;

cbTipoPgto.Text := F_DMExpress.Cds_Pagamento.FieldByName('TIPOPGTO').AsString;

EditConta.Text := F_DMExpress.Cds_Pagamento.FieldByName('CONTA').AsString;

//EditNumConta.Text :=

EditCheque.Text := F_DMExpress.Cds_Pagamento.FieldByName('CHEQUE').AsString;

MaskCheque.Text := F_DMExpress.Cds_Pagamento.FieldByName('DATACHEQUE').AsString;

EditBanco.Text := F_DMExpress.Cds_Pagamento.FieldByName('BANCO').AsString;

//EditNomeBanco.Text :=

EditNominal.Text := F_DMExpress.Cds_Pagamento.FieldByName('NOMINAL').AsString;

end;

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

porque você não utiliza DBEdit's para tal conexão com a query ??? te pouparia muito trabalho ....

para você visualizar o nome do fornecedor na query, você precisa seleciona-lo na instrução SQL ... tipo:

select PAGAMENTOS.*, FORNEC.NOME from PAGAMENTOS, FORNEC where PAGAMENTOS.COD_FORNEC = FORNEC.COD

onde

PAGAMENTOS é uma tabela com FK COD_FORNEC

FORNEC é o seu cadastro de fornecedores com CODIGO ligado a COD_FORNEC

abraços !!

Link para o comentário
Compartilhar em outros sites

  • 0

O nome do fornecedor está ligado pelo codigo. Então se na sua tabela você possui um campo CODFORN, também possui esse campo na tabela de FORNECEDORES .. o que precisa é usar um where e ligar FORN.CODFORN = SUATABELA.CODFORN .. assim ligará as chaves das tabelas e você pode dar um select no campo NOME do fornecedor

abraço

___

.. não vi que já tinha respondido :P

Editado por DiabloX3
Link para o comentário
Compartilhar em outros sites

  • 0

eu crie um procedimento chamado QueyToEdits para ser usado no procedimentos de exibição, tipo para alterar.

pois estou trabalhando com edits.

tipo assim quando eu clico no botão alterar ele chama o procedimento QueyToEdits,(o procedimento estar no inicio do tópico),onde meus registros seram exibidos nos edit, então eu não estou sabendo como vou inserir o procedimento qe você me indicou no procedimento QueryToEdits.

no evento oncreate, será quedaria certo??

vale obrigado

Link para o comentário
Compartilhar em outros sites

  • 0
eu crie um procedimento chamado QueyToEdits para ser usado no procedimentos de exibição, tipo para alterar.

pois estou trabalhando com edits.

tipo assim quando eu clico no botão alterar ele chama o procedimento QueyToEdits,(o procedimento estar no inicio do tópico),onde meus registros seram exibidos nos edit, então eu não estou sabendo como vou inserir o procedimento qe você me indicou no procedimento QueryToEdits.

no evento oncreate, será quedaria certo??

vale obrigado

ok !!! qual o comando SQL que você está usando para carregar os dados usados em QueryToEdits ???

se não me engano você está utilizando o componente F_DMExpress.Cds_Pagamento ... qual código SQL está utilizando ??

Link para o comentário
Compartilhar em outros sites

  • 0

no procedimento queryToEdits estou usando essa linha de comando

EditCodForn.Text := F_DMExpress.Cds_Pagamento.FieldByName('CODFORN').AsString;

//EditForn.Text := F_DMExpress.Cds_Fornecedor.FieldByName('NOME').AsString;

e a consulta SQL é a simples

select * from pagamento

Link para o comentário
Compartilhar em outros sites

  • 0

pois então, ao invés de utilizar:

select * from pagamento

utilize:

select PAGAMENTO.*, FORNECEDOR.NOME as "FORNEC_NOME"

from PAGAMENTO, FORNECEDOR

where FORNECEDOR.ID = PAGAMENTO.ID_FORNEC

onde :

FORNECEDOR é o nome da tabela de fornecedores...

FORNECEDOR.ID é a chave da tabela de fornecedores

PAGAMENTO.ID_FORNEC é a chave estrangeira na tabela de pagamento

é só você adaptar os nomes conforme estão os nomes da sua tabela ...

assim, na consulta da sua query, aparecerá o campo FORNEC_NOME com o nome do fornecedor retirado do

cadastro de fornecedores...

abraço !!!

Link para o comentário
Compartilhar em outros sites

  • 0

Deixa eu tentar te explicar melhor,

na propriedade SQL de Q_Pagamento eu coloquei select * from pagamento, (acredito que seja aqui onde você ta pedidndo que eu altere)

no meu evento Oncreate eu tenho esse procedimento que ativa um componente chamado de Cds_pagamento(uso para ligar ao DBgrid) que estar interligado a Q_Pagamento

procedure TF_Pagamentos.FormCreate(Sender: TObject);

begin

MaskPeriodo.Text := DateToStr(Date);

MaskA.Text := DateToStr(Date);

F_DMExpress.Cds_Pagamento.Active := True;

F_DMExpress.T_TipoPgto.Active := True;

F_DMExpress.T_TipoPgto.First;

While not F_DMExpress.T_TipoPgto.Eof do begin

cbtipopgto.Items.Add (StringOfChar('0',3)+F_DMExpress.T_TipoPgtoCODIGO.AsString + ' - ' + F_DMExpress.T_TipoPgtoDESCRICAO.AsString);

F_DMExpress.T_TipoPgto.Next;

end;

end;

so estou informando caso você keira me dar outra sugestão!!!

valeu obrigado pela ajuda

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...