Fórum Ocultar nome no DBGrid #174957
14/08/2003
0
Senhores
Estou usando Table com DataSource
O que eu quero é +- o seguinte:
em uma dbgrid
If TABLE1.TIPO.VALUE = ´J´ then
TABLE1.NOME. apareça apenas na celula de nome ********
else
TABLE1.NOME. na celula o nome aparece normal
Objetivo
se o cliente for pessoa juridica o nome não será mostrado na tela, será mostrado apenas **********, se não for juridica então aparece normal para ser visualizado.
Aenciosamente
José Ricardo
Estou usando Table com DataSource
O que eu quero é +- o seguinte:
em uma dbgrid
If TABLE1.TIPO.VALUE = ´J´ then
TABLE1.NOME. apareça apenas na celula de nome ********
else
TABLE1.NOME. na celula o nome aparece normal
Objetivo
se o cliente for pessoa juridica o nome não será mostrado na tela, será mostrado apenas **********, se não for juridica então aparece normal para ser visualizado.
Aenciosamente
José Ricardo
Zlink
Curtir tópico
+ 0
Responder
Posts
14/08/2003
Diogoalles
Utilize o evento OnDrawColumnCell do DBGrid.
A idéia é +- esta:
...
if(Column.FieldName = ´COLUNA´)then //COLUNA DEVE SER O NOME DA COLUNA COMO ESTÁ NA PROPRIEDADE COLUMNS DO DBGRID
begin
with DbGrid1.Canvas do
begin
// Aqui vc insere o código que quiser.
end;
end;
abraço
Diogo
A idéia é +- esta:
...
if(Column.FieldName = ´COLUNA´)then //COLUNA DEVE SER O NOME DA COLUNA COMO ESTÁ NA PROPRIEDADE COLUMNS DO DBGRID
begin
with DbGrid1.Canvas do
begin
// Aqui vc insere o código que quiser.
end;
end;
abraço
Diogo
Responder
Gostei + 0
14/08/2003
Diogoalles
Uma solução mais simples q a anterior seria você criar um campo calculado no tabela.
Para isso abra o Fields_Editor do componente Table. Cliqeu com o Botão direito e selecione New Field. Crie um campo ´Nome´ do tipo Calculated e clique em OK.
No evento OnCalcField do Table cloque seu código:
If TABLE1.TIPO.VALUE = ´J´ then
TABLE1.NOME.Value := ´*****************´
else
TABLE1.NOME.Value := Table1.NomeOriginaldoCampo.Value;
Agora na coluna do DBGrid é só setar para que ela exiba o campo calculado que foi criado, ao invés de exibir o campo nome original.
abraço
Diogo
Para isso abra o Fields_Editor do componente Table. Cliqeu com o Botão direito e selecione New Field. Crie um campo ´Nome´ do tipo Calculated e clique em OK.
No evento OnCalcField do Table cloque seu código:
If TABLE1.TIPO.VALUE = ´J´ then
TABLE1.NOME.Value := ´*****************´
else
TABLE1.NOME.Value := Table1.NomeOriginaldoCampo.Value;
Agora na coluna do DBGrid é só setar para que ela exiba o campo calculado que foi criado, ao invés de exibir o campo nome original.
abraço
Diogo
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)