Hallo,
vielleicht eine abgefahrene Frage, aber dennoch werde ich mich mal trauen das zu fragen.
Ist es möglich, sich mit einem Formular 2 Datensätze vergleichend anzuschauen? In meinem Fall finde ich es praktisch, da ich als Sammler auch Dubletten habe und deshalb den Vergleich hin und wieder nutzen muss. Wenn ja, bewerkstelligt man so etwas in Formularen oder macht man das ganz anders z.B. über Berichte, Abfragen etc. Eine Info dazu wäre erst einmal ganz hilfreich.
mfG
Andreas Müller
Hallo Andreas,
du solltest deine Frage vielleicht etwas präziser formulieren.
Was genau willst du vergleichen, welche Datenfelder?
Oder willst du zwei komplette Datensätze miteinander vergleichen?
Bspw. indem du sie untereinander in einem Formular auflistest?
Und wie willst du die zu vergleichenden Datensätze auswählen?
Ich könnte mir ein Formular mit zwei Kombifeldern vorstellen, mit denen die zu vergleichenden Datensätze ausgewählt werden.
Mit Hilfe einer Abfrage werden die beiden Datensätze dann in einem Endlos-Unterformular angezeigt.
Oder wie hast du dir das gedacht?
Duplikate findet man über eine Abfrage, zu deren Erzeugung gibt es auch einen Assistenten.
Das Abfrageergebnis kann man wie gewohnt in einem Formular oder Bericht darstellen.
Hi,
Zitat von: MaggieMay am April 17, 2016, 23:14:23
Was genau willst du vergleichen, welche Datenfelder? Oder willst du zwei komplette Datensätze miteinander vergleichen?
Bspw. indem du sie untereinander in einem Formular auflistest?
Das war meine Vorstellung, dass ich in einem Formular wie ich es aktuell zum Datenerfassen nutze die Daten gegenüberstelle. Dabei reichen die Datenfelder der Erfassung, also nur die reinen Spieldaten, nicht die Zusatzdaten wie Quartette, Einzelkarten. Einzig vielleicht noch die Bildquellen.
ZitatUnd wie willst du die zu vergleichenden Datensätze auswählen?
Ich könnte mir ein Formular mit zwei Kombifeldern vorstellen, mit denen die zu vergleichenden Datensätze ausgewählt werden. Mit Hilfe einer Abfrage werden die beiden Datensätze dann in einem Endlos-Unterformular angezeigt.
Oder wie hast du dir das gedacht?
Das weiß ich natürlich mal wieder nicht. Über das Suchformular sind mir die IDs bzw. die Spielnummer der Datensätze bekannt. So könnte ich z.B. die ID für den Aufruf des Datensatzes nutzen. Deine Vorstellung eines Kombifeldes würde wiederum zur Spielnummer passen, oder?
mfG
A. Müller
Hallo,
Wie wär's mit zwei UFo nebeneinander auf einem ungebundenen HFo?
Jeweils mit der gleichen DS-Quelle und einem Kombi zur Auswahl.
gruss ekkehard
Hi Andreas,
die Frage ist, ob du gezielt zwei dir bekannte Spiele zum Vergleich auswählen oder erst nach Duplikaten suchen (-> Duplikatsabfrage) und diese dann ansehen willst.
Wie könnte diese Duplikatssuche denn aussehen, um welche Datenfelder geht es dabei?
Hi,
Zitat von: MaggieMay am April 18, 2016, 14:03:36
die Frage ist, ob du gezielt zwei dir bekannte Spiele zum Vergleich auswählen oder erst nach Duplikaten suchen (-> Duplikatsabfrage) und diese dann ansehen willst.
Wie könnte diese Duplikatssuche denn aussehen, um welche Datenfelder geht es dabei?
Heute leider etwas später mit der Antwort, bin gerade erst von einem Change aus der Firma gekommen.
In der Regel kenne ich die Duplikate ja, sprich ich habe die Spielnummern. Extrembeispiel 242 von Ravensburger, da würde ich über die Suche 8 Datensätze angezeigt bekommen. 5 Davon sind wirklich Duplikate, welche sich nur durch Schachtel etc. unterscheiden. Da hätte ich dann die IDs oder die Spielnummer. Nun würde ich eben IDs von 2 Spiele nehmen und
vergleichen wollen. Bei den Datenfeldern und Bildressourcen geht es eben nur um diese wie sie im Bild zu sehen sind.
Gruß Andreas
Hi Ekkehard,
Zitat von: Beaker s.a. am April 18, 2016, 12:02:23
Wie wär's mit zwei UFo nebeneinander auf einem ungebundenen HFo?
Jeweils mit der gleichen DS-Quelle und einem Kombi zur Auswahl.
Da sind wir auch angekommen und diskutieren. Es dreht sich wohl nur darum ob eben Ufo im HF mit Kombis oder andere sinnige Lösungen. Danke aber für die Anregung.
Gruß Andreas
Hi Andreas,
ich erkenne aus deinen letzten Beiträgen noch keine "Strategie".
Sag wie du es gerne hättest und wir finden eine Lösung.
BTW:
Was genau sind für dich "Duplikate"? Wurde ein Spiel versehentlich mehrfach erfasst oder wurde es mehrmals gekauft und ist somit tatsächlich mehrfach vorhanden?
Hi,
Zitat von: MaggieMay am April 19, 2016, 01:25:07
ich erkenne aus deinen letzten Beiträgen noch keine "Strategie". Sag wie du es gerne hättest und wir finden eine Lösung.
BTW:
Was genau sind für dich "Duplikate"? Wurde ein Spiel versehentlich mehrfach erfasst oder wurde es mehrmals gekauft und ist somit tatsächlich mehrfach vorhanden?
Hmmm du kannst die Strategie nicht erkennen. Ich weiss gar nicht, worauf du genau mit Strategie hinaus willst :-[.
Zum Thema was ein Duplikat oder eine Dublette/Variante ist kann ich eher was klärend beitragen.
Es gibt einfach Spiele mit der gleichen Nummer (z.B. 242 von Ravensburger), worin bei 5 Spielen die Spielkarten selbst bis auf jeden Punkt und Komma komplett identisch sind. Sie unterscheiden sich dann durch die zugehörige Schachtel und deren Layout (Deckelbildfarbe) oder aber dem Schriftlayout der Karten selbst, oder aber die Spielkarten haben z.B. eine andere Farbe was die Kartenrückseite angeht. Ebenso sind Fehldrucke mögliche. Es ist richtig, dass ich statt Dublette oder Duplikat das ganze wohl mit Varianten bezeichnen muss, dann ist das wohl grammatikalisch gesehen korrekt. Die Datenfelder und Bildressource welche ich in Antwort #6 als Bild angehängt würden mir den Unterschied dieser Varianten als Vergleich wiedergeben. Ich hoffe das hat es jetzt verständlicher gemacht. Mit Strategie musst du mich ein wenig abholen, da sich aus meiner Sicht dahinter keine große Strategie verbirgt, sondern lediglich der Bedarf. Aber das kann ich ja falsch sehen.
Gruß Andreas
Hallo Andreas,
mit Strategie meinte ich einen Plan, so wie du dir das vorstellst damit umzugehen, rein aus Benutzersicht.
Es wurden ja bereits Vorschläge gemacht, bspw. die Anzeige zweier "Varianten" in jeweils einem Unterformular. Was meinst du dazu, willst du das so umsetzen? Oder willst du die Datensätze in einem Formular haben, das lediglich nach den beiden Spiele-IDs gefiltert wird? (Da könnten dann u.U. auch mehr als zwei Spiele angezeigt werden.) Oder hast du noch eine ganz andere Idee?
Hallo,
ich lese da jetzt die ganze Zeit schon mit, aber trotz der Beschreibungen vermag ich nicht zu erkennen, wie Du die vermeintlichen Dubletten auswählen willst.
Du stellst Dir z.B. ein Quartett dar, nach welchen Kriterien bestimmst Du jetzt das 2. darzustellende Quartett. Du musst ja eine Wahl treffen welche Datensätze (Quartette) Du vergleichen willst.
Und Du hast ja oben eine Vielzahl von Vergleichsmöglichkeiten genannt.
Aber um das darzustellen bedarf es einer Regel.
Hi,
okay als Darstellung in einer Ansicht in einem "Doppelformular" (nebeneinander oder untereinander wäre da echt egal aus meiner Sicht), wo also 2 Datensätze dargestellt werden könnten. Deswegen habe ich ja auch nur die Datenfelder wie im Bild aus #6 dargestellt als Auswahl getroffen um platz-technisch klar zu kommen. Ob das ganze nun in einem Formular oder in 2 UFOs einfacher ist, da kann ich nun nur auf eure Erfahrungen zählen, was da einfach mehr Sinn macht.
@Klaus
Erst mal geht es um das Spiel, nicht um ein Quartett!. Sorry, aber ihr habt zu mir immer gesagt, das ist ein Unterschied :). Selbstverständlich haben diese Spiel-Varianten Unterschiede. Zur Auswahl würde ich die ID nehmen, die ist eindeutig und würde mir dafür ausreichen, oder siehst du das etwa als problematisch an? Wie in #3 aufgeführt, würde ich ja über das Suchformular und die Spielnummer die erste Eingrenzung treffen, dann habe ich dort für die Suchtreffer die ID der Varianten. Die könnten ich dann in dem Vergleichsformular eingeben.
Gruß Andreas
Hallo Andreas,
vielleicht hilft diese Idee weiter.
Ich habe ein Hfo mit zwei Ufos erstellt (in meinem Beispiel Personal und Personal1) und einem Button 'Vergleich'.
Im On_Click-Event des Buttons habe ich folgenden Code:
Private Sub Vergleich_Click()
Dim i As Integer
For i = 1 To Me.Controls("Personal").Controls.Count - 1 'alle controls der ersten subform absuchen
If Left(Me.Controls("Personal").Controls(i).Name, 3) = "txt" Then 'wenn name mit txt beginnt
If Me.Controls("Personal").Controls(i) <> _
Me.Controls("Personal1").Controls(i) Then 'werte der zwei subforms vergleichen
Me.Controls("Personal1").Controls(i).BackColor = vbRed 'bei unterschied rot...
Else
Me.Controls("Personal1").Controls(i).BackColor = vbGreen '...sonst grün darstellen
End If
End If
Next
End Sub
Ich finde keinen Event, der bei Daten-Änderung meiner beiden Ufos feuert. Vielleicht muss man einen Event (Änderung) im Unterformular selbst "nach oben reichen", um das Prob zu lösen.
Wie gesagt: nur eine Idee...
Hi,
so in die Richtung geht ja auch die Vorstellung von mir. Der Ansatz von dir ist schon gut. Leider kann ich das VBA technisch nicht bewetten da ich da echt nichts kann :(, weswegen ich da auch hier poste und hier wirklich sehr gut unterstützt werde.
Was genau meinst du mit
ZitatIch finde keinen Event, der bei Daten-Änderung meiner beiden Ufos feuert. Vielleicht muss man einen Event (Änderung) im Unterformular selbst "nach oben reichen", um das Prob zu lösen.
Gruß Andreas
@Crystal:
Ich verstehe deine Aussage ebenfalls nicht. Wo genau siehst du da ein Problem - bzw. welches?
Zu Datenänderungen in den Ufos gibt es bspw. die AfterUpdate-Ereignisse. Aber es geht hier ja wohl weniger um die Kenntlichmachung von Änderungen als um die Unterschiede.
Hi Maggie,
noch etwas zur Strategie. Gestern kam mir noch so der Gedanke, dass es ja am "einfachsten" wäre, wenn man in der Suche eine Checkbox integrieren würde. Man startet eine Suche über die Varianten, wenn dann das Suchergebnis da ist, könnte man die Checkboxen von den zu vergleichenden 2 Spielen aktivieren (oder 3? was ist möglich) und diese dann via Commandbutton an das Vergleichsformular übergeben. Es wäre praktisch so ein Ablauf wie im Web, wenn man Produkte in Portalen wie Autoscout etc. vergleichen kann. Was ich nicht abwägen kann, inwieweit das in Access via VBA umsetzbar ist. Ist dieser Gedankengang realistisch?
Gruß und schönen Tag noch
Andreas
Hallo Andreas,
Man könnte meinen Vorschlag mit den zwei UFo dahin gehend abwandeln,
dass man im ersten ein Spiel aussucht, und dann im zweiten die
Variationen anzeigen (soo viele werden das ja wohl nicht sein). Die
kannst Du dann durchblättern. Oder wenn der Platz reicht das UFo
als Endlos-Form darstellen.
gruss ekkehard
Hallo,
Meine Idee war nur eine Idee.
Die Daten der Ufos in meinem Beispiel (oder nur für das zweite) sollen/können im Hfo ausgewählt werden (z.B. Combobox). In meinem Beispiel habe ich einfach ein vorhandenes Formular benutzt. Dem aufmerksamen Betrachter könnte aufgefallen sein, dass beide Ufos eine Navigationsleiste inkl. Suchfeld haben.
Zu den Events: die Ufo-Controls kennen nur die Events Enter und Exit. Statt länger nach geeigneten Events zu suchen, habe ich einfach einen Button 'Vergleich' eingefügt. Zuvor hatte ich den Code in verschiedene Events des 2. Ufos eingebaut, aber nicht das gewünschte Ergebnis erzielt. Deshalb meine Formulierung ...Event nach oben reichen... Das sollte nichts anderes bedeuten, als bei einem geeigneten Event im Ufo eine Funktion des HFos aufzurufen, um Unterschiede kenntlich zu machen.
@maggie:
Deine Bemerkung
Zitat
Zu Datenänderungen in den Ufos gibt es bspw. die AfterUpdate-Ereignisse. Aber es geht hier ja wohl weniger um die Kenntlichmachung von Änderungen als um die Unterschiede.
ist nach meiner Meinung wieder einmal nichtssagend und eigentlich überflüssig.
Es geht hier ja nicht darum, Änderungen in einem Datensatz zu verarbeiten (After Update), sondern darum, zwei Datensätze nebeneinander darzustellen (read only) und deren Unterschiede zu markieren.
Wenn ich Unterschiede zweier Datensätze erkennen will, ist es m.E. hilfreich, diese z.B. farblich zu kennzeichnen.
Da Andreas bereits mitgeteilt hat, dass er sich mit VBA (noch) nicht gut auskennt, habe ich eine kleine Routine gebaut, die die Unterschiede zweier UFos nur anhand der Namen der Steuerelemente kenntlich macht. Ein nächster Schritt wäre es dann, im 2. Ufo selbst einen Kommentar einzugeben, z.B. "Dies ist eine Doublette, allerdings mit anderer Karten-Rückseite" oder was auch immer.
Die Datensätze für beide Ufos könnten durch relativ einfache Kriterien selektiert werden.
Schade, dass du nicht erkannt hast, dass meine Idee nur eine Idee ist und natürlich um Funktionalität erweitert werden müsste, liebe Maggie.
@Andreas:
Du wirst verstehen, dass es hier nicht einfach möglich ist, dir eine komplette Lösung zu präsentieren, zumal niemand deine Datenbasis kennt. Auch ist es schwierig, dir zu helfen, wenn du selbst mitteilst, dass du VBA-Neuling bist, denn ohne VBA zu nutzen wirst du m.E. keine Lösung deines Problems finden.
Deine Idee, die Varianten ähnlich wie in Vergleichsportalen zu selektieren und darzustellen, ist sicher gut, würde aber voraussetzen, sie in deine spezifische Applikation einzubauen, denn eine generelle Lösung kann es m.E. nicht geben.
Ekkehard hat dies sehr richtig beschrieben (übrigens habe ich mit meiner Idee natürlich nur seine Idee aufgegriffen und durch ein Beispiel anschaulich gemacht - oder es zumindest versucht).
Um es auf den Punkt zu bringen; du müsstest deine DB hier hochladen (mit Beispieldaten). Dann könnte dir ein erfahrener Access-Nutzer oder eine erfahrenene Access-Nutzerin eine Lösung bauen. Dies würde allerdings einiges an Zeit bedeuten und ich bin mir nicht sicher, ob jede/r an diesem Thread Beteiligte/r dazu bereit wäre. Ich persönlich wäre dazu bereit, natürlich kostenlos und auf Basis der Gedanken von Ekkehard und meiner Wenigkeit und in Kooperation mit dir.
In diesem Sinne herzliche Grüße und meinen speziellen Dank an alle, die hier keinen Kommentar zum Thema Datenmodell und Normalisierung abgegeben haben.
@crystal:
zu deinen Äußerungen:
Zitat von: crystal am April 20, 2016, 20:33:44@maggie:
Deine Bemerkung
Zitat
Zu Datenänderungen in den Ufos gibt es bspw. die AfterUpdate-Ereignisse. Aber es geht hier ja wohl weniger um die Kenntlichmachung von Änderungen als um die Unterschiede.
ist nach meiner Meinung wieder einmal nichtssagend und eigentlich überflüssig.
und dann
ZitatEs geht hier ja nicht darum, Änderungen in einem Datensatz zu verarbeiten
kann ich nur sagen:
Genau das war ja auch meine Aussage, der Kommentar bzgl. "Datenänderung" kam aber doch von dir:
Zitat von: crystal am April 19, 2016, 21:15:41
Ich finde keinen Event, der bei Daten-Änderung meiner beiden Ufos feuert. Vielleicht muss man einen Event (Änderung) im Unterformular selbst "nach oben reichen", um das Prob zu lösen.
und nicht nur ich bat um eine Erklärung, was genau du damit meintest, die du aber leider nicht geliefert hast.
Also nimm doch bitte zu diesem konkreten Zitat Stellung, um evtl. vorhandene diesbezügliche Missverständnisse auszuräumen.Und was deine "Meinungsäußerungen" betrifft, so solltest du mit derartigen Beurteilungen vielleicht doch etwas vorsichtiger umgehen - sie könnten leicht zum Bumerang werden ("Wer im Glashaus sitzt ..." (http://www.access-o-mania.de/forum/index.php?topic=21228.msg120392#msg120392)). Und bedenke bitte, dass das Forum nicht die geeignete Plattform für persönliche Auseinandersetzungen ist.
Hallo
und sorry, Maggie, wenn du dich angegriffen fühlst.
In der Tat ist dieses Forum nicht der Ort für persönliche Auseinandersetzungen, sondern für sachliche, fachliche Diskussion. Wenn ich deine letzte Nachricht lese, möchte ich auch dich daran erinnern.
Meine Idee war es, im linken Ufo einen DS anzuzeigen und dann im rechten Ufo durch ähnliche DS zu blättern und Unterschiede erstmal nur anzuzeigen. DAS meine ich mit Daten-Änderung und DAZU fand ich im rechten Ufo keinen Event, der meinen Code hätte ausführen können; deshalb meine pragmatische Lösung mit einem Button.
Ansonsten gilt es doch eher, ruhig und gelassen zu bleiben, auch wenn man mal kritisiert wird. Ich habe bereits in einem anderen Thread geschrieben, dass ich deine Antworten zumeist schätze, da du Lösungen aufzeigen kannst, liebe Maggie. Aber manchmal vergreiftst du dich m.E. etwas im Ton, nicht nur mir gegenüber.
Meine Intention ist es, anderen mit Ideen zu helfen, oder es zumindest zu versuchen. Gleiches denke ich natürlich auch von dir. Wenn ich für meine Antworten teilweise kritisiert werde, reagiere ich darauf - so wie du auch.
Mir hier nun zu "drohen" ist auch nicht gerade die feine englische Art. Wenn meine Kritik zu negativ war oder dich persönlich getroffen hat, so bitte ich dafür um Entschuldigung und gelobe Besserung. Besserung, die ich allerdings auch von dir erwarte, Maggie.
Immerhin habe ich mit meinem Beispiel konkret einen möglichen Lösungsweg angedeutet und selbst probiert, aber als Idee gekennzeichnet. Andreas hat geschrieben, dass dies in Richtung seiner Vorstellung geht und auch bekundet, dass er in Sachen VBA unerfahren ist. Daher hilft es nicht, ihm allgemeine Hinweise zu geben oder mit Floskeln zu anworten. In diesem konkreten Fall hilft es m.E. nur, ihm in seiner Applikation eine Lösung mit Know-How zu bauen, ohne ihn mit zu viel eigenem Wissen zu "belästigen" oder zu belasten. Daher auch mein konkretes Angebot an ihn.
Sollte der Betreiber dieses Forums anderer Meinung sein, so kann er mich (und andere) ja jederzeit zur "Ordnung" rufen.
Ansonsten behalte ich mir das Recht der freien Meinungs-Äußerung vor, das Recht andere Meinungen zu kritisieren und auf persönliche "Angriffe" zu reagieren - so wie ich diese Rechte natürlich jedem anderen zugestehe. Sollten WIR bei Nutzung dieser Rechte manchmal etwas zu heftig reagieren, ist es angezeigt, dies zukünftig zu ändern.
Hallo Crystal,
Zitatund DAZU fand ich im rechten Ufo keinen Event, der meinen Code hätte ausführen können;
Versuche es "Beim Anzeigen" (Form_Current)
hth
gruss ekkehard
Hallo an alle,
zuerst einmal danke für all die Anregungen und Meinungen. Ich habe die Ideen auch als Idee aufgefasst und würde diese auch in meine Überlegungen mit einbeziehen, wenn sie aus meiner Sicht Sinn machen.
Was VBA angeht, da werde ich auch zukünftig nicht mehr dahin kommen bzw. den Invest betreiben es zu lernen. Das hat wohl was mit Einsicht und wohl auch Alter zu tun. Irgendwann mal kommt man an den Punkt, wo man merkt es macht echt keinen Sinn mehr, da der Aufwand des lernens deutlich höher ist als der Benefit den man dadurch letztendlich hat. Ein Maurer wird nach 35 Jahren Berufsleben sich auch extrem schwer tun, ab sofort den komplizierteren Teil des Bäckerhandwerkes auszuführen. Kleinigkeiten gehen, aber das hält sich in Grenzen. Das hat auch nichts mit Faulheit meinerseits zu tun.
Diese DB von der ich spreche wurde hier in diesem Forum mit Unterstützung zweier Access Experten auf den Weg gebracht und auch finalisiert. Ich hatte natürlich die Hoffnung, dass sie sich dem Thema mit dem neuen Feature annehmen, auch VBA seitig. Zum einen weil sie die DB schon mehr oder weniger in und auswendig kennen. Ich finde es schwierig, andere Leute jetzt zum aktuellen Versionszeitpunkt an der DB arbeiten zu lassen, weil eben die Ansichten über Datenmodelle :) (damit wäre das Wort auch mal erwähnt) und generelle Vorgehensweisen doch meist voneinander abweichen. Deshalb bitte ich jeden um Verständnis, wenn ich das Thema DB hochladen etc. nicht machen werde.
Das soll keine Abwertende Haltung den Idee Gebern gegenüber sein, sondern ist eben den zuvor gesagten Gründen geschuldet. Ich habe die Formulardarstellung wie Ekkehard und crystal sie angedeutet haben als gute Idee gesehen und werde darauf basierend wohl mit der einen oder anderen Abwandlung auch hinarbeiten.
mfG
Andreas