Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: fautec56 am Dezember 16, 2013, 10:50:04

Titel: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 16, 2013, 10:50:04
Hallo zusammen,
ich habe ein problem, dass wohl nur mit VBA gelöst werden kann. Leider bin ich da nicht besonders gut drauf.



Hier meine Aufgabenstellung


Derzeitige Abfrage:


SELECT [Werkstoff ASTM B637 2_4668].Werkstoff AS Werkstoff1, Chargendaten.Werkstoff AS Werkstoff2, Chargendaten.Charge, Chargendaten.ID, 100-([Ni_Nickel_28_max]+[Ti_Titan_22_max]+[C_Kohlenstoff_6_max]+[P_Phosphor_15_max]+[S_Schwefel_16_max]+[Mn_Mangan_25_max]+[Si_Silicium_14_max]+[B_Bor_5_max]+[Co_Cobalt_27_max]+[Cr_Chrom_24_max]+[Cu_Kupfer_29_max]+[Mo_Molybdaen_42_max]+[Nb_Niob_41_und_Ta73_max]+[Al_Aluminium_13_max]) AS Fe_rest_min, 100-([Ni_Nickel_28_min]+[Ti_Titan_22_min]+[C_Kohlenstoff_6_max]+[P_Phosphor_15_max]+[S_Schwefel_16_max]+[Mn_Mangan_25_max]+[Si_Silicium_14_max]+[B_Bor_5_max]+[Co_Cobalt_27_max]+[Cr_Chrom_24_min]+[Cu_Kupfer_29_max]+[Mo_Molybdaen_42_min]+[Nb_Niob_41_und_Ta73_min]+[Al_Aluminium_13_min]) AS Fe_Rest_max, Chargendaten.Fe_Eisen_26, [Fe_Eisen_26] & " " & [Fe_Eisen_26_t] AS Fe, [Werkstoff ASTM B637 2_4668].Ni_Nickel_28_min, Chargendaten.LieferantNr, [Werkstoff ASTM B637 2_4668].Ni_Nickel_28_max, [Ni_Nickel_28] & " " & [Ni_Nickel_28_t] AS Ni, IIf(([Ni_Nickel_28]>=[Ni_Nickel_28_min] And [Ni_Nickel_28]<=[Ni_Nickel_28_max]),"iO","niO") AS Test_Ni, [Werkstoff ASTM B637 2_4668].Ti_Titan_22_min, [Werkstoff ASTM B637 2_4668].Ti_Titan_22_max, Chargendaten.Ti_Titan_22, IIf(([Ti_Titan_22]>=[Ti_Titan_22_min] And [Ti_Titan_22]<=[Ti_Titan_22_max]),"iO","niO") AS Test_Ti, Chargendaten.C_Kohlenstoff_6, [Werkstoff ASTM B637 2_4668].C_Kohlenstoff_6_max, IIf([C_Kohlenstoff_6]>=[C_Kohlenstoff_6],"niO","iO") AS Test_C, [Werkstoff ASTM B637 2_4668].S_Schwefel_16_max, Chargendaten.S_Schwefel_16, IIf([P_Phosphor_15_max]<=[P_Phosphor_15],"niO","iO") AS S_Test, [Werkstoff ASTM B637 2_4668].Mn_Mangan_25_max, Chargendaten.Mn_Mangan_25, IIf([Mn_Mangan_25_max]<=[Mn_Mangan_25],"niO","iO") AS Mn_Test, [Werkstoff ASTM B637 2_4668].Si_Silicium_14_max, Chargendaten.Si_Silicium_14, IIf([Si_Silicium_14_max]<=[Si_Silicium_14],"niO","iO") AS Si_Test, [Werkstoff ASTM B637 2_4668].B_Bor_5_max, Chargendaten.B_Bor_5, IIf([B_Bor_5_max]<=[B_Bor_5],"niO","iO") AS B_Test, [Werkstoff ASTM B637 2_4668].Co_Cobalt_27_max, Chargendaten.Co_Cobalt_27, IIf([Co_Cobalt_27_max]<=[Co_Cobalt_27],"niO","iO") AS Co_Test, [Werkstoff ASTM B637 2_4668].Cr_Chrom_24_min, [Werkstoff ASTM B637 2_4668].Cr_Chrom_24_max, Chargendaten.Cr_Chrom_24, IIf(([Cr_Chrom_24]<=[Cr_Chrom_24_min] Or [Cr_Chrom_24]>=[Cr_Chrom_24_max]),"niO.","iO") AS Cr_Testi, [Werkstoff ASTM B637 2_4668].Cu_Kupfer_29_max, Chargendaten.Cu_Kupfer_29, IIf([Cu_Kupfer_29_max]<=[Cu_Kupfer_29],"niO","iO") AS Cu_Test, [Werkstoff ASTM B637 2_4668].Mo_Molybdaen_42_min, [Werkstoff ASTM B637 2_4668].Mo_Molybdaen_42_max, Chargendaten.Mo_Molybdaen_42, IIf(([Mo_Molybdaen_42]<=[Mo_Molybdaen_42_min] Or [Mo_Molybdaen_42]>=[Mo_Molybdaen_42_max]),"niO.","iO") AS Mo_Test, [Werkstoff ASTM B637 2_4668].Nb_Niob_41_und_Ta73_min, [Werkstoff ASTM B637 2_4668].Nb_Niob_41_und_Ta73_max, Chargendaten.Ta_Tantal_73, Chargendaten.Nb_Niob_41, IIf(([Ta_Tantal_73]+[Nb_Niob_41]<=[Nb_Niob_41_und_Ta73_min] Or [Ta_Tantal_73]+[Nb_Niob_41]>=[Nb_Niob_41_und_Ta73_max]),"niO.","iO") AS NB_TA_Test, [Werkstoff ASTM B637 2_4668].Al_Aluminium_13_min, [Werkstoff ASTM B637 2_4668].Al_Aluminium_13_max, Chargendaten.Al_Aluminium_13, IIf(([Al_Aluminium_13]<=[Al_Aluminium_13_min] And [Al_Aluminium_13]>=[Al_Aluminium_13_max]),"iO.","niO") AS Al_Test, IIf(([Fe_Eisen_26]>=[Fe_Eisen_26_rest_min]) And ([Fe_Eisen_26]<=[Fe_Eisen_26_rest_max]),"iO","niO") AS Fe_test
FROM Chargendaten, [Werkstoff ASTM B637 2_4668]
WHERE ((([Werkstoff ASTM B637 2_4668].Werkstoff)="2.4668_ASTM") AND ((Chargendaten.ID)=34));




Aufgabe:

Ich muss einen bestimmten Datensatz überpüfen, ob die einzelnen Werte innerhalb eines bestimmten bereiches liegen. Wenn dies nicht der Fall ist, so muss eine Info dies Anzeigen.

iO odereben niO.

Gelöst habe ich damit, dass ich eine Tabelle habe, wo die SollWerte drin stehen und eine Tabelle wo die IstWerte eingetragen werden.


Werkstoff ASTM B637 2_4668 ( soll )
Chargendaten ( ist )


Ich vergleiche aus der Tabelle "Chargendaten" den datensatz it der ID "34" gegen den Datensatz "Werkstoff"="2.4856_ASTM" aus der Datenbank "Werkstoff ASTM B637 2_4668" und Werte die beiden Datensätze über die Abfrage geneinander aus.


Das klappt soweit. Aber eben alls nur manuell.


Jetzt möchte ich aus einem Formular in dem die IstDaten eingegeben und angezeigt werden, heraus das Gleiche hin bekommen.


Auf Knopfdruck,

prüfe den aktuellen Datensatz mit der ID, z.B. 34, der Tabelle "Chargendaten" in dem ich mich gerade befinde mit dem Datensatz Chargendaten.Werkstoff&"ASTM"  gegen den datensatz Werkstoff=2.4668_ASTM aus der Datenbank "Werkstoff ASTM B637 2_4668"



Also die die leitzte Zeiler der Abfrage:  "  WHERE ((([Werkstoff ASTM B637 2_4668].Werkstoff)="2.4668_ASTM") AND ((Chargendaten.ID)=34)); " Nur das die Werte flexibel aus dem aktuellen Datensatz übergeben und abgefragt werden müssen.




Das ganze bekomme ich nicht ohne VBA dargestellt. Nur hier sind meine Kenntnisse echt extrem gering.
Ich würde mich freuen, wenn man mir hier helfen könnte um eine Ansatzlösung zu bekommen.



Reinhard 
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 16, 2013, 11:16:11
Hallo,
siehe auch:
http://www.ms-office-forum.net/forum/showthread.php?t=305335 (http://www.ms-office-forum.net/forum/showthread.php?t=305335)

Lies mal die Regeln des Forums, auch des anderen Forums.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 16, 2013, 12:17:10
Zitat von: MzKlMu am Dezember 16, 2013, 11:16:11
Hallo,
siehe auch:
http://www.ms-office-forum.net/forum/showthread.php?t=305335 (http://www.ms-office-forum.net/forum/showthread.php?t=305335)

Lies mal die Regeln des Forums, auch des anderen Forums.

Sorry, soll nicht mehr vorkommen. Würde mich über Hilfe freuen.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: Stapi am Dezember 16, 2013, 16:30:53
Hallo fautec56

Da du dich nun schein bar für dieses Forum entschieden hast, solltest du mal zum besseren  Verständnis aller hier dein Beziehungsfenster hochladen.  Denn Augenscheinlich wie im anderen Forum auch schon angemerkt ist dein Datenmodel nicht normalisiert und der Grund allem Übel liegt dort. Oder deine Datenbank am besten im Acces Format 2003 mit nur  Tabellen und Abfragen.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 16, 2013, 18:51:03
Also es handelt sich hier um eine reine Abfrage und es ist Acess 2010

Ich habe in einer Tabelle die IstWerte und in der anderen Tabelle die Sollwerte die geben die Istwerte gefahren wird.
Dazu muss ich zum Einen eine bestimmte ID der Isttabelle ansprechen und eine bestimmte ID bzw einen bestimmten Werkstoff der Soll-Tabelle.
Die beiden Zeilen fahre ich dann gegeneinander. Mit der Abfrage vergleiche ich die jeweiligen Werte auf max aber auch auch auf max und min.

Ich habe befor ich die Anfrage im anderen Forum auf erledigt setzen konnt bekan ich folgen Antwort:

WHERE ((([Werkstoff ASTM B637 2_4668].Werkstoff)=[Forms]![DeinFormular]![DeinFormularfeldMitIstWert]) AND ((Chargendaten.ID)=[Forms]![DeinFormular]![DeinFormularfeldMitID]));

Ich hab meine Abfrage entsprechend geändert. Funktioniert erst mal. Ich kann aus dem Formular der Istdatenbank die Abfrage starten. Die Parameter werden übergeben.


Dei Frage die ich jetzt natürlich habe, ist, ob es noch einen anderen Weg gibt.
Immerhin  muß ich 56 Werkstoffe mit mindstens 6 verschieden Sollwerten überprüfen. Bedeutet ich muss mindestens 336 dieser Abfragen bauen. Da werd ich alt und grau drüber.
Hmm.. alt bin ich schon.  :)



Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 16, 2013, 19:18:47
Hallo,
hast Du wirklich für jeden Werkstoff eine eigene Tabelle?
Ich fürchte, da wurden bereits gravierende Fehler im Aufbau der DB gemacht.

Bei korrektem Aufbau der DB dürfte für Dein Vorhaben eine Parameterabfrage (Werkstoff als Parameter) reichen und keine 336.

Beschreibe also mal wie die DB aufgebaut ist und nicht was Du erreichen willst. Zum Beispiel mit 2 Werkstoffen.

Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 17, 2013, 08:51:26
Die Werstoffe zusammen in einer Tabelle gesammelt. Also die Chemiebestandteile eines jeden Werkstoffs.

Eisen, Mangan, Nickel, Titan, usw. Zusätzlich kasnn es sein, das die Angaben <, > oder = dazu müssen.
Auch muss festgelegt werden, ob eine 0 als keine Angabe gillt, oder 0 eine verbindliche Aussage ist.
Ich hab s so geregelt: 0 mit = ist eine Verbindliche Aussage. 0 ohne Zusatz ist kein Wert.
Ich brauche eine 0 um die Felder zusammenrechnen zu können. Ich brauche die Angabe ob die Angaben in den einzelen Feldern zusammen nahe 100% sind.

Jetzt muss ich aber jeden Werkstoff (Zeile) mit einem Regelwerk vergleichen.
Wir nehmen mal den Werkstoff  2.4668

Die Chemischen Werte in der Werkstofftabelle müssen jetzt überprüft werden, ob diese den verschiedenene Regelwerken entsprehen.
Von den Regelwerken gibt 9.
Somit muss ich den Werkstoff 2.4668 oder besser gesagt, jeden Werkstoff mit den Vorgaben der 9 Regelwerken prüfen.
In den Regelwerken steht drin, welchen Wert z.B. Mangan haben darf. Im einen Regelwerk kan es sein dass er einen Wert von MAX haben darf, im
anderen Regelwerk wird dieser Wert aber mit MIN und MAX überprüft.
Zum Teil sind die Werte in den Reglwerken gleich, zum Teil aber nicht.

Wir haben 56 Werkstoffe die ich gegen 8 - 11 Regelwerke prüfen muss. Sind also etwas mehr als 450 Vartianten die geprüft werden müssen. ( Ich hatte schon untertrieben)


Ich hoffe Du verstehst das Projekt so etwas besser.  ;)
















Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 17, 2013, 09:51:05
Hallo,
der Aufbau der DB ist drastisch falsch. So wirst Du nicht zum Ziel kommen.
Alle Werkstoffe müssen in eine Tabelle, nur die reinen Angaben zum Werkstoff.
Weiterhin ist eine Tabelle notwendig für alle Bestandteile. Dabei ist jedes Bestandteil ein Datensatz und kein Feldname.

In einer weiteren Tabelle werden die relevanten Bestandteile dem Werkstoff zugeordnet. Über die Schlüsselfelder.
Also hat ein Werkstoff 20 Bestandteile sind das 20 Datensätze. In diese Tabelle kommt auch noch ein Feld zur Aufnahme des Messwertes.

Auch für das Regelwerk ist eine extra Tabelle aufzubauen die einen Fremdschlüssel zum Werkstoff, einen Fremdschlüssel für das Bestandteil und 2 Felder für die Grenzwerte (min/max) enthält.
Dann noch eine Tabelle für die Charge und eine Tabelle für die Einheiten.

Im Moment sehe ich da 6 Tabellen mit insgesamt ca. 20-30 Feldern. Damit sollte auf einfachem Weg Dein Problem lösbar sein.

Du solltest Dich dringend mit den Grundlagen zum Aufbau relationaler Datenbanken beschäftigen. Das jetzige Konzept halte ich für völlig unbrauchbar.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 17, 2013, 13:52:13
Danke für die Blumen. Hast da nicht ganz unrecht.

Zum Verständnis, die Chargentabelle ist die Chemie der Werkstoffe. Da kommen alle Werkstoffe rein.
Hier muß ich als Verknüpfung die ID nehmen um dann in der Abfrage des gerade im Formular geöffneten Datensatzes die ID zu übergeben. ( Das klappt ja )

Dann wird es jedoch problematisch.

Die Tabelle "Werkstoff ASTM B637 2_4668" muss ich noch umbenennen. Die müßte Regelwerk heißen. Hier kommen alle Chemischen Werte  max. min/max, kleiner, größen aller Regelwerke rein.
Verknüpft werden kann hier nur über das Feld Werkstoff und das Feld Regelwerk. Oder wie ich es bisher gemacht habe   Werkstaffname&"_Regelwerkname"   im Feld Werkstoffe und rufe aus dem Formular
die Abfrage mit der Werkstoff&"_Regelwerkname" für die Regelwerkdatenbank und die ID für die Werkstoffdatenbank und kann sie so gegeneinander vergleichen.

Jedoch ist hier jetzt das Problem der Abfrage.

Hier müßte ich nach jetziger Überlegung für jedes Regelwerk in Verbindung des Werkstoffes eine eigene Abfrage für den Vergleich erstellen.
Keine Datenbanken wie die wohl falsch verstanden hast.

Die Abfrage mit den entsprechenden Überprüfungen funktioniert. Aber davon wirklich jedes Mal eine eigene Abfrage?   Anzahl:  Regelwerke X Werkstoffe


Ich hoffe, wir kommen uns hiermit ein wenig näher.    

MfG
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 17, 2013, 14:35:20
Hallo,
nein, das ist alles falsch. Die Bestandteile der Werkstoffe darf es nicht als Feldnamen geben. Und der Werkstoff darf kein Tabellenname sein.
Du hast den Aufbau einer Datenbank noch nicht verstanden.
Nichts von dem was Du bis jetzt hast ist verwendbar. Die DB muss von Grund auf neu aufgebaut werden. Mit einem normalisierten Tabellenaufbau.

Du wirst dann zum Schluss mit einer Abfrage für den Vergleich auskommen. Dieser Abfrage wird nur die WerkstoffID als Parameter übergeben.

Sorry, wenn ich das so krass formuliere, aber bei der Art der gewünschten Auswertung wirst Du um eine Umstrukturierung nicht herumkommen.

Beschreibe mal den Aufbau der bisherigen Tabellen etwas genauer.
Und was genau ist eine Charge.
Wenn ich das richtig verstehe, ist das eine Probe eines Werkstoffes die mit den Regelwerken zu diesem Werkstoff verglichen werden soll.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: Stapi am Dezember 17, 2013, 17:29:11
Hallo
Ich kann @MzKIMu nur beipflichten, es ist zwar hart in der Aussage alles für die Tonne gemacht zu haben, aber selbst wenn es dir gelingt das im Ansatz im Moment zu lösen wir der Zeitpunkt kommen wo du noch mehr Zeit verbraucht hast und doch von vorn anfängst.
Darum nimm den Rat und Normalisiere deine Datenaufbau.

Zitatdeine Datenbank am besten im Acces Format 2003 mit nur  Tabellen und Abfragen.
Warum das Dateiformat Access 2003, die Anzahl an User die die hier helfen können ist größer. Es reicht nur die Tabellen mit Beziehung, darauf aufbauen können dir Änderungen an deinem Datenmodel gezeigt werden.

Mehr wie dir Hilfe anbieten können wir alle hier nicht Leisten, Umsetzen und Verstehen must du es.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 18, 2013, 16:47:57
Ok,

bin noch nicht untergetaucht. Muss erst mal klären.

Es geht hier um Chemische werte einer Charge. Eine bestimmte Lieferung des Werkstoffes 2.4664 hat eine bestimmte Charge. Von der Charge bekommen wir ein Zeugnis mit den entsprechende Angaben der einzelnen Chemischen Werten.

(A)
zb. Aluminium = 20%, Kupfer=3%, Titan3%, Nickel73%, Schwefel 0,012%  usw.

(B)
Es gibt eine Norm, bei uns das Regelwerk, dass sagt aus wieviel % jedes Element haben darf.
zb. | Aluminium max 21% |Kupfer max 4,5% |Titan Min 1,5% Max 4,3% | Nickel Min 71% max 74% | Schwefel max 0,015% | usw.


(A) muss nun mit (B) verglichen werden.
Es muss angezeigt werden, ob der Vergleich der einzelnen Werte i.O. oser nicht.

Wir haben 56 Werkstoffe, die n Chargen bekommen können

Wir haben zu jedem Werkstoff ca. 10 Regelwerke gegen die die Charge des Werkstoffs geprüft werden muss.


So, ich denke der Überblick sollte reicht.


Man kann zwar jetzt versuchen die Tabellen zu splitten, aber wo?

Immerhin habe ich bisher lediglich in einer Tabelle die Daten der Chargen des Werkstoffs eingegeben und in ein andere die Daten aus dem Regelwerk z. B568.

Zur Verknüpfung habe ich nur den Werkstoff und die Charge, gegen die ich das Regelwerk fahren muss.


Der Wechsel auf Acces 2013 sollte nicht das Problem sein.

Grüße
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: Stapi am Dezember 18, 2013, 19:19:35
Hallo

ZitatEs gibt eine Norm, bei uns das Regelwerk, dass sagt aus wieviel % jedes Element haben darf.
zb. | Aluminium max 21% |Kupfer max 4,5% |Titan Min 1,5% Max 4,3% | Nickel Min 71% max 74% | Schwefel max 0,015% | usw.
Kannst du bitte mal alle Zutaten / Werte z.b für den Werkstoff Aluminium zur Verfügung stellen.

Ein Frage hab ich da noch eure Lieferant sendet ein Charge mit z.b Chargen Nr.3232 diese enthält mehre Artikel wie z.b 10mm Aluminium Rund mit den Chemieschen Eigenschaften, 20mm Vierkant ST50 Eisen mit entsprechenden Eigenschaften. Oder ist eine Chargen Nr auch nur ein Artikel.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 18, 2013, 19:47:32
Hallo,
nachdem ich hier am lautesten geschrien habe, dass das Datenmodell falsch ist, habe ich mal auf Basis der bisher vorliegenden Infos versucht ein Datenmodell zu erstellen. Ich habe für die Werkstoffe mal 2 Werkstoffe mit echten Werten für die Bestandteile angelegt.

Schaue Dir als erstes mal die Tabellen und deren Inhalte an. Wie Du siehst gibt es werder Tabellen noch Feldnamen die den Tabellen/Feldinhalt darstellen.
Dann schaust Du mal nach den Beziehungen.

Es gibt 2 Formulare (mit Unterformulare).

Formular "SollwertErfassung"
Hier werden die Werkstoffe erfasst und im Unterformular die Bestandteile mit den Sollwerten in Abhängigkeit des ausgewählten Regelwerks.
Aus Ermangelung eines Namens für ein Regelwerk, habe ich das einfach mal "Regelwerk 1" bzw. "Regelwerk 2" genannt.

Formular "Chargenerfassung"
Hier werden die Chargen erfasst. Ich habe nur wenige Chargenfelder angelegt.
Im Ufo1 werden die Sollwerte für den Werkstoff der Charge angezeigt.
In einem späteren Entwicklungsstadium der DB würde man noch nach dem Regelwerk filtern.

Im daneben liegenden Ufo2 werden die Istwerte eingetragen.

Ein Vergleich von Ist und Sollwert ist noch nicht realisiert.
Ich wollte jetzt erst mal wissen, ob das Datenmodell erst mal so passt.
Bisher gibt es auch nur 2 Zeilen VBA Code der nur dem Komfort dient und mit den Daten nichts zu tun hat.
Bitte beschäftige Dich ausführlich mit meinem Vorschlag.
Bei Fragen bitte melden.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 19, 2013, 10:29:19
Hoppla, ist schon Weihnachten?

Erst mal vilen Danke für deine Mühe.

Wie ich sehe, werden bei dir die IstWerte in Abhängigheit zum Regelwerk eingegeben.
Für mein Verständnis falsch, weil die Istwerte erst man unabhängig vom Regelwert sind.
Hier dürfte das Regelwerk noch nicht ins Spiel kommen.

Erst später bei der Überprüfung

Das ist ein Regelwerk: ASTM B637
Du hast dies als "Werkstoffbez" eingebaut.  ;)

Die Sollwerte eines Werkstoffes(z.B. 2.4668) richten sich nach dem Regelwerk(z.B. ASTM B637)
Die Charge ist eine vergebene AlphaNummerische Angabe, z.B. 3401013 oder YX345B12.
Dieser Chargennummer sind in Verbindung mit der Werkstoffnummer die Ist-Werte der Elemente zugeordnet.

Mann könnte den Werkstoff dann auch Werkstoff&Charge nennen. Ist für den User aber nicht gut zu händeln.  ::)

Bei den Regelwerken ist es ähnlich.  ASTMB637&Werkstoff  Hier besteht ebenfalls die Abhängigkeit des Regelwerks zum Werkstff, wenn es um die Sollwerte geht.


Bei den Sollwerten sieht das wirklich gut aus. Vorgesehen ist ein variable Eingabe der Werte entsprechend der Regelwerke.
Abgedeckt ist durch diese Art der Eingabemöglichkeit:

MIN
MAX
MIN-MAX
GLEICH könnte man durch die den gleichen Wert in MIN und MAX darstellen.
(wenn(MIN=MAX;"=")  oder so ähnlich.

Da muss später die Abfrage bei der Gegenüberstellung der verschiedenen Regelwerke entsprechend greifen. (schwieriges Ding )  

Ich schau mir das mal in Ruhe weiter an. Eigentlich hast Du dir schon eine Flasche Wein für Weihnachten verdient.  ::)

fautec56(at)t-online.de

-----------------------------------------------------------
Nachtrag:
Ich bin dabei...

So langsam versteh was du da machst.
Was mir auffällt ist, dass Du die IstWerte dem Regelwerk zuordnest. (sieht man in der Abfrage1) Das ist auf jeden Fall falsch.
Du ordnest somit den Istwerten direkt einem Regelwerk zu. Der Istwert kann aber nur der Charge des Werkstoffes zugeordnet werden.

Das Regelwerk, besser gesagt die Regelwerke die dem Werstoffzugeordnet sind, prüfen dann ob die einzelnen Werte der Charge i.O. sind.
Sollte die Charge einem Regelwert nicht entsprechen, muss dieses Regelwerk von uns dann dafür gesperrt werden, ein Hinweis in einer
Übersicht.


Regelwerk durch Charge ersten ?  

Dann später bei der Prüfung eine Tabelle mit den Istwerten der Regelwerke&Werkstoff dagegen laufen lassen ?
Oder man müsste wie du es schon mit dem Regelwerk gamacht hast, alle Sollwerte der über den Werkstoff zugeordneten Regelwerke verküpfen und der Charge&Werkstoff gegenüberstellen.
Dann hätte man wieder in der Abfage1  die Istwerte gegen alle Daten der Regelwerke stehen.

Wie Du schon zu recht schreibst, die Auswertung ist dann etwas anderes.

Grüße
-------------------------------------------------------------


20.12.2013

Exettabelle angehängt.

Ich hastte das So vorgesehen:

Fe_Eisen_26  ( das Element)   
Fe_Eisen_26_t ( Eingabe Zusatz für =, <, >, oder R.   "R steht für Rest".  )
Es kann sein, dass bei den Angaben der verschiedenen Elemente z.B. bei Fe oder bei Ni nur rest steht. Hier muss man später durch Adition aller Element festlegen welchen Rest man hat und ob dieser dann wieder zu den Regelwerken passt. Hier wird auch oft der Rest angegeben. Im regelwerk muss man dann all Werte auch der Maxseite addieren und auf der Minseite addieren. Das ergibt dann den Max Und Min für den rst und der Rest kann dann verglichen werden. Mthamatisch nichts besonderes. Aber in der Datenbank darstellen ist dan schon was anderes.

So das war es mal wieder mit Infos.

Immer noch vielen Dank.
Übrigens ich hab gelesen NRW! Du solltes mal mailen wenn du Lußt hast.

..............................................
Hmm.....
stelle soeben fest, wir sind schon einige Antworten weiter. Aber auf der nächsten Seite!!!!!1 ;D ;D ;D ;D

ok. jetzt ist die Antwort hier und auch der Anhang.








Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 19, 2013, 11:01:58
Hallo,
ZitatWie ich sehe, werden bei dir die IstWerte in Abhängigheit zum Regelwerk eingegeben.
Für mein Verständnis falsch, weil die Istwerte erst man unabhängig vom Regelwert sind.
Hier dürfte das Regelwerk noch nicht ins Spiel kommen.
wenn Du die beiden VBA Codes ersatzlos entfernst, ist die Abhängigkeit weg. So einfach ist das.

ZitatDas ist ein Regelwerk: ASTM B637
Genau genommen, ist ASTM das Regelwerk für den Werkstoff B637 oder die Stoffnummer 2.4668
Ein anderes Regelwerk ist dann eine DIN Norm. Ich bin hier etwas vom Fach.

ZitatDa muss später die Abfrage bei der Gegenüberstellung der verschiedenen Regelwerke entsprechend greifen. (schwieriges Ding )
Nein, halte ich für nicht schwierig. Das sollte sich alles mit den beiden Feldern Min und Max machen lassen. Für die Berechnung nimmt man eine Funktion, die in Abhängigkeit welche Felder von Min bzw. Max gefüllt sind und entsprechend rechnet.

Schaue Dir mal die Abfrage1 an, da kannst Du schon rechnen/vergleichen damit. Dies Abfrage muss nur auf das gewünschte Regelwerk gefiltert werden.
Bei korrektem Aufbau der DB wird das alles nicht allzu kompliziert.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: Stapi am Dezember 19, 2013, 13:11:11
Hallo MzKIMu
Zitatnachdem ich hier am lautesten geschrien habe, dass das Datenmodell falsch ist, habe ich mal auf Basis der bisher vorliegenden Infos versucht ein Datenmodell zu erstellen
Wollte für mich noch ein paar Details Sammeln bevor ich das Datenmodel hier hochgeladen hätte. Auf keinem Fall für ein schlechtes Gewissen sorgen weil da du hier so angaschiert bist.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 19, 2013, 13:42:11
Hallo,
@Stefan
ZitatAuf keinem Fall für ein schlechtes Gewissen sorgen
hast Du nicht, meine einleitenden Worte sollten eher der Belustigung dienen.  ;D
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 20, 2013, 13:27:20
Zitat von: Stapi am Dezember 18, 2013, 19:19:35
Hallo

ZitatEs gibt eine Norm, bei uns das Regelwerk, dass sagt aus wieviel % jedes Element haben darf.
zb. | Aluminium max 21% |Kupfer max 4,5% |Titan Min 1,5% Max 4,3% | Nickel Min 71% max 74% | Schwefel max 0,015% | usw.
Kannst du bitte mal alle Zutaten / Werte z.b für den Werkstoff Aluminium zur Verfügung stellen.

Ein Frage hab ich da noch eure Lieferant sendet ein Charge mit z.b Chargen Nr.3232 diese enthält mehre Artikel wie z.b 10mm Aluminium Rund mit den Chemieschen Eigenschaften, 20mm Vierkant ST50 Eisen mit entsprechenden Eigenschaften. Oder ist eine Chargen Nr auch nur ein Artikel.

Zu einer gelieferten Charge können mehrer Stäbe mit verschiedenen Abmessungen eines Werkstoffs kommen.
Auch kann ein Charge später noch einmal durch den lieferanten komme. Ist zwar sehr unwahrscheinlich, aber kann sein.
Im Normalfall muss geprüft werden ob es die Charge schon gibt, ob es wieder der gleiche Werkstoff ist. Wenn nicht muss geprüft werden.
Kann aber nicht ausgeschlossen werden.

Welche Elemente wir haben?
Ich hänge in der nächsten Antwort eine Exeltabelle an.



Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 20, 2013, 13:48:15
Zitat von: MzKlMu am Dezember 19, 2013, 11:01:58
Hallo,
ZitatWie ich sehe, werden bei dir die IstWerte in Abhängigheit zum Regelwerk eingegeben.
Für mein Verständnis falsch, weil die Istwerte erst man unabhängig vom Regelwert sind.
Hier dürfte das Regelwerk noch nicht ins Spiel kommen.
wenn Du die beiden VBA Codes ersatzlos entfernst, ist die Abhängigkeit weg. So einfach ist das.

ZitatDas ist ein Regelwerk: ASTM B637
Genau genommen, ist ASTM das Regelwerk für den Werkstoff B637 oder die Stoffnummer 2.4668
Ein anderes Regelwerk ist dann eine DIN Norm. Ich bin hier etwas vom Fach.

ZitatDa muss später die Abfrage bei der Gegenüberstellung der verschiedenen Regelwerke entsprechend greifen. (schwieriges Ding )
Nein, halte ich für nicht schwierig. Das sollte sich alles mit den beiden Feldern Min und Max machen lassen. Für die Berechnung nimmt man eine Funktion, die in Abhängigkeit welche Felder von Min bzw. Max gefüllt sind und entsprechend rechnet.

Schaue Dir mal die Abfrage1 an, da kannst Du schon rechnen/vergleichen damit. Dies Abfrage muss nur auf das gewünschte Regelwerk gefiltert werden.
Bei korrektem Aufbau der DB wird das alles nicht allzu kompliziert.

Das mit dem vom Fach hatte ich mir schon gedacht.
Ja, Da ist dann die VdTÜV, DIN 17744, DIN 17752, ASME, ASTM, API , AMS BS, DIN EN, DIN usw.

;-)
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 20, 2013, 13:54:12
Zitat von: MzKlMu am Dezember 19, 2013, 13:42:11
Hallo,
@Stefan
ZitatAuf keinem Fall für ein schlechtes Gewissen sorgen
hast Du nicht, meine einleitenden Worte sollten eher der Belustigung dienen.  ;D

Belustigung hat ja geklappt. Grüße an beide.   :P ;D ;D

Übrigens ist heute der vorletze Tag vor Weihnachten. Schon mal viele nette Grüße an euch beide.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: Stapi am Dezember 20, 2013, 14:52:04
Hallo Fautec56

ZitatZu einer gelieferten Charge können mehrer Stäbe mit verschiedenen Abmessungen eines Werkstoffs kommen.
Auch kann ein Charge später noch einmal durch den lieferanten komme. Ist zwar sehr unwahrscheinlich, aber kann sein.
Im Normalfall muss geprüft werden ob es die Charge schon gibt, ob es wieder der gleiche Werkstoff ist. Wenn nicht muss geprüft werden.
Kann aber nicht ausgeschlossen werden.
Unter diesen Umständen gehört aus meiner Sicht die Chargen Nr in eine Tabelle die dann mit der Tabelle Werkstoff Bezeichung ( Maße, etc) in 1:n Beziehung steht, darauf aufgebaut dann eine weitere Tabelle mit der Chemieschen zusammen setzung die dann zur Werkstoff Bezeichung 1:n Beziehung steht.

Wünsche auf diesem Weg ein ruhiges Fest. ;D ;D ;)
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Dezember 22, 2013, 11:48:59
Die Chemie muss meines Erachtens n:1 zu der Charge stehen. Der Werkstoff dann n:1 zur Charge.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: MzKlMu am Dezember 23, 2013, 11:13:59
Hallo,
wenn eine Charge zur Prüfung mehrfach kommt, so bist Du gezwungen eine weitere Tabelle anzulegen (wie das Stefan auch schon angemerkt hat). Das gilt auch wenn es selten ist. In diese Tabelle kommen nur die Daten/Felder die für eine Charge gleich sind. Die jetzige Chargentabelle darf dann nur die Felder enthalten die für die Teilcharge relevant sind. Die Tabelle enthält dann einen Bezug zur Chargentabelle. In der jetzigen Tabelle zur Aufnahme der Istwerte gibt es dann einen Bezug zur Tabelle mit den Teilchargen.

Im Anhang mal ein Bild der Beziehungen der geänderten Tabellenstruktur.
Die Formulare meines ersten Beispiels müssen jetzt natürlich angepasst werden.
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: fautec56 am Januar 03, 2014, 12:17:12
Hallo,
allen ein frohes neues Jahr.
Möchte nur kurz bescheid geben, dass ich noch an dem Thema drann bin.
Die Zeit rennt leider und andere Dinge Drücken.  Hab auch eine neues Thema angestoßen. :-)
Titel: Re: Zwei Datensätze aus zwei verschiedene Tabellen vergleichen.
Beitrag von: Stapi am Januar 03, 2014, 13:35:28
Hallo fautec56

Auch dir ein frohes neues Jahr.
Was du im neuen Beitrag angestoßen hast zielt auf das gleiche Thema ab. Das vergleichen der Grenzwertte benötigt keine großen VBA Kentnisse da das per Abfrage geschieht. Auch wenn sich der Grenzwert verändert ist das über das Änderungsdatum zu ermitteln, die Frage die sich mir hier stellt, was geschieht mit den älteren Chargen wo die Grenzwerte noch zulässig waren und nun durch ändern des Wertes eventuell nicht mehr gültig sind.