Difference between revisions of "TDataSource/fr"
From Free Pascal wiki
Jump to navigationJump to searchm |
m (Fixed syntax highlighting) |
||
(4 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{TDataSource}} | {{TDataSource}} | ||
+ | {{Infobox databases/fr}} | ||
+ | |||
+ | '''TDataSource''' [[image:tdatasource.png]] est un composant qui : | ||
− | |||
* sert d'intermédiaire entre un descendant de [[TDataSet/fr|TDataSet]] qui représente le contenu d'une base de données et les contrôles de données comme un [[TDBGrid/fr|TDBGrid]]. | * sert d'intermédiaire entre un descendant de [[TDataSet/fr|TDataSet]] qui représente le contenu d'une base de données et les contrôles de données comme un [[TDBGrid/fr|TDBGrid]]. | ||
* permet de créer une relation maître/détail entre deux descendants de [[TDataSet/fr|TDataSet]]. | * permet de créer une relation maître/détail entre deux descendants de [[TDataSet/fr|TDataSet]]. | ||
Typiquement, un TDataSource expose une propriété 'DataSet' pour se connecter à un [[TSQLQuery/fr|TSQLQuery]] ou un autre descendant [[TDataSet/fr|TDataSet]]. Le TDatasource devrait se connecter à la propriété 'DataSource' exposée dans les composants sensibles aux données tel le [[TDBGrid/fr|TDBGrid]]. | Typiquement, un TDataSource expose une propriété 'DataSet' pour se connecter à un [[TSQLQuery/fr|TSQLQuery]] ou un autre descendant [[TDataSet/fr|TDataSet]]. Le TDatasource devrait se connecter à la propriété 'DataSource' exposée dans les composants sensibles aux données tel le [[TDBGrid/fr|TDBGrid]]. | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
SQLTransaction1.Database := SQLConnection1; | SQLTransaction1.Database := SQLConnection1; | ||
SQLQuery1.Transaction := SQLTransaction1; | SQLQuery1.Transaction := SQLTransaction1; | ||
Line 13: | Line 16: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Le TDataSource permet de créer une relation maître/détail, en reliant le TDataSource au descendant de DataSet représentant les données de détails. | + | Le TDataSource permet de créer une [[Master/Detail/fr|relation maître/détail]], en reliant le TDataSource au descendant de DataSet représentant les données de détails. |
+ | En conséquence, il vaut mieux éviter d'employer la méthode DisableControls du TDataSet maître sous peine de perdre le filtrage automatique dans le TDataSet détail. | ||
− | + | {{Note|Astuce d'[[User:E-ric|E-ric]] : ne pas mélanger les rôles et définir un TDataSource pour la relation maître/détail et d'autres pour l'association avec des contrôles sensibles aux données, la désactivation devra se faire cas par cas sans passer par DisableControls.}} | |
− | + | == Voir aussi == | |
− | |||
* [[doc:fcl/db/tdatasource.html|Doc. TDataSource]] | * [[doc:fcl/db/tdatasource.html|Doc. TDataSource]] | ||
* [[TSQLTransaction/fr|TSQLTransaction]] | * [[TSQLTransaction/fr|TSQLTransaction]] |
Latest revision as of 05:25, 29 February 2020
│
English (en) │
français (fr) │
日本語 (ja) │
русский (ru) │
TDataSource est un composant qui :
- sert d'intermédiaire entre un descendant de TDataSet qui représente le contenu d'une base de données et les contrôles de données comme un TDBGrid.
- permet de créer une relation maître/détail entre deux descendants de TDataSet.
Typiquement, un TDataSource expose une propriété 'DataSet' pour se connecter à un TSQLQuery ou un autre descendant TDataSet. Le TDatasource devrait se connecter à la propriété 'DataSource' exposée dans les composants sensibles aux données tel le TDBGrid.
SQLTransaction1.Database := SQLConnection1;
SQLQuery1.Transaction := SQLTransaction1;
DataSource1.DataSet := SQLQuery1;
DBGrid1.DataSource := DataSource1;
Le TDataSource permet de créer une relation maître/détail, en reliant le TDataSource au descendant de DataSet représentant les données de détails. En conséquence, il vaut mieux éviter d'employer la méthode DisableControls du TDataSet maître sous peine de perdre le filtrage automatique dans le TDataSet détail.
Remarque: Astuce d'E-ric : ne pas mélanger les rôles et définir un TDataSource pour la relation maître/détail et d'autres pour l'association avec des contrôles sensibles aux données, la désactivation devra se faire cas par cas sans passer par DisableControls.
Voir aussi