Hallo zusammen
ich habe ein Hauptformular mit zwei Unterformularen alle drei Formulare sollen einen Datensatz, der auf drei Tabellen verteilt ist, über einen Button, "Datensatz speichern" eintragen. Ist das möglich oder der falsche Weg?
Gruß
Dietmar
Hallo,
ZitatIst das möglich oder der falsche Weg?
eher der falsche weil überflüssige Weg. Wo kommen denn die Daten her die da eingetragen werden sollen ?
Wenn diese aus den Formularen kommen (was ich annehme), warum bindest Du die Formulare nicht einfach über Abfragen an die Tabellen ?
Dann geht alles automatisch, ohne VBA und ohne einen Button.
Und warum ist ein Datensatz auf 3 Tabellen verteilt. Das scheint mir das Hauptproblem zu sein. Ein Datensatz gehört in eine Tabelle.
Hi,
danke für dein Interesse und deine Mühe!
So vieleicht drücke ich mich ja falsch aus?
Ich möchte Schichtdaten als Datensätze erfassen, das heißt, Datum, Schicht, Schichtfolge, Schichtleiter und Fertigungsmaschine (erste Tabelle)Hauptformular, das ist sozusagen der Kopf und ändert sich nur einmal pro Schicht.
Dann kommen die Auftragsdaten wie Auftragsnummer, Material was hergestellt wird usw. Tabelle 2 erstes Unterformular
Nun kommt noch die Auftragsbearbeitung also Details die den Auftrag betreffen z.B. Startzeit aus welchem Material wurde gefertigt Endzeit usw. Tabelle 3 Unterformular 2
Die Daten gehören irgendwie schon zusammen sind aber durch Fremdschlüssel miteinander Verknüpft
Alle einzugebenden Daten bekomme ich nicht über ein Formular geregelt da sie in den Bezihungen nicht direkt verknüft sind.
Bin jetzt seit Tagen damit beschäftigt ein Formular zu erstellen in dem ich die Daten vernünftig für die Erfassung eingeben kann.
Habe die Datei schon mal im Thema ,,Wert in einer Textbox in einem Unterformular" hochgeladen.
Es wäre nett wenn du (ihr ) euch das mal ansehen könntet ob meine Beziehungen so stimmen. Oder ob das alles Bullschitt ist.
Danke!
Gruß
Dietmar
Hallo,
Du musst das mal genauer beschreiben.
Ein Ufo muss über Schlüsselfelder verknüpft sein, sonst funktioniert das nicht.
Diese beiden Sätze (von Dir) widersprechen sich.
ZitatDie Daten gehören irgendwie schon zusammen sind aber durch Fremdschlüssel miteinander Verknüpft
ZitatAlle einzugebenden Daten bekomme ich nicht über ein Formular geregelt da sie in den Bezihungen nicht direkt verknüft sind.
Hallo,
ich werde es versuchen.
Istzustand: Wir erfassen jede Schicht an mehreren Maschinen unsere Schichtdaten in ExcelSheets also 3 pro Schicht, in 24 Std. sind das 9, das möchte ich gerne in einer Datenbank sammeln und auswerten.
Wir haben ein Datum, 3 Maschinen, 3 Schichten und wir haben mehrere Schichtleiter.
Wir haben pro Maschine mehrere Aufträge pro Schicht, die an mehreren Maschinen gleichzeitig bearbeitet werden können.
Ein Auftrag hat immer nur ein Festmaßmaterial (Fertigprodukt, es gibt ca. 1500) aber evtl. mehrere Materialien aus dem er gefertigt werden kann, BM-Material (Rohprodukt, es gibt ca. 11000) die Materialnummern sind eindeutig.
Dann werden noch Details zu den Aufträgen eingegeben z.B. Startzeit, Anzahl der Paletten Qualitätsverluste, Endzeit und ggf. Störungen.
Zu meiner jetzigen Datenbank füge ich mal den Beziehungsbericht als jpg mit an.
Bin für jede Hilfe dankbar
Gruß
Dietmar
Hallo,
und welche Tabellen willst Du jetzt über das Hafo und die 2 Ufos füllen ?
Hallo,
die erste Tabelle wäre die tbl_Schicht
Datum, Schichtleiter, Schichtfolge und Linie, sozusagen der Kopf nur einmal die Schicht zu ändern
die zweite Tabelle tblAuftragsdaten
Auftrag, FMmaterial, Ziehverlauf, Seite, Bemerkung
dritte Tabelle die Auftragsbearbeitung
also die Auftragsdetails
wenn man das nur über ein Formular, also nur über ein Hauptformular regeln kann, wäre mir das auch recht
In den Tabellen tbl FMmaterial und BMmaterial sind die Stammdaten der Materialien hinterlegt die ich über die Fremdschlüssel anspreche
Störungen würde ich über einen extra Button und ein gesondertes Formular regeln
Ich hoffe ich konnte mich verständlich ausdrücken, ich wäre sehr froh wenn du mir die entscheidenen Tipps geben kannst
Vielen Dank und
Gruß
Dietmar
Hallo,
Das Datenmodell sollte noch mal auf den Prüfstand.
Wozu brauchst Du die Tabelle "tblAuf_Schifo" ?
Betrifft ein Auftrag mehrere Schichten, oder wird die Bearbeitung von mehreren Schichten gemacht?
Hi,
und danke für deine Mühe. Ich bin froh das es weiter geht. :)
Ein Auftrag kann in mehrere Schichten fallen einmal, wenn die Frühschicht anfängt und die Mittagschicht weitermacht zum anderen, wenn nicht genug Rohmaterial vorhanden ist, wird abgebrochen und an einem andern Tag fortgesetzt.
Die Tabelle tblAuf_Schifo ist eine Hilfstabelle, weil ich der Meinung bin zwischen Auftragsdaten und Schicht keine 1:n Beziehung herstellen zu können.
Hallo,
ZitatEin Auftrag kann in mehrere Schichten fallen einmal, wenn die Frühschicht anfängt und die Mittagschicht
das ist doch dann aber die Auftragsbearbeitung und nicht den Auftrag selbst. Der ist doch völlig unabhängig von einer Schicht.
Hi,
ich glaube du hast Recht, die Auftragsdaten sind immer gleich, egal in welcher schicht, an welchem Tag, an welcher Maschine.
Hallo,
dann ist diese Tabelle überflüssig und die Schicht gehört als Fremdschlüssel in die Bearbeitung.
Bitte ändern und dann noch mal zeigen.
Hi,
Zitatdann ist diese Tabelle überflüssig
kurze Frage noch, in den Auftragsdaten steht ja die Auftragsnummer die zur Nachverfolgung gebraucht wird bei Reklamationen muss man wissen an welcher Maschine dieser Produziert wurde und zu jedem Auftrag gehört, immer ein FM Material über den fmm_id_f geregelt, wo soll ich die Daten dieser Tabelle den hinpacken?
Hallo,
nirgends, so wie es jetzt ist.
In der Bearbeitung gibt es ein Fremdschlüssel zum Auftrag, damit hast Du alles, was Du brauchst.
Hi,
ich hoffe ich habe dich richtig verstanden, du meintest mit überflüssig meine Hilfsftabelle und nicht die Auftragsdaten.
Beziehungsbericht ist angehängt.
Danke für deine Gedult mit mir Anfänger :)
Hallo,
so halte ich das im Moment noch nicht ganz für richtig.
Die beiden Tabellen "tblFMMaterial" und tblBMMaterial sind ja gleich aufgebaut und daher in einer Tabelle zu führen mit einem Feld für die Materialart (FM, BM).
In der Auftragsbearbeitung benötigst Du dann nur einen Fremdschlüssel.
Für das Formular verwendest Du eine Hauptformular in dem die reinen Auftragsdaten dargestellt werden und darin einem über die Schlüsselfelder (auf_ID und auf_ID_f) verknüpften Unterformular. Datenherkunft dieses Formulars ist die Auftragsbearbeitung. Das Fremdschlüsselfeld (auf_ID_f) wird automatisch übertragen. Die Fremdschlüssel für Material, Linie und Schicht werden per Kombi gewählt.
PS:
Entferne unbedingt alle Leerzeichen in den Feldnamen.
Hi,
vielen Dank das mache ich so, soll ich die Materialnummern mit einer ID belegen oder ist es besser die Materialnummern als ID zu nehmen da sie eindeutig sind.
Hallo,
welcher Datentyp ist die Materialnummer ?
Wenn Zahl dann PK
Wenn Text extra Autowert als ID/PK.
Textfelder sind als Schlüsselfelder nicht geeignet, da ein Textvergleich langsamer ist als ein Zahlenvergleich.
Noch was, hatte ich vorhin vergessen. Lege für die Materialart (FM, BM) eine Tabelle an mit einem eigenen PK (Autowert). In die eine Materialtabelle kommt dann die Art als Fremdschlüssel und nicht als Text.
Hi,
die Material-Nr. hatte ich als Text definiert, weil ich die Eingabe auf 7 Stellen begrenzen wollte.
Dann werde ich auf noch ein Problem stoßen, es gibt in den Materialnummern für FM, 100.... Materialnummern.
Die Besonderheit dieser Nummern ist das die Länge und Breite sowie Blattzahl variabel sind. Das bedeutet, das ich diese Daten gesondert erfassen muss, wie kann ich dies bewerkstelligen? Brauche ich dafür eine extra Tabelle?
Die Daten werden für die Auswertung benötigt.
Hallo,
Zitatdie Material-Nr. hatte ich als Text definiert, weil ich die Eingabe auf 7 Stellen begrenzen wollte.
das würde auch mit einer Zahl gehen. (<=9999999).
Verwende für die ID einen Autowert.
Die Besonderheit dieser Nummern ist das die Länge und Breite sowie Blattzahl variabel sind.das verstehe ich jetzt nicht, Du hast doch in der Materialtabelle ein Felder Länge und Breite mache doch noch ein Feld für die Blattzahl.
Zeige mal ein aktuelles Beziehungsbild.
Hallo,
Danke für deinen Einsatz!
Also noch mal im Prinzip sind die Material Nr. eindeutig sie definieren die Dicke und Farbe des Materials, bei 200.... zudem die Länge Breite und Blattzahl. Nun die Besonderheit ein Kunde bestellt eine Abmessung die wir nicht in den Stammdaten erfasst haben dann wird auf das 100.... Material zurückgegriffen Farbe und Dicke eindeutig und die Maße werden Manuel eingegeben die kann ich auch nicht vordefinieren.
Hallo,
lege für den Sonderwunsch des Kunden einen neuen Datensatz für 100er Material an und schon hast Du das Problem erschlagen. Irgendwann kommt der Kunde mit dem gleichen Sonderwunsch, dann hast Du es schon erfasst.
Das hört sich einfach an. Erst einmal sind die 100... ja in der Materialnummerntabelle enthalten, meinst du ich sollte die daraus trennen und eine separate Tabelle anlegen?
Hallo,
ZitatErst einmal sind die 100... ja in der Materialnummerntabelle enthalten,
und, wen stört es.
Zitatmeinst du ich sollte die daraus trennen und eine separate Tabelle anlegen?
nein, das hatten wir ja schon mal.
Du legst einfach für den Sonderwunsch des Kunden ein Material als neuer Datensatz an. Zur eindeutigen Unterscheidung hast Du ja die ID (Autowert).
Und noch mal die Bitte nach einem aktuellen Beziehungsbild.
Hi,
Danke ich arbeite an dem neuen Beziehungsbild, wenn es fertig ist sende ich es, aber erst morgen ich brauche jetzt eine Pause. Ich bin froh das du mich so unterstützt. :)
Hi,
ich hoffe du hast noch Lust hier mit mir weiterzumachen. :)
Wenn ich alles richtig verstanden habe, habe ich deine Anweisungen umgesetzt!
ZitatDie beiden Tabellen "tblFMMaterial" und tblBMMaterial sind ja gleich aufgebaut und daher in einer Tabelle zu führen mit einem Feld für die Materialart (FM, BM).
die Tabelle heißt tblMaterial und hat die Mat_ID als Autowert
Zitatdas würde auch mit einer Zahl gehen. (<=9999999)
das habe ich in der Gültigkeit so eingestellt
Zitat
lege für den Sonderwunsch des Kunden einen neuen Datensatz für 100er Material an und schon hast Du das Problem erschlagen. Irgendwann kommt der Kunde mit dem gleichen Sonderwunsch, dann hast Du es schon erfasst.
wie kann ich beim Anlegen der 100er doppelte Datensätze verhindern.
Das heißt: MatNr., Dicke, Farbe, sind gesetzt, Länge, Breite und Blattzahl können abweichen ein Duplikat wäre, wenn alle Werte gleich sind.
Hallo,
wieso hast Du jetzt plötzlich einen Fremdschlüssel zum Material in der Auftragsbearbeitung ?
Kann während der Bearbeitung das Material wechseln ?
Das war doch bisher nicht. Hatte ich auch nicht vorgeschlagen.
Zitatwie kann ich beim Anlegen der 100er doppelte Datensätze verhindern
Du kannst über die relevanten Felder einen eindeutigen zusammengesetzten Index anlegen.
Hallo,
danke das du dir wieder Zeit für mich nimmst!
Zu jedem Auftrag gehört ein eindeutiges FM Material (Fertigprodukt), das im Auftrag nie wechselt, das BM Material (Rohprodukt) kann in einem Auftrag mehrmals wechseln.
Um nachher die m² vom Fertigprodukt und die m² des verbrauchten Rohproduktes miteinander zu vergleichen bzw. Verluste zu errechnen glaube ich brauch ich das. Oder habe ich doch was falsch verstanden?::)
Hallo,
dann kannst Du das so lassen, bzw. muss so bleiben.
Ich bin erst heute Abend wieder am PC.
Alles klar!
danke,danke, danke!
Hi,
habe jetzt ein Hauptformular frmSchicht erstellt, da werden die Daten zur Schicht eingegeben und gespeichert, Datum, Schichtfolge, Schichtleiter
darin das 1.Unterformular frmAuftragsdaten, hier werden die Daten zum Auftrag eingegeben, AuftragsNr., FM Material, der Ziehverlauf und die Seite.
Dann das 2.Unterformular frm Auftragsbearbeitung mit den Details zum Auftrag.
Frage: Wie kann ich doppelte Einträge verhindern und melden?
Wenn im Hautformular Datum und Schichtfolge gleich sind, habe ich einen doppelten Datensatz, der nicht benötigt wird!
1. Unterformular
Wenn die Auftragsnummer vorhanden ist, habe ich einen doppelten Datensatz, der nicht benötigt wird!
Hallo,
so rum wird das nichts. Du kannst die Schicht nicht als Hafo nehmen. Hafo wird der Auftrag und Ufo die Auftragsbearbeitung. Die zutreffende Schicht wird dann in einem Datensatz des Ufos gewählt/eingetragen, denn dort ist ja auch deren Fremdschlüssel. Du benötigst nur ein Ufo. Das Hafo enthält nur die Daten des Auftrags.
Doppelungen sollte es dann nicht mehr geben.
Hi,
schade wieder einiges umsonst gearbeitet ;D was würde ich nur ohne euch hier machen ::) und ihr ohne mich :) :)
Habe ich keine Möglichkeit die Schichtdaten zuerst einzugeben? Sozusagen als Kopf, das habe wir bei unserem Excelsheet bis jetzt immer so eingeben müssen und würde ich auch als Reihenfolge so begrüßen.
Datum
Schichtfolge
Schichtleiter
Auftrag
FM Material
Ziehverlauf
Seite
dann Auftragsdetails
Hallo,
nein, das kann nicht gehen. Es gibt keine Beziehung zwischen Schicht und Auftrag. Der Fremdschlüssel Schicht ist in der Auftragsbearbeitung. Wenn Du Dir das Beziehungsbild anschaust, muss Dir das eigentlich klar sein.
Hi,
ich gebe nicht auf, ein letztes Mal.
Wenn ich die schicht_id-f anstatt in die Auftragsbearbeitung in die Auftragsdaten packe, geht das nicht vielleicht so rum?
Hallo,
Du kannst doch nicht die Beziehungen so legen, wie es Dir passt... Die Beziehungen müssen die realen Datenverhältnisse reflektieren...
Hi,
ok, dann mach ich das so wie mein Lehrer MzKIMu mir das hier beschrieben hat.
Vielen Dank auch für deine Einschätzung.
So langsam fängt es an Spaß zumachen und an dieser Stelle muss ich das Forum mal loben, sehr gute Unterstützung hier, immer bereit zu jeder Zeit, super :)