Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Stückliste auflösen

Begonnen von starbug08, Januar 27, 2012, 10:14:30

⏪ vorheriges - nächstes ⏩

starbug08

Hallo allerseits,

ich würde gerne wissen, wie man eine Stückliste auflösen und sich diese anzeige lassen kann, egal ob in einem Bereicht oder einem Formular. Ich habe eine große Master Tabelle in der Produkte stehen und Teile welche in die Produkte eingehen. Ich würdees gern so haben das als Auflösung z.B. Produkt A steht und darunter welche Artikel dort zugehören mit Preis und Infos.

Kann mir jemand einen Tip geben?

Wurliwurm

Stücklisten sind normalerweise hierarchisch aufgebaut. Du brauchst eine Tabelle in der Du die Baumstruktur hältst.
Und dann gehst Du ausgehend von der Wurzel eines Produkts den Baum durch, bis Du bei den einzelnen Blättern bist.

Das ganze hat mit Access an sich wenig zu tun. Goggle mal nach Baum traversieren

database

Hallo,

statt mit irgend welchen Verrenkungen die Daten aus der Tabelle zu quetschen solltest du dir ganz schnell Gedanken dazu machen, die Master-Tabelle zu zerlegen.
Das was du benötigst ist eine Struktur mit einer Haupttabelle, in der die Produkte und deren Haupteigenschaften stehen sowie einer Detailtabelle in der die Artikel und deren Attribute zu speichern sind.
Je nach dem ob ein Artikel in mehreren Produkten enthalten sein kann, ist die Beziehung zwischen den Tabellen direkt als 1:n Beziehung oder über eine Zwischentabelle zur Auflösung einer n:m Beziehung auszuführen.

ZitatDas ganze hat mit Access an sich wenig zu tun
Stimmt, denn das hat mit Datenbankdesign zu tun und ist danach auf Access 1:1 anzuwenden.

Wurliwurm

#3
Steht weiter unten, bin auf den Speicherknopf gekommen

database

Hallo,

ZitatDamit bekommt er keine hierarchische Beziehung zusammen bzw. kann nur ganz primitive Stücklisten modellieren

Was an einem normalisierten Tabellenmodell primitiv sein soll habe ich zwar noch immer nicht verstanden - aber wenn du das so siehst soll es es meinetwegen so sein.

Wurliwurm

Zitat von: database am Januar 28, 2012, 17:39:51irgend welchen Verrenkungen die Daten aus der Tabelle zu quetschen

Dazu braucht es keine Verrenkungen, sondern nur etwas Methodenwissen, dann kann man das ganz elegant lösen ;-)

Zitat
Je nach dem ob ein Artikel in mehreren Produkten enthalten sein kann, ist die Beziehung zwischen den Tabellen direkt als 1:n Beziehung oder über eine Zwischentabelle zur Auflösung einer n:m Beziehung auszuführen.

Damit bekommt er keine hierarchische Beziehung zusammen bzw. kann nur ganz primitive Stücklisten modellieren. Vielleicht langt das ja für Deine Kunden bzw Aufgaben, aber...

Hier ein ganz primitives Beipiel für eine hierarchische Stückliste in einer flachen Relation:

ID                   Parent      Menge
AUTO              NULL        1
KAROSSERIE   AUTO        1
RAD                AUTO         4
FELGE             RAD          1
REIFEN            RAD          1
MOTOR           AUTO         1
ZYLINDER      MOTOR       8

Die Einzelteile eines Autos kann er ganz simpel rekursiv auslesen mit folgendem Algorithmus

Sub Aufloesen(byval parent)

SELECT * WHERE ParentID = parent

if bof = true and eof = true
 'Es handelt sich um ein Blatt
 Füge den Eintrag mit ID parent in die Einzelteilentabelle ein unter
 Berücksichtigung der Menge
else
 do while not eof
    call Aufloesen(rs!ID)
    next
 loop
end if

End Sub

Mit den IDs und Mengen aus Einzelteiltabelle kann er aus der Produktstammdatentabelle die Preise etc. dazulesen.

Zitat
das hat mit Datenbankdesign zu tun und ist danach auf Access 1:1 anzuwenden.

Die Aufgabe "Stückliste auflösen" hat etwas mit dem Fach "Algorithmen und Datenstrukturen" zu tun.

Wurliwurm

Zitat von: database am Januar 29, 2012, 15:04:52
Hallo,

ZitatDamit bekommt er keine hierarchische Beziehung zusammen bzw. kann nur ganz primitive Stücklisten modellieren

Was an einem normalisierten Tabellenmodell primitiv sein soll habe ich zwar noch immer nicht verstanden - aber wenn du das so siehst soll es es meinetwegen so sein.

Ein Modell ist falsch, wenn es die Realität nicht korrekt wiedergibt.

Nimm folgendes Beispiel: Du sollst ein Modell für einen Kindergarten modellieren.
Dann nimmst Du eine Tabelle mit den Daten der Eltern und eine Tabelle mit den Daten der Kinder mit 1:n-Relation. Das bekommst Du sicherlich hin.

Aber einen Stammbaum (wo Eltern wieder gleichzeitig Kinder sind) in einer relationalen DB abbilden zu können, da wäre ich mir nicht so sicher...


database

 ::)

Aber einen Stammbaum (wo Eltern wieder gleichzeitig Kinder sind) in einer relationalen DB abbilden zu können, da wäre ich mir nicht so sicher ...

8)

Na zum Glück hat die Welt ja dich und wir brauchen darüber nicht weiter zu diskutieren

DF6GL

Hallo,

@starbug08:

http://access.mvps.org/access/downloads/celkobom.zip
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

bahasu

Hallo,

vor einiger Zeit hatten wir doch schon mal die Nachfrage nach einem Stammbaum.

Ging nicht um Menschen, sondern um "süße kleine" Schafe.  ::)
http://www.access-o-mania.de/forum/index.php?topic=14210.msg85748;topicseen#msg85748

Auch dort können die Töchter die Mütter von den Enkeln sein.  ;D

Harald
Servus