Erstellen eines Filters für replizierte Daten

Diese Task ist Teil der größeren Task zum Erstellen einer DataPropagator-Subskription. Wenn Sie diese Schritte ausgeführt haben, kehren Sie zu DataPropagator-Subskription erstellen zurück.

Vorgehensweise

  1. Wählen Sie im Fenster Replikationssubskription definieren die Tabelle aus, für die Sie Spalten- oder Zeilenfilterung definieren möchten.
  2. Klicken Sie auf Erweitert. Das Notizbuch Erweiterte Subskription wird geöffnet.
  3. Optional: Definieren Sie eine WHERE-Klausel, die einzelne Zeilen auswählt, die in die Subskription aufgenommen werden sollen. Selbst wenn alle Spalten im Replikat angezeigt werden, wollen Sie möglicherweise, dass nur bestimmte Zeilen Teil der Subskription sind.
    1. Rufen Sie die Seite Zeilen des Fensters Erweiterte Subskription auf.
    2. Geben Sie in das Feld Alle erforderlichen Zeilen eine WHERE-Klausel ein, die die Zeilenauswahl definiert, die in der Subskription angezeigt werden sollen. Sie können nur die Tabelle auswählen, die Sie in Schritt 1 ausgewählt haben.

      Beispiel: Die mobilen Pflegekräfte sollen nur die Datenzeilen der Tabelle PATIENTEN anzeigen können, in denen die Spalte JOBCODE den Wert MPFLEGE enthält. Hierzu ist folgende WHERE-Klausel einzugeben:

      JOBCODE='MPFLEGE'
      

      Das Schlüsselwort "WHERE" darf nicht am Anfang einer Klausel verwendet werden.

      Klicken Sie auf Beispiele, um Beispiele für WHERE-Klauseln anzuzeigen.

    3. Geben Sie in das Feld Zeilenuntermenge für einzelne Benutzer eine Klausel ähnlich der SQL-Klausel WHERE ein, die die für den einzelnen Benutzer sichtbaren Zeilen einschränkt. Stellen Sie sicher, dass Sie am Anfang der Klausel nicht "WHERE" eingeben. Sie können einen Parameter verwenden, dessen Wert für die unterschiedlichen Benutzer variiert. Genauere Informationen zur Definition von Filtern auf Gruppen- oder Benutzerebene finden Sie in Filtern von Daten auf Subskriptionsebene.

      Beispiel: Benutzer sollen nur Daten sehen dürfen, die zu ihren eigenen Jobcodes in Beziehung stehen. Statt für den Parameter JOBCODE einen fest codierten Wert für die gesamte Subskription einzugeben, definieren Sie eine Variable, die auf den Datenfilterwert verweist, der für jeden einzelnen Benutzer definiert wurde:

      JOBCODE=':JOB'
      

      In den Datenfiltern für einzelne Benutzer können Sie dann den :JOB-Parameter auf den Jobcode jedes Benutzers setzen. Weitere Informationen zum Filtern von Daten für einzelne Benutzer finden Sie in Filtern der für den Benutzer verfügbaren Daten und Filtern von Daten auf Subskriptionsebene.

    4. Klicken Sie auf OK, um das Fenster Erweiterte Subskription zu schließen.
Anmerkung:
Eine Reihe von Änderungen, die zwischen Synchronisationen an einer einzelnen Zeile in einer DB2 Everyplace-Tabelle auf dem Gerät des Benutzers vorgenommen wurden, werden als eine einzelne kumulative Änderung an Sync Server übertragen. Daher wird eine DELETE-Operation gefolgt von einer INSERT-Operation für denselben Primärschlüssel als UPDATE-Operation an Sync Server übertragen, wenn die Operationen ohne dazwischen liegende Synchronisationen stattgefunden haben. Wenn sie mit einer dazwischen liegenden Synchronisation stattfinden, werden sie getrennt übertragen. Das kann zu einer Inkonsistenz führen, wenn die Subskription nicht alle Spalten zwischen der Quellentabelle und der Benutzertabelle überträgt, weil eine UPDATE-Operation die aktuellen Werte in der(den) nicht-subskribierten Spalte(n) beibehält, während eine INSERT-Operation die nicht-subskribierten Spalten auf Standardwerte festlegt.

Zugehörige Konzepte

Zugehörige Tasks