Problema com DbRadioGroup

Delphi

17/03/2010

Bom dia   Estou usando Dbradiogroup para optar entre duas escolhas: Aberto  Baixado Na propriedade values foi colocado: A B onde será gravado no campo da tabela que foi definido como char. Porém após a gravação não está aparecendo a bolinha do item selecionado, e o valor já conferi, está gravado na base.   Estou usando Delphi 2010 + Firebird 2.1 + conexao DBX   Fico no aguardo   Rogério
Rogerio Santos

Rogerio Santos

Curtidas 0

Respostas

Robson Catunda

Robson Catunda

17/03/2010

Verifique se na propriedade values do dbradiogroup vc está colocando

 'A'
 'B'

Se estiver... retire as aspas.
GOSTEI 0
Robson Catunda

Robson Catunda

17/03/2010

Veja tb que se na tebela está maiúsculo o values no dbradiogroup tb tem de estar.

A <> a 

B <> b

A propriedade values tem de ser identica.
GOSTEI 0
Rogerio Santos

Rogerio Santos

17/03/2010

Os valores na propriedade Values estao A e B sem aspas e na tabela está salvo como está na proprieade values   Rogério dos Santos
GOSTEI 0
Robson Catunda

Robson Catunda

17/03/2010

Ao meu ver, então, o dbradiogroup está:

1 - Perdendo o foco do Datasource;

2 - Perdendo o foco do campo relacionado; ou

3 - tem certeza que o campo é do tipo Char(1)?
GOSTEI 0
Rogerio Santos

Rogerio Santos

17/03/2010

Sim, o campo é do tipo CHAR, com certeza     Rogério
GOSTEI 0
Rogerio Santos

Rogerio Santos

17/03/2010

Sim o campo é do tipo CHAR(1) com certeza   Rogério
GOSTEI 0
Wilson Junior

Wilson Junior

17/03/2010

Você seta a propriedade Dbradiogroup.ItemIndexem algum lugar do seu código? Pois se você atribui, pode estar aí o problema.
GOSTEI 0
Rogerio Santos

Rogerio Santos

17/03/2010

Nao uso o Itemindex... Ainda não descobri qual é o problema e estou perdendo tempo no projeto...     Rogério
GOSTEI 0
Wilson Junior

Wilson Junior

17/03/2010

Olha, uma maneira de fazer é com POG (Programação Orientada a Gambiarra), não aconselho, mas para efetuar um teste ele é bom.

{ Coloque este código após posicionar/editar o registro }
Dbradiogroup.ItemIndex := Dbradiogroup.Values.IndexOf( ClietDataSet.FieldByName('NomeCampo').AsString );


Se este código funcionar, é sinal de que o seu Dbradiogroup não está sendo atualizado

Espero ter colaborado.
GOSTEI 0
POSTAR