Hallo liebe Community,
Ich habe meinen Post einmal komplett überarbeitet.
Mir liegt (siehe Anhang) eine Tabelle vor, bei der ein Datensatz wie folgt aufgebaut ist:
(http://www2.pic-upload.de/img/30600551/Datensatz.jpg)
- Der Produktnummer
- Der Kombination aus Variante und Baugruppe: Die erste Zahl entspricht der Variante, die letzte der Baugruppe (es gibt 9 Varianten mit jeweils 3 Baugruppen)
- Der Installationsnummer: Jedes Produkt wird in 70-80 Installationen zusammengebaut. Manche Installationen werden in mehr als einer Baugruppe durchgeführt.
- Der Teilenummer: Jeder Installation ist ein Teil (Teilenummer) zugeordnet
- Weiteren nicht relevanten Spalten
Primärschlüssel der Tabelle ist die Kombination der Produktnummer und Variante + Baugruppe. Die Kombination aus Produktnummer und Variante entspricht dem was ich im Folgenden als Produkt bezeichne.
Nun soll zu einem Produkt (im Beispiel hier Produkt Nr. 08 in der Variante 5) ein ähnliches Produkt gefunden werden, das in allen 3 Baugruppen minimale Unterschiede in der Stückliste aufweist. Das ähnlichste Produkt kann dann als Vorlage für die Stücklistenerstellung genutzt werden, da so kaum Stücklisten-Positionen ersetzt werden müssen.
Momentan muss, wie in folgendem Screenshot dargestellt, dafür immer ein Produkt gegenüber gestellt werden um Differenzen in der Teilezuordnung zu den Installationen ermitteln zu können. Dies muss so lange wiederholt werden bis man ein Produkt mit möglichst wenig Differenzen gefunden hat.
(http://www2.pic-upload.de/img/30600552/Vergleich.jpg)
Da ich im Umgang mit Access / SQL noch nicht viel Erfahrung habe, bin ich unschlüssig wie sich dieser Vergleich am Besten umsetzen lässt.
Eine Differenz besteht, wenn die Kombination aus Baugruppe, Installationsnummer und Teilenummer zweier Produktnummern nicht identisch ist. Variantenunterschiede spielen keine Rolle.
Daher wäre eine Idee von mir, zu jeder der rund 70 Installationen eines Produkts einen Hash-Wert aus Baugruppe, Installationsnummer und Teilenummer zu erstellen. Dementsprechend können dann alle Hash-Werte des vorgegebenen Produkts mit den Hash-Werten der anderen Produkte auf zahlenmäßige Differenzen untersucht werden.
Beispiel (auch in der angehängten Excel noch manuell erstellt zu finden):
Es wird ein Produkt mit möglichst ähnlicher Stückliste wie Produktnummer 08 in Variante 5 (nennen wir es 08-5) gesucht. Dieses enthält in den 3 Baugruppen insgesamt 70 Installationen, dementsprechend 70 Hash-Werte.
Produkt 05-5 enthält ebenso 70 Hash-Werte, wobei 4 Hash-Werte nicht doppelt vorkommen und somit 4 Stücklistendifferenzen vorhanden sind.
Produkt 01-5 enthält mehr, nämlich 72 Hash-Werte, da hier zusätzliche Installationen vorgenommen werden. Neben diesen ,,zusätzlichen" Hash-Werten gibt es noch 13 weitere Differenzen.
Mit 15 Stücklisten-Unterschieden in Summe ist dieses Produkt also deutlich schlechter als Vorlage geeignet.
Ist die Idee mit dem Hash-Wert umsetzbar oder gibt es in Access einen besseren Weg den Inhalt dreier Felder eindeutig zusammenzufassen? Wie könnte man solch eine Abfrage dann am Besten umsetzen?
Beste Grüße
Wolfgang
ZitatIch hoffe ihr könnt meine etwas holprige Beschreibung nachvollziehen.
Könntest Du das selber?
Wieso drei Tabellen mit gleichen Feldern und vermutlich gleichen Inhalten?
ZitatIch möchte nun mithilfe der Datenbank Produkte mit ähnlicher Teileliste suchen.
Produkt als Begriff taucht in den Tabellen nicht auf. Erklärend würde ich das nicht nennen.
Zitatzu Konfiguration 650
... die ich in der überschläglichen Ansicht der Tabellen nicht wiederfand. Es ist sehr sinnig, Beschreibung und Realdaten strikt unterschiedlich zu halten - da erspart sich jede Nachprüfung.
Zitatin ihrem Teileinhalt die geringsten Unterschiede aufweist
Ja, "Teile" wären dann was?
Ansonsten: Zahlenmäßige Unterschiede wird man wohl ermitteln können, indem man Gesamtzahl der Teile vergleicht mit übereinstimmenden Teilen anderer Konfigurationen.
Ob geringe Unterschiede absolut oder relativ zu beurteilen wären, wäre dann eine weitere Frage.
ZitatTeil meiner Abschlussarbeit
Hoffentlich haben die Prüfer nicht so ein schwach entwickeltes Leseniveau wie ich ...
Danke Eberhard für dein Feedback.
Habe mir noch einige Gedanken zum Thema gemacht und den Einganspost editiert.
Beste Grüße
Wolfgang