Solved

Display alternative value in DBGrid...?

Posted on 2002-07-17
10
283 Views
Last Modified: 2010-04-04
Hi,

When I display the content of a database table in a DBGrid, all the boolean fields will display "true" or "false".

My question: how can I change this in order to see "yes" and "no" instead of "true" and "false" in the DBGrid component? Any other alternative value must be possible in order to support multiple languages.

Thank you in advance.

RoosieDB
0
Comment
Question by:roosiedb
  • 3
  • 3
  • 2
  • +1
10 Comments
 
LVL 7

Expert Comment

by:Motaz
Comment Utility
You can use calculated field.

- Double click at the dataset that your dbGrid connected to.
- At fields editor right click and select Add all fields
- Right click again and select New Field
- At name box write YesNoField. At Type combo box select string and specify 3 in it's size field. At field type select Calculated.
- Display events tab of your datasource component, double click at OnCalcFields event and write:

  if DataSet.FieldByName('BooleanField').AsBoolean then
  DataSet.FieldByName('yesNoField').AsString:= 'Yes'
  else
  DataSet.FieldByName('yesNoField').AsString:= 'No'


I supposed that your boolean field called 'BooleanField'

Shufta kaif
Motaz
0
 
LVL 27

Expert Comment

by:kretzschmar
Comment Utility
you could also use the ongettext/onsettext-events of this field
0
 

Author Comment

by:roosiedb
Comment Utility
Hi,

I will try this tonight... thank you in advance (for your quick reply)...

gr.,
RoosieDB
0
 
LVL 3

Expert Comment

by:marcoszorrilla
Comment Utility
You can double click the Ttable and add all the fields, select your boolean field and in DisplayValues property.
You write for example Sí;No
or
Yes;Not
Oui;Non

As this property can be changed in runtime.

Best Regards
Marcos
0
 
LVL 27

Expert Comment

by:kretzschmar
Comment Utility
yep, marcos,
i was not sure,
because no delphi on hand
0
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

 
LVL 3

Expert Comment

by:marcoszorrilla
Comment Utility
Danke Kretzschmar.
I forgot
Ja;Nein.

Best Regards
Marcos.
0
 
LVL 7

Accepted Solution

by:
Motaz earned 50 total points
Comment Utility
There is a more easy solution without modifying any property :

after opening your table write:

  Table1.Open;
  TBooleanField(Table1.FieldByName('Bool')).DisplayValues:= 'Yes;No';


Motaz
0
 

Author Comment

by:roosiedb
Comment Utility
For your information, I will use "JA" and "NEE" (as in Dutch)... Later on I will add some more languages in here...

gr.,
RoosieDB

P.S. Last night I did not have the chance to try this solution, I will retry tonight...
0
 
LVL 3

Expert Comment

by:marcoszorrilla
Comment Utility
This is the idea. You can create a Global Variable for language that the user can select, and then write a function that returns the correct string.

Here you have an example and the idea you don't have more than to adapt it to your necessities.

Best Regards
Marcos.


procedure TForm1.Button1Click(Sender: TObject);
Var
cBoolShow:String;
nLanguage:Integer;
begin
nLanguage:=0;
Case nLanguage of
0:cBoolShow:='Ja;Nee';
1:cBoolShow:='yes;Not';
2:cBoolShow:='Oui;Non';
3:cBoolShow:='Ja;Nein';
4:cBoolShow:='Sí;no';
end;
Table1MyField.DisplayValues:=cBoolShow;
end;
0
 

Author Comment

by:roosiedb
Comment Utility
Working perfect !

Thanx.

RoosieDB
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now