Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

n:1 Beziehung, aber wie bekomme ich das Combi gebunden?

Begonnen von derilzemer, Dezember 31, 2016, 01:07:51

⏪ vorheriges - nächstes ⏩

MzKlMu

Hallo,
bitte bedenke, dass ich immer noch von der Materie keine Ahnung habe und daher mehrfach nachfragen muss, ich muss es ja verstenden haben, wenn ich Dir was raten soll.
Aber jetzt habe ich es glaube ich verstanden.
Zu einem Spiel kann es mehrere Variantenarten geben und zu einer dieser Art wiederum einen der Buchstaben A - H (Variante), ist diese Annahme richtig ?

Gruß Klaus

derilzemer

Hallo Klaus,
kein Problem, das ist selbst mir manchmal erst beim 2 oder 3 mal hinschauen erst so richtig bewusst, wie sich das verhält. :(.
Ja, das ist meines Erachtens korrekt verstanden. Ein Spiel, kann unter Umständen mehrere Varianten haben, welche dann durch die Varianten Art spezifiziert werden können (Fehldruck, Deckblatt, Rückseite etc.). Die Varianten selbst unterscheidet man dann meiner Meinung nach am besten durch A,B,C etc.
Ich frage mich gerade, ob ich nicht gleich das ganze so anlegen muss/sollte, wie du mich beim Thema Identische Kartensätze angeleitet hast http://www.access-o-mania.de/forum/index.php?topic=21968.0. Da könnte ich dann praktisch mit einem Endlosformular auch die anderen Varianten gleich mit aufführen. Ich stelle die Frage deshalb, weil mir der Gedanke vorhin beim spazieren gehen mit dem Hund in den Kopf geschossen kam und diese Variante ja noch einmal deutlich komplexer wäre, oder?
Gruß Andreas
Grüße und Dank im voraus
Andreas

MzKlMu

#17
Hallo,
dann müssen wir umbauen. Es wird noch eine Tabelle benötigt für die Verknüpfung der Variantenart mit der Variante (z.B. "tblVariArtVari") mit folgenden Feldern:
VariArtVariID (PS)
SpielID_F
VariantenArtID_F
VarianteID_F

Wie zu verknüpfen ist, ergibt sich durch die _F.
Das Ufo erhält diese neue Tabelle als Datenquelle und je ein Kombi zur Auswahl von Variantenart und Variante (über die Fremdschlüssel). Ufo über die SpieleId verknüpfen. Am Formularaufbau selbst musst Du nichts ändern.
Zeige bitte noch mal ein Beziehungsbild wenn Du das gemacht hast, nur um sicher zu gehen.  :D
Für mich stellt sich aber die Frage, brauchst Du diese Buchstaben überhaupt ?
Durch die Art hast Du doch eine klare Unterscheidung, wozu dann noch ein Buchstabe?

Nebenbei:
Zitatbeim spazieren gehen mit dem Hund
Was hast Du denn für einen Hund ?
Ich habe zwar keinen, bin aber großer Hundefreund, bzw. die ganze Familie. Meine Tochter engagiert sich schon mehrere Jahre im Wormser Tierheim jedes Wochenende mehrere Stunden zum Gassi gehen mit den dortigen Hunden, bei Wind und Wetter. Ihr zolle ich da großen Respekt.
Gruß Klaus

derilzemer

Hi,
dann lass mich mal kurz zusammenfassen. Anschließend haben wir 3 Tabellen.
tblVariante --> VarianteID (PS), VariantenArtID_F, SpielID_F, Variante
tblVariante --> VariantenArtID (PS), VariantenArt
tblVariArtVari --> VariArtVariID (PS), SpielID_F, VariantenArtID_F, VariantenID_F

Beziehungen würden dann so aussehen wie in Bild1. Ich will es einfach mit Buchstaben versehen, weil es in der Sammlergemeinde einfach Usus ist :). Man redet diesbezüglich praktisch in Buchstaben :). Mit dem vollständigen umsetzen warte ich jetzt erst mal, ob die Basis so i.O. ist.
Wir haben einen Malteser Bichon Frise, 12 Jahre alt. Ja, wenn jemand sich so für Lebewesen engagiert, dann fordert es einem tiefen Respekt ab.

Gruß und danke vorab
Andreas

Grüße und Dank im voraus
Andreas

MzKlMu

Hallo,
das hast Du zu kompliziert gemacht. Siehe Bild.
Bitte ändere und zeige es noch mal.
Gruß Klaus

derilzemer

Hi,
ich hatte im Beitrag vorher schon geschrieben, dass mir diese beiden suspekt vorkommen, eben weil doppelt gemoppelt, habe das aber wieder aus Unsicherheit gelöscht :(. Hab es angepasst, schaus dir an in Bild1.

Gruß Andreas
Grüße und Dank im voraus
Andreas

MzKlMu

Hallo,
ja, so sollte das passen. Musst jetzt nur das Ufo anpassen, das enthält ja nur die 3 Schlüsselfelder. SpielID_F für die Ufo Verknüpfung und die anderen beiden für die Kombis.
Gruß Klaus

derilzemer

#22
Hi,
jo irgendwie habe ich leider noch einen Fehler. Schau dir mal bitte die 5 Bilder an, welche ich angehängt habe.
Zu Bild2 wirst du sicher fragen, was hinter der qrySpielIDSpielNrVari steckt. Hier der SQL Code dazu
SELECT tblSpiele.SpielID, tblSpiele.SpielNr, tblSpiele.Ausgabejahr
FROM tblSpiele;

Das wollte ich ja genauso haben wie es im frmErfassungUfoIdentQuartette ist. Beispiel:
Spiel-ID 495, welches korrekt ist, ist die Variante A --> Variantenart STD-Ausgabe. Dann will ich ja gleich die Variante mit angeben, also Spiel-ID 496, Variante B --> Variantenart Deckblatt. So war der Plan.
Wenn ich jetzt die Spiel-ID auswähle, dann macht er das erst mal noch, aber sobald ich dann die Variante wähle, z.B. A, dann springt die ID wieder auf 1 zurück. Muss ich da wieder mit einer Kopie der tblSpiele arbeiten, siehe Bild6?

Gruß Andreas


Grüße und Dank im voraus
Andreas

MzKlMu

Hallo,
Du denkst zu kompliziert. Das Kombi für das Spiel ist ersatzlos überflüssig. Die SpielID_F wird über die Verknüpfung Hafo/Ufo automatisch gefüllt, mit der ID des im Hafo angezeigten Spiels. Die Verknüpfung hast Du ja angelegt. Also Kombi löschen. Die beiden anderen Kombis sind richtig. Die in Bild6 rot eingetragen Beziehung ist nicht notwendig. Ich hatte das schon mal so geschrieben:
ZitatDas Ufo erhält diese neue Tabelle als Datenquelle und je ein Kombi zur Auswahl von Variantenart und Variante (über die Fremdschlüssel). Ufo über die SpieleId verknüpfen.
Also nur 2 Kombis.

Noch was zu Gestaltung. Den Löschbutton zum Löschen einer Variante würde ich so nicht machen. Du musst ja aufpassen, dass der zu löschende Datensatz den Fokus hat, sonst löschst Du einen falschen Datensatz. Ich würde in den Detailbereich einen kleinen Button (mit einem roten X) anlegen, der sich dann für jeden Datensatz wiederholt. So bist Du sicher, dass der richtige DS gelöscht wird. Und den Platz für den Fuß des Ufos hast Du auch gespart und kannst so auch 2-3 Varianten direkt anzeigen.
Gruß Klaus

derilzemer

Moin,
ich denke mal was das komplizierte denken angeht, das ist unheilbar :-[.
Ich dachte eben, dass ich jetzt im Datensatz ID 495 (um beim Beispiel zu bleiben), auch gleich hinterlegen kann, welche ID in der Datenbank die Variante B oder C hat! Dazu hätte ich ja dann die Beziehung mit der zur zusätzlichen tblSpiele benötigt. Das kann ich so ja nicht, was kein Problem ist, aber das war eben der Hintergedanke bei dem zusätzlichen ID Feld. 
Ich hab umgebaut, also die unnötige Beziehung gelöscht, das ID-Kombi gelöscht, den delete Button in den Detailbereich verlegt und somit auch den Formularfuß ausblenden können. Das passt jetzt wenn ich eine Variante anlege (Bild1). Ich kann natürlich auch jetzt Variante B, C etc. da anlegen, man sieht dass es Varianten gibt, aber ich weiss eben nicht welche ID die Variante in der DB hat und muss somit suchen. Du verstehst was ich meine?

Gruß Andreas
Grüße und Dank im voraus
Andreas

MzKlMu

Hallo,
beschreibe das bitte noch mal und verwende mal die vollständigen Namen für die IDs, auch bei den Fremdschlüsseln, ich bin da ganz durcheinander.  :D
Gruß Klaus

derilzemer

Hi,
ne du bist nicht durcheinander, das ist eben wie wir gestern gesagt haben meist doch komplexer wie man meint.
Nehmen wir doch mal an, ich habe 1 Spiel, das ich in 3 Ausführungen habe. Die Standard Ausgabe ohne Fehler, dann gibt es eine mit anderer Rückseite und eine, welche falsche Spieldaten hat. Wenn sie vor dir liegen würden, wären sie auf den ersten Blick identisch! Jetzt wollte ich folgendes erreichen. Ich bin in DS-ID 495 (der Standard Ausgabe ohne Fehler), definiere da im UFO Variante A --> Variantenart STD-Ausgabe (STD ist normierter Ausdruck für Standard :P). Dann kann ich  im UFO auch Variante B (DS-ID 817) --> Variantenart Rückseite und Variante C (DS-ID 953) --> Variantenart Spielkarte(n) mit angeben. Wenn ich das so mache, denkt man, dass dieses Spiel 3 Varianten hat, aber wo und welche ist die Variante im aktuellen DS-ID 495, oder DS-ID 817 oder DS-ID 953? Dazu müsste ichjetzt wieder das Info Freitextfeld bemühen und mit Hinweisen das ganze aufklären. Variante B und C auch im DS-ID 495 anzulegen macht nur dann Sinn, wenn man auch die ID des Varianten-Spieles in der DB mitgeben kann bzw. sieht (darauf verlinken was auch immer). Das war der große ganze Plan :). Ich hoffe, es war ein wenig klarer was ich meine.

Gruß Andreas
Grüße und Dank im voraus
Andreas

Beaker s.a.

Hallo Andreas,
ZitatWenn ich das so mache, denkt man, dass dieses Spiel 3 Varianten hat,
Ist doch auch so gewollt, oder haben wir da noch was völlig falsch verstanden?

Zitataber wo und welche ist die Variante im aktuellen DS-ID 495, oder DS-ID 817 oder DS-ID 953?
Die brauchst du doch gar nicht mehr, ein(e) Spiel/-variante wird doch jetzt durch
den PK (VariArtVariID) der Tabelle "tblVariArtVari" eindeutig bestimmt.
Wenn du jede Variante als einzelnes Spiel (DS) anlegen willst, würde da dann ja auch
ein FK zur Tabelle "Varianten" ausreichen. Die zusammen gehörigen Varianten
müssten dann über eine n:m-Beziehung der tblSpiele mit sich selbst dar zu stellen sein.

@Klaus
Bitte korrigiere mich, falls ich Andreas' letzten Post falsch interpretiere.

gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

MzKlMu

Hallo,
ZitatBitte korrigiere mich, falls ich Andreas' letzten Post falsch interpretiere.
ich habe es ja immer noch nicht so recht verstanden.

@Andreas
Wenn Du von ID spricht (DS-ID 495, oder DS-ID 817 oder DS-ID 953?) ist das die SpielID ?
Wenn ja, habe ich wie gesagt immer noch Verständnisprobleme.
Ein Spiel hat Variantenarten die wiederum in Buchstaben eingeteilt werden, das ist doch richtig oder ?
Sind diese Varianten auch als eigenständiges Spiel erfasst ?
Gruß Klaus

Beaker s.a.

Hallo Klaus,
ZitatSind diese Varianten auch als eigenständiges Spiel erfasst ?
Auf dieser Annahme beruht meine Antwort.
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)