DB2 Everyplace Sync Server - Aide


Filtrage des données de l'abonnement

Lorsque vous créez un abonnement à une table particulière (la table PATIENTS pour notre groupe d'infirmières libérales, par exemple), vous pouvez, pour une question de performances, être amené à ne répliquer qu'un sous-ensemble des données de la table. Vous définissez ce sous-ensemble en choisissant individuellement dans chacune des tables de l'abonnement les lignes ou colonnes qui feront l'objet d'une réplication.

Par exemple, vous pouvez très bien décider que les seules colonnes concernant les infirmières libérales dans la table PATIENTS sont les zones NOM_PATIENT, ADRESSE, TELEPHONE et MEDECIN. Vous déciderez donc de filtrer les données en définissant une clause WHERE filtrant les données à l'intention des infirmières travaillant pour un médecin donné.

Vous pouvez combiner les filtres de données de l'abonnement avec des filtres définis pour le groupe ou pour des utilisateurs pris individuellement et ainsi affiner davantage les données obtenues.

Ces étapes font partie des tâches de création ou d'édition d'un abonnement JDBC. Une fois que vous en avez fini avec le filtrage des données, revenez à la tâche principale.


Figure dsyh016 not displayed.

Pour filtrer les données qui seront répliquées lors de la synchronisation :

  1. Dans la fenêtre Définition de l'abonnement de réplication, cliquez sur Avancé. Le bloc-notes Définition avancée d'une réplication.

  2. Facultatif : Sélectionnez les colonnes à utiliser dans l'abonnement.

    1. Allez à la page Colonnes cibles du bloc-notes Définition avancée d'une réplication.

    2. Sélectionnez les colonnes à créer sur l'appareil mobile en cochant la case Abonnement. Les colonnes non sélectionnées ne seront pas créées sur l'appareil mobile.

    3. Sélectionnez les colonnes à copier dans la base de données miroir en cochant la case Doublon. Vous pouvez avoir besoin de dupliquer une colonne dans la base de données miroir, sans toutefois souhaiter la créer sur l'appareil portatif. Par exemple, si une colonne qui n'accepte pas les valeurs indéfinies et pour laquelle aucune valeur par défaut n'est indiquée existe sur le serveur et si vous ne la créez pas sur l'appareil mobile, vous devez la dupliquer dans la base de données miroir et fournir une valeur par défaut en utilisant le filtre de données avec valeur par défaut. Sync Server dupliquera toutes les lignes créées par l'appareil mobile sur la source en utilisant la valeur par défaut spécifiée dans le filtre de données avec valeur par défaut pour remplir le contenu de la colonne source n'acceptant pas les valeurs indéfinies qui n'a pas de valeur par défaut sur le serveur.

    4. Cliquez sur Modifier pour modifier le nom d'une colonne cible, le filtre de données avec valeur par défaut ou la contrainte.

    5. Cliquez sur Fermer pour fermer la fenêtre de création d'index.

  3. Facultatif : Définissez des index pour la table cible.

    1. Allez à la page Index du bloc-notes Définition avancée d'une réplication.

    2. Cliquez sur Ajouter pour ouvrir la fenêtre de création d'index. Cette fenêtre s'affiche.

    3. Tapez le nom de l'index dans la zone Nom.

    4. Sélectionnez les colonnes que vous souhaitez inclure dans l'index en utilisant les boutons>, >>, < et <<.

    5. Classez l'index en utilisant les boutons Haut et Bas.

    6. Sélectionnez Croissant ou Décroissant.

    7. Cliquez sur Ajouter pour ajouter l'index.

    8. Cliquez sur Fermer pour fermer la fenêtre de création d'index.

  4. Facultatif : Définissez une clause WHERE qui sélectionne individuellement les lignes à inclure dans l'abonnement. Vous pouvez très bien décider que certaines lignes feront partie de l'abonnement même si vous avez choisi de faire figurer toutes les colonnes dans la réplique.

    1. Allez à la page Lignes du bloc-notes Définition avancée d'une réplication.

    2. Dans la zone Toutes les lignes, entrez une clause WHERE qui définit le sous-ensemble de lignes que vous voulez faire figurer dans l'abonnement. Supposons par exemple que vous vouliez que les infirmières libérales ne voient que les lignes de la table PATIENTS où la valeur de la colonne TYPEACTIVITE est INFLIB. Vous entrez cette clause WHERE :
      WHERE TYPEACTIVITE='INFLIB'
      

    3. Facultatif : Dans la zone Sous-ensemble de lignes pour des utilisateurs déterminés, entrez une clause WHERE pour des utilisateurs pris individuellement, laquelle clause remplacera la clause WHERE de l'abonnement. Supposons, par exemple, que vous souhaitiez que des utilisateurs voient les données relatives à leur propre code d'activité. Plutôt que de figer dans le code la valeur du paramètre CODEACTIVITE pour l'ensemble de l'abonnement, vous définirez une variable qui se référera à la valeur du filtre de données défini pour chaque utilisateur pris individuellement :

      WHERE CODEACTIVITE=':ACTIVITE'
      

      Vous pourrez ultérieurement aller à la page Filtrage des données du bloc-notes Edition d'un utilisateur et donner au paramètre ACTIVITE la valeur du code d'activité de chacun des utilisateurs. Pour plus d'informations sur le filtrage des données pour des utilisateurs pris individuellement, reportez-vous à la section Filtrage des données disponibles pour l'utilisateur.

  5. Cliquez sur OK pour revenir à la fenêtre Définition d'un abonnement de réplication.

[Retour à la tâche de création d'un abonnement JDBC ou d'édition d'un abonnement JDBC]


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]