Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Ungleiche Daten verheiraten

Begonnen von Sgl, Juli 24, 2013, 10:20:30

⏪ vorheriges - nächstes ⏩

Sgl

Hallo,

ich beschäftige mich seit einiger Zeit mit Access doch muss jetzt mal mehr in die Tiefe gehen. Leider brauch ich für die Erarbeitung der Grundlagen zu lange um meinen Notwendigkeiten gerecht zu werden. Deshalb hoffe ich hier auf Hilfe.

Ich habe zwei Stammdatensätze zu Materialien aus verschiedenen Häusern. Ziel ist es diese beiden Datensätze zu vereinheitlichen. Jetzt sin natürlich dei Merkmal so komplett unterschiedlich, dass ein direkter Vergleich nicht sinnvoll ist. Ich habe an eine Access Lösung gedacht bei der ich jeweils deinen Artikel des einen Hauses mit mehreren ähnlichen Artikeln des andern Hauses vergleiche und am Ende die eindeutige Materialnummer zuweise.

Ich habe kein Problem damit die Formulare zu gestalten, die prinzipiell die Funktionen beherbergen. Also HF ruft Datensatz 1 auf und im UF zeigt sich eine Liste mit Artikeln zur Auswahl.
Dann geb ich ggf. per Hand, die Artikelnummer aus DS 2 aus dem UF in ein Textfeld im HF, die diese in einer tbl-Artikelzuweisung abspeichert. Ggf. soll die Möglichkeit vorhanden sein die Daten nach Artikelbezeichnung, Hersteller oder Kontengruppe zu sortieren. Soweit die Vorstellung.

Mein 1. Problem ist nun, wie baue ich die Datenverknüpfung zwischen beiden Datensätzen, so dass ich im UF eine sinnvolle Auflistung erhalte.
- Ist es sinnvoll mit einer Hilfstabelle/Hilfskriterium zu arbeiten, die ein fiktives Kriterium schafft, wie z.b. die schlichte fortlaufende ID Nr?
   - dann bekomme ich aber immer erst die Daten angezeigt, die sinnfrei über die ID verbunden sind ---- wie bekomme ich dann andere Daten aus DS 2 da DS 1 im HF fixiert sein soll.

Gibt es hier Ideen oder Erfahrungswerte?

VG Sven

DF6GL

Hallo,

Dein Problem liegt nicht auf der Access-Seite, eher darin, eine sinnvolle "Zuordnung" zwischen den unterschiedlichen (und unabhänggen) Stammdaten(sätzen) zu finden.  Das muss von BWL-Sicht aus erfolgen und nicht von-Datenbank-Sicht.


Access kann auch nur dann eine Verbindung schaffen, wenn diese Verbindung vorher definiert wurde..

Sgl

Hmmm, ja ok ich möchte ja nun gern über Access ein Intrument bauen, welches diese sinnvolle Zuweisung erleichtert auch für andere Nutzer, ohne schlicht zwei Excel Tabellen nebeneinander zu legen..

Ich möchte dann später die Daten auch weiter verwenden und ein weiteres Projekt daraus entwickeln..

Also Abstriche sind ok, Ich kann mir ja ohne weiteres jeden Artikel aus dem Stammsatz einzeln anzeigen lassen. Jeweils in separaten Formularen. Wie bekomm ich es hin dass ich das in einem Formular machen kann, welches mir die Möglichkeit gibt dann beide zu verheiraten? Dabei muss ich natürlich bei einem der Tabellen die Möglichkeit haben verschiedene Artikel auszuwählen.

Die Datenstruktur ist so, dass es durchaus gleiche Merkmale gibt mit teilweise sogar inhaltlicher Übereinstimmung, wie z.B. bei Hersteller/Lieferant. Nur ist das alles nicht umfassend genug und bedarf der Handarbeit. Also geht das oder macht es mehr Sinn gleich einfach beide Excel Tabellen visuell gegenüberzustellen?

DF6GL

Hallo,


Ok, wenn das ein Hilfstool werden soll, um eben die Zuordnung zu konkretisieren, dann fällt mir spontan (als Konzept) sowas ein:



Stammdatentabellen mit einem "Marker"  (Ja/Nein-Feld)  versehen.
zusätzliche Zuordnungstabelle  mit zwei LONG-Feldern   für die PK-Feldwerte aus den beiden Stammtabellen.  (oder TEXT, falls PKs vom Datentyp TEXT)

Ein Endlos-HF (Datenherkunft Abfrage über Zuordnungstabelle mit Verknüpfung zu den beiden Stammdatentabellen ) mit zwei nebeneinanderliegenden UFO-St-El. im Form-Fuß,  die jeweils ein Endlosform mit Basis zu der jeweiligen Stammdatentabelle anzeigen.   

Über VBA-Prozedur(en) das jeweils andere Formular nach dem akt. angeklickten Attributsfeld filtern und die "passenden" Datensätze mit dem Marker-Feld markieren.

Mittels Button und SQL-Insert-Statement die PKs der markierten DS in die Zuordnungstabelle schreiben und die Marker in den Stammtabellen zurücksetzen.

HF mit Requery aktualisieren

Sgl

Ufff, das hab ich spontan nur grob verstanden.

Das mit dem Marker hab ich schon angedacht. Wofür steht PK?  ???

Die Verknüpfung der beiden Stammdatentabellen: Über schlichte ID? Sonst hab ich ja kein passendes Kriterium.

Den Rest versuch ich mal und meld mich ggf. wieder..

Erstmal Danke!

VG Sven

Sgl

Hallo,

also fürs Erste: Das HF als Endlosform mit beiden Stammdaten steht, Markerfeld auch, den Rest probier ich noch. Sieht auf jeden Fall schonmal gut aus.

VG Sven

Sgl

Hallo,

wieder zurück, das HF mit den beiden UF steht. Im HF lehnt Access die Darstellung als Endlosformular ab, macht aber auch nix. Durch die Zuordnungstabelle, die akuell noch willkürlich zusammengestellt ist, weil ich einfach beide PK's nebeneinander hineinkopiert hab kann ich im HF jeweils zu jedem Datensatzpaar blättern. D.H. Ich sehe im HF immer die aktuelle Zuordnung.

OK, hier möchte ich ja durch meine Prozeduren die Zuordnung ändern. An der Stelle hören bei mir die Möglichkeiten auf muss ich sagen. Du hast vorgeschlagen zwischen den UF im Formularfuß zu filtern. OK, find ich gut.

Also erstmal muss jedes UF erkennen, dass ein Attributfeld angeklickt wird. Wie muss ich das global beschreiben, oder muss ich jedes Feld einzeln mit einer Ereignisprozedur versehen?

Dann muss natürlich der Wert des ausgewählten Feldes gelesen und als Suchkriterium an das andere UF übergeben werden. Ok, wie sieht das aus?

Der nächste Schritt wäre die Markierung des Artikels, diese Funktion hab ich jetzt im HF, also muss auch der Wert des UF noch an das HF übergeben werden.  ??? ICh hab also im ersten Schritt bei dem Artikel aus DS 1 einen Marker gesetzt und werde das nach der RÜckmaldung des UF mit dem Artikel aus DS 2 machen den ich zuordnen möchte.

OK, dann versteh ich muss die Zuordnungstabelle per Button zum umschreiben aufgefordert werden, wobei auf einer Seite die Werte getauscht werden müssen, es darf kein Wert gelöscht werden!
Ich würde die erfolgte Zuordnung noch gesondert festhalten wollen, um später hier zu erfassen wenn alle DS einer Stammdatendatei zugeordnet sind. Ich habe nämlich keine gleiche Anzahl von Datensätzen in beiden Tabellen.  :(

Ich bin über schrittweise Hilfe dankbar, mach aber erst morgen weiter.

VG Sven

Sgl

Hallo,

ich kniffle weiter an meinen Thema und komm nicht recht voran. Verschiedene Programmierversuche führen zu keinem Ergebnis.
Aber dann der Reihe nach.

Also erstmal muss jedes UF erkennen, dass ein Attributfeld angeklickt wird. Wie muss ich das global beschreiben, oder muss ich jedes Feld einzeln mit einer Ereignisprozedur versehen?

Ich würde über das Ereignis BeimKlicken gehen.  Und dann?  ???

Wenn ich nur einen Beitrag lesen musss, dann hab ich Ihn noch nicht gefunden und freu mich auf einen entspr. Hinweis, danke.

Sven


Sgl

Hallo Franz,

ok, jetz hab ich so einiges probiert. Im HF sehe ich nun nur die Daten aus der Zuweisungstabelle und kann per Eingabe eine Artikelnummmer in der Tabelle abspeichern.
Das würde mir funktional erstmal reichen. Nur muss ich wissen welche weitern Artikeldaten sich hinter beiden Artikelnummern verbergen. Dazu das UFo mit Bezug zu einer Abfrage, die beide Ursprungstabellen verbindet.

Im UF sehe ich dann die Daten einer Abfrage, die mir die jeweiligen Artikeldaten zu den im HF sichtbaren Artikelnummern anzeigen. Im UF Detailbereich sehe ich einen DS und im UF-Formfuß die Endlosformulare um eine breite Auswahl zu ermöglichen.

Was ich mir wünsche wäre aber dass ich per Suchfunktion bestimmte Begriffe suchen kann, die dann jeweils in Beiden Tabellen gesucht werden. Das funktioniert aber nur soweit ich das UF separat als HF aufrufe, aber nicht mehr, wenn ich es an mein eigentliches HF angebunden habe. Warum nicht?

VG
Sven

Sgl

SO, ich habs jetzt nochmal umgestrickt,

das Form in dem ich den Suchbutton habe ist mein HF, mit zwei UF.

In einem zeige ich mir die Daten des einen Artikelstamms an, aus dem ich aussuche DS 2 (Daten HGZ), in dem anderen verknüpfe ich zu der Tabelle, die mir nur die Artikelnummern verbindet.

Ich finde jetzt also nach freien Begriffen die Artikel in beiden Stamm-DS und kann bei Anzeige des Artikels aus DS 1(Daten Diana) auch eine andere Artikelnummer in der Zuordnungstabelle abspeichern.

Gut soweit. Jetzt möchte ich aber die aktuelle Zuordnung im HF sehen und unabhängig davon in DS 2 suchen. Geht das wohl?

Als zweiten Schritt möchte ich dann auch gern die Abfrage mit meiner Zuordnungstabelle aktualisieren.
Hier werde ich erst im Forum nach ähnlichen Themen suchen und meld mich wieder bei Bedarf, wäre bei Gelegenheit für Hinweise dankbar.

VG
Sven

Sgl

Hallo,

ich bin jetzt einige Versuche weiter, bekomme meine beiden Artikellisten angezeigt und kann ein einer Zuweisungstabelle die neuen Zuweisungen speichern.

Zunächst mal die Frage, wie ich das Markierungsfeld bei Eingabe einer Artikelnummer akualisieren kann.
Mein Versuch über AfterUpdate des Textfeldes in dem eine Arteikelnummer eingegeben wird mit folgendem Code:

Private Sub txt_Zuw_Diana_Art_Nr_AfterUpdate()


CurrentDb.TableDefs("tbl_Artikelzuweisung").Fields("Markierung").Value = "True"

End Sub

Funzt leider nicht.

Kann mir jemand nen Tip geben?

Das Feld Markeirung ist als Ja/Nein Feld formatiert.

VG
Sven