Juni 24, 2021, 20:21:40

Neuigkeiten:

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


Formular mit Verknüpfter Tabelle Duplizieren

Begonnen von xxfreestyle20xx, Mai 29, 2021, 09:04:30

⏪ vorheriges - nächstes ⏩

DF6GL

Mai 29, 2021, 18:23:49 #15 Letzte Bearbeitung: Mai 29, 2021, 18:31:43 von DF6GL
Hallo,

dem steht ja nichts entgegen... Ein "Rahmen" in Gänze  (mit seinen Bauteilen und Einzelteilen,  ---> "Template") kann ja mit enstpr. Insert-SQL-Statements als neue DS angelegt werden.... Dieser Vorgang ist dann als "Arbeitsablauf" zu sehen und hat mit der grundlegenden statischen Tabellenstruktur zunächst nichts zu tun. Der Vorgang macht im wahrsten Sinne des Wortes "Datenverarbeitung", aber auf Grundlage des definierten und korrekten Tabellenaufbaus.


Beim Klick auf einen Button in frmRahmen:

1) Füge die Daten eines als Vorlage ausgewählten Rahmens als neuen DS in tblRahmen ein. Merke dabei den neu entstandenen Primärschlüsselwert.
2) Füge die DS der Vorlage aus tblBauteile in tblBauteile hinzu und verwende den gemerkten Primärschlüsselwert des Rahmen-DS. Merke jetzt den neu entstandenen Primärschlüsselwert aus tblBauteile.
3) Füge die DS der Vorlage aus tblBauteilEinzelteile in tblBauteilEinzelteile (mit einer gejointen Abfrage über tblBauteile und tblBauteilEinzelteile) unter Verwendung des gemerkten PKs hinzu.
4) Führe ein Me.Requery aus und positioniere das Form auf den neuen Rahmen-DS.
5) Korrigiere die Daten in Bezug auf sich ändernde Angaben, z. B. Datum, Bezeichnung und Ähnliches, wenn dies nicht gleich mit den SQL-Statements (Abfragen) erfolgt sein sollte.
Fertig.




xxfreestyle20xx

Hallo komme nicht weiter.. Hab das frmRahmen so hergerichtet wie es aussehen soll und kann nun auch über meinen Button die Bauteile übernehmen jedoch bekomme ich das mit den Einzelteilen nicht hin .. Hab meinen 2. SQL Befehl vorerst auskommentiert ( syntax error aber keine ahnung was genau nicht stimmt)



Gibt es noch eine Möglichkeit die Daten zu aktualisieren ohne das man über die Vor / Zurück button gehen muss ?

DF6GL

Hallo,

hast Du überhaupt schon über die letzten Vorschläge nachgedacht und die auch verstanden?


Die ID-Felder (Werte) sind immer noch formatiert.

Stimmen die Beziehungen?  Hat ein Bauteil immer nur "seine" Einzelteile oder gehört ein Einzelteil zu mehreren Bauteilen?


Was ist mit tblStammdaten?


Hinter dem "Button47"  steht immer noch der anfängliche Code und ohne Bezug auf meinen Vorschlag, wie das Ganze zu kopieren wäre.




Beaker s.a.

Hallo,
Ohne n:m-Tabellen wird es nicht gehen, denke ich.

@franz
Habe mal zwei Bilder dran gehängt, da ich nicht sicher bin,
wie man die Beziehungen da einstellt.
Über einen Kommentar deinerseits würde ich mich freuen.

gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

xxfreestyle20xx

Mai 31, 2021, 19:33:46 #19 Letzte Bearbeitung: Mai 31, 2021, 19:50:04 von xxfreestyle20xx
Hallo danke für die Antwort .. Hab gedacht du meintest damit eben SQL über Makro.. Also kurz gesagt nein.. habe die Idee hinter deinem Vorschlag nicht verstanden.. Natürlich kann es sein dass ein Einzelteil bei mehreren Bauteilen vorkommt aber das gäbe dann ja wieder ein problem wenn ich einen Rahmen dupliziere und dann abändere da mir ja dann überall das Einzelteil geändert wird

tblStammdaten wird derzeit noch nicht berücksichtigt..

Was heißt "formatiert" in dem zusammenhang ?

Bin wirklich nicht fit in Access ..


DF6GL

Hallo,


habe im Moment keine Zeit,


nur kurz:

ZitatNatürlich kann es sein dass ein Einzelteil bei mehreren Bauteilen vorkommt aber das gäbe dann ja wieder ein problem wenn


Kein "aber"..  das gilt nicht, es muss die Tabellenkonstruktion stimmen, und zwar 100-prozentig!


@Ekkehard


zunächst würde ich TblBauteileRahmen entfernen und tblRahmen mit tblbauteile verbinden in dem Fall, dass es zu einem Rahmen nur individuelle Bauteile gibt.  Alles Andere wäre IMHO ok.


 

xxfreestyle20xx

Zitat von: DF6GL am Mai 31, 2021, 21:31:32Kein "aber"..  das gilt nicht, es muss die Tabellenkonstruktion stimmen, und zwar 100-prozentig!
Hallo, für mein verständnis ist es ja in access so... wenn ich einen Datensatz dupliziere und dann ändere wird ja der Datensatz mit der ID für alle Bauteile geändert also müsste man die Einzelteile mittels makro immer neu anlegen also beim "kopieren" gibt es eine neue BTID mit neuen ETID ?
Führt dann halt dazu das es sehr viele ET und eben manche auch doppelt in der ET Tabelle gibt.
Da ja ET-> Schraube im Bauteil 1,3 vorkommt aber bei BT nr 2 keine schrauben benötigt werden

Somit ist mein makro für "mich" schon mal nicht ganz falsch weil ich ja die Bauteile mit neuer ID kopieren kann und jetzt nur noch die Einzelteile mittels join kopieren muss .. oder?

MzKlMu

Hallo,
Deine Annahmen in #21 sind schlichtweg alle falsch. Es werden ja nur die Fremdschlüssel kopiert, da ändert sich nichts an den Originaltabellen.
Das Datenmodell passt noch nicht. Sieh Dir mal die Bilder von Ekkehard in #18 an. Ich denke das linke Bild ist richtig.

Ohne Grundlagen zu Access kann man keine DAtenbank erstellen. Und da fehlt Dir noch einiges.

Beschreibe bitte mal die Zusammenhänge genau, ohne mal an eine DAtenbank zu denken.

Hier noch ein Link für die Grundlagen:
https://www.access-tutorial.de/

Gruß
Klaus

Beaker s.a.

Hallo,
Auf Grund von Franz' Anmerkungen habe ich noch das Modell (s. Anlage)
umgestellt. Obwohl ich dies
Zitatin dem Fall, dass es zu einem Rahmen nur individuelle Bauteile gibt.
nicht wirklich verstanden habe.

@franz
Ist das was du gemeint hast?

gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

Beaker s.a.

--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

DF6GL

Juni 01, 2021, 11:03:48 #25 Letzte Bearbeitung: Juni 01, 2021, 11:15:18 von DF6GL
Hallo,

ich meinte damit, dass es ein "Rahmenbauteil" nur für jeweils einen Rahmen gibt. Das ist aber nur meine Interpretation der Beschreibungen des TS.  Ob das stimmt oder ob  hierfür auch eine n:m-Beziehung in Frage kommt, muss der TS nun selber darstellen, bzw. eruieren und das Datenmodell mal genau klarlegen.



Wenn so, wäre Deine erste Version "richtiger", mit ein paar Korrekturen an den Beziehungen.

BauteilID_f  zu BTID löschen
BauteileInRahmenID zu tbl.Einzelteilbauteil.BauteileInRahmenID_f


Beaker s.a.

--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.


Beaker s.a.

--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

DF6GL

Hallo,

anbei mal ein Vorschlag, wie ich es mir vorstelle. Ob das der Situation gerecht wird, muss der TA beantworten.


(Hab's mir nicht verkniffen, die Benamsung nach meinen Regeln zu korrigieren. Die Formulare habe ich auch gelöscht, weil die nicht mehr gepasst haben.)