Bonjour,
Alors voila, j'ai une base sous Firebird 2.1 avec charset UTF8
Sous Delphi 2009, tous les caractères accentués et autres cédilles s'affichent parfaitement dans les DBGrid et dans les DBLookupComboBox.
Mais lorsque dans une DBGrid, j'essaie de mettre une dbLookUpComboBox, les caractères accentués s'affichent bien dans la dbLookUpComboBox, mais pas dans la colonne rérérence de la DBGrid !
Donc dans la grille le nom de l'activité : champs ACTIVITE de la table ACTIVITE, doit s'afficher en se basant sur le champ NOACTIVITE de la table NOM (voir définition des table + bas)
Voir capture d'écran : ici
Pour créer cela: à partir de la table, j'ajoute un nouveau champ, dans sa propriété je donne un nom (ACTIVITE) et le type de ton champ de référence: ici String
Puis je clique sur radio button et choisis "référence".
Dans "la définition de la référence", je choisis le nom du champ clé NOACTIVITE de la table NOM
Et je choisis la "clé de référence" : NOACTIVITE de la table ACTIVITE,et le "champ résultat" : ACTIVITE de la table ACTIVITE qui s'affichera dans le dbgrid.
Donc comme le montre la capture d'écran, la nouvelle colonne ACTIVITE ne gère plus les accents.
Si vous avez une idée, merci d'avance.
Didier
Voici la définition de mes 2 tables:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 CREATE TABLE NOM ( NONOM INTEGER NOT NULL, NOM VARCHAR(50) CHARACTER SET UTF8 NOT NULL COLLATE UTF8, NOACTIVITE INTEGER, ADRESSE VARCHAR(50) CHARACTER SET UTF8 COLLATE UTF8, CP INTEGER, VILLE VARCHAR(40) CHARACTER SET UTF8 COLLATE UTF8, TEL VARCHAR(20) CHARACTER SET UTF8 COLLATE UTF8, PORTABLE VARCHAR(20) CHARACTER SET UTF8 COLLATE UTF8, EMAIL VARCHAR(50) CHARACTER SET UTF8 COLLATE UTF8, CA NUMERIC(10, 2)); ALTER TABLE NOM ADD CONSTRAINT PK_NOM PRIMARY KEY (NONOM); ALTER TABLE NOM ADD CONSTRAINT FK_NOM_ACTIVITE FOREIGN KEY (NOACTIVITE) REFERENCES ACTIVITE(NOACTIVITE); CREATE TABLE ACTIVITE ( NOACTIVITE INTEGER NOT NULL, ACTIVITE VARCHAR(50) CHARACTER SET UTF8 NOT NULL COLLATE UTF8); ALTER TABLE ACTIVITE ADD CONSTRAINT PK_ACTIVITE PRIMARY KEY (NOACTIVITE);
Partager