Announcement

Collapse
No announcement yet.

Master/Detail-Verknüpfung bei TClientDataSet

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Master/Detail-Verknüpfung bei TClientDataSet

    Hallo,

    ich verwende 2 TClientDataSet-Tabellen, welche als Master und Detail verknüpft sind.

    Wenn die Verknüpfung aktiv ist, werden in der Detailtabelle keinerlei Daten angezeigt.

    Entferne ich die Verknüpfung zwischen den Tabellen, wird die Detailtabelle korrekt angezeigt. Diese enthält dann natürlich alle Datensätze und reagiert (natürlich) nicht auf einen Satzwechsel in der Mastertabelle.

    Wie kann ich Delphi 5 Enterprise unter Windows-2000 Prof. dazu bringen eine Master/Detail-Verbindung zu akzeptieren und jeweils nur die Detaildatensätze des gerade gewählten Mastersatzes anzuzeigen ?

    Der Mastersatz hat eine eindeutige ID (Integer). Der Detailsatz hat ein Verweisfeld (Rückreferenz) auf diese ID. Diese Felder werden verknüpft.

    Vielen Dank für Tipps.

    gruss
    Helmut

  • #2
    Hallo,

    bei den ClientDataSets sind für diese starre Kopplung die so genannten <i>Nested Datasets</i> zuständig. Das TClientDataSet für die separate Darstellung der Detail-Datenmenge wird dazu im Objektinspektor über die Eigenschaft <b>DataSetField</b> mit dem Master-TClientDataSet verbunden. Aber nur das Master-TClientDataSet speichert die Daten

    Comment


    • #3
      Vielen Dank für die Antwort!

      Ich habe schon einmal 2 separate Client-DataSets (ganz ohne Nested Datasets) nur über die Felder Mastersource/Masterfields verknüpft.

      Dies funktioniert auch.
      In der Detaildatenmenge werden nur zum Hauptsatz passende Detaildatensätze angezeigt. Diese wird automatisch aktualisiert wenn der Masterdatensatz gewechselt wird.

      Ich versuche eine ähnliche Anordnung in einem anderen Datenmodul noch einmal zu verwenden.
      Ich habe penibel auf alle Abweichungen (was ist anders ?) geachtet.
      Die beiden ClientDataSets sind bis auf die Feldbezeichnungen identisch.
      Ich konnte aber trotzdem nicht erkennen, warum es in einem Fall funktioniert und im anderen Fall nicht.

      Da ich die Detaildatenmenge separat speichern will, möchte ich kein Nested Dataset verwenden und suche noch immer nach einer Lösung über Master/Detail-Verbindung.

      Gruss
      Helmu

      Comment

      Working...
      X