Bonjour,
ravi de rejoindre cette communauté dont je lis les posts depuis déjà un certain temps.
Soit deux tables:
FRAIS: f_id, f_type, libelle, montant, date
TYPES: t_id, t_type
f_type = integer
t_type = string
(J'enregistre t_id dans f_type, pour lier les deux tables)
Afficher le contenu de FRAIS dans une DBGrid, lui lier un DBNavigator, et 4 champs de saisies (dont un DBLookupComboBox qui me remonte la liste 't_type' depuis TYPES) pour les modifs, c'est ok.
Lorsque je clique sur une ligne du DBGrid, les données sont affichées dans mes champs de saisies, et le lookup fonctionne parfaitement bien. Je peux modifier, supprimer et ajouter un nouvel enregistrement.
PROBLEME:
Dans la DBGrid, j'ai f_type (integer) qui est affiché, et je voudrais plutôt voir t_type (string) qui est le type de frais en clair.
J'ai essayé plein de choses: ajouter un lookup à l'exécution, ça fonctionne, mais je ne peux plus ajouter de nouvel enregistrement avec le DBNavigator: je n'ai plus le même nombre de colonnes entre la Table et le DBGrid.
J'ai pensé à une jointure, affichée dans le DBGrid, mais lorque je clique sur la DBGrid, mes champs de données ne sont plus remplis automatiquement.
Autrement dit, comme faire en sorte d'avoir à la fois le 't_type' affiché (et non le t_id) dans la DBGrid, toutes les données remontées dans les champs de saisie/modif, y compris un dblookupcombobox (pour la liste des type de frais) lorsque je clique sur la DBGrid, et le DBNavigator qui fonctionne pour la modif/ajout/suppr des enregistrements ?
A moins que j'ai suivi une mauvaise route ?
Merci de m'apporter vos lumières expérimentées, car là, je patine depuis plusieurs jours pour comprendre la cohérence de tout ce petit monde !
Merci !
Partager