Connexion à un serveur d'applications qui utilise plusieurs modules de données
Remonter à Création de l'application client
Si le serveur d'applications basé sur COM utilise un module de données distant "parent" principal et plusieurs modules de données distants enfant, comme décrit dans Utilisation de plusieurs modules de données distants, vous devez disposer d'un composant connexion séparé pour chaque module de données distant sur le serveur d'applications. Chaque composant connexion représente la connexion à un module de données distant unique.
Bien qu'il soit possible pour votre application client d'établir des connexions indépendantes à chaque module de données distant sur le serveur d'applications, il est plus efficace d'utiliser une connexion unique au serveur d'applications qui soit partagée par tous les composants connexion. Pour ce faire, vous ajoutez un composant connexion unique qui se connecte au module de données distant "principal" sur le serveur d'applications puis, pour chaque module de données distant "enfant", vous ajoutez un composant qui partage la connexion au module de données distant principal.
Pour utiliser une connexion partagée unique
- Pour la connexion au module de données distant principal, ajoutez et configurez un composant connexion tel que décrit dans Connexion au serveur d'applications. La seule limite est que vous ne pouvez pas utiliser une connexion CORBA ou SOAP.
- Pour chaque module de données distant enfant, utilisez un composant Datasnap.Win.MConnect.TSharedConnection.
- Affectez à sa propriété ParentConnection le composant connexion ajouté à l'étape 1. Le composant TSharedConnection partage la connexion établie par cette connexion principale.
- Affectez à sa propriété ChildName le nom de la propriété sur l'interface du module de données distant principal qui expose l'interface du module de données distant enfant désiré.
Lorsque vous affectez le composant TSharedConnection placé à l'étape 2 comme valeur de la propriété RemoteServer d'un ensemble de données client, il fonctionne comme si vous utilisiez une connexion entièrement indépendante au module de données distant enfant. Toutefois, le composant TSharedConnection utilise la connexion établie par le composant placé à l'étape 1.