AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken artikel mit stücklisten in db abbilden
Thema durchsuchen
Ansicht
Themen-Optionen

artikel mit stücklisten in db abbilden

Ein Thema von khh · begonnen am 10. Jan 2010 · letzter Beitrag vom 11. Jan 2010
Antwort Antwort
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.903 Beiträge
 
FreePascal / Lazarus
 
#1

artikel mit stücklisten in db abbilden

  Alt 10. Jan 2010, 06:53
Datenbank: firebird • Version: 2.1 • Zugriff über: zeos
hallo zusammen,
wie würdet ihr folgende Anforderung in einer DB abbilden.(3te Normalform?)

Artikel mit Stücklisten.
Der Artikel kann sich sowohl aus "Rohteilen" sowie auch aus "Fertigteilen" zusammen setzten.
Diese Fertigteile wiederum müssen sich in der gleichen Tabelle befinden wie die anderen zusammengesetzten Artikel.

Als Beispiel:
Möbelhaus

Küche besteht aus Herd, Kühlschrank, Tischgruppe, Spüle usw.

Tischgruppe kann auch separat verkauft werden.
Spüle gibts nur im Kücheneinbau, diese hat also in der Tabelle Artikel nix verloren.
Die Tischgruppe aber schon.

Danke für eure Ideen

Gruss KH
Karl-Heinz
  Mit Zitat antworten Zitat
Berni68

Registriert seit: 9. Jan 2006
Ort: Villingen
162 Beiträge
 
Delphi XE5 Professional
 
#2

Re: artikel mit stücklisten in db abbilden

  Alt 10. Jan 2010, 07:56
Tabelle Artikel:
----------------
IdArtikel (Primärschlüssel)
ArtArt (Bool: Rohteil oder Fertigteil)
Benennung

Tabelle Stückliste:
-------------------
IdStueck (Primärschlüssel)
IdArtikel (Referenz zu Tabelle Artikel)
Anzahl

Zitat:
"Spüle gibts nur im Kücheneinbau, diese hat also in der Tabelle Artikel nix verloren."
Muss aber drin sein, kann aber wenn nur Fertigteile sichtbar sein sollen mit ArtArt ausgeblendet werden.
Vorteil: Man hat zu jedem Artikel die Stückliste sofern sich in der Tabelle Stückliste
entsprechende Einträge befinden, man kann aber auch die Tabelle Stückliste andersrum als Verwendungsnachweis nutzen, d.h. in welchen Artikeln ist z.B. die Spüle verbaut.
Bernhard
  Mit Zitat antworten Zitat
Reinhard Kern

Registriert seit: 22. Okt 2006
772 Beiträge
 
#3

Re: artikel mit stücklisten in db abbilden

  Alt 10. Jan 2010, 08:57
Zitat von Berni68:
Zitat:
"Spüle gibts nur im Kücheneinbau, diese hat also in der Tabelle Artikel nix verloren."
Muss aber drin sein, kann aber wenn nur Fertigteile sichtbar sein sollen mit ArtArt ausgeblendet werden.
Viele Teile sind ambivalent, ich kenne das Problem aus der Elektronik-Fertigung: ein Netzteil kann man als Netzteil verkaufen, es kann aber auch Teile eines PCs sein. Das Netzteil wiederum enthält eine oder mehrere Platinen, die wiederum nach Stückliste gefertigt werden müssen, ev. auch ausser Haus, oder sie werden zugekauft. Andrerseits kann der PC Teil einer Anlage sein...

Das ganze ist also rekursiv aufgebaut über mehrere Stufen, aber das ist kein Problem der DB, sondern der Auswertesoftware. Es fragt sich, ob man überhaupt zwischen Artikeln und Teilen unterscheiden kann, im Prinzip können viele Teile beides sein - die Frage bei einem Teil ist nur, kann man es einkaufen (vom Widerstand bis zum fertigen PC) und kann man es verkaufen, wobei sich beides keineswegs ausschliesst, und eine einfache Lagerverwaltung für Händler fällt so nebenbei mit ab (für den Händler ist alles EK und VK, er fertigt nichts).

In der Praxis ergeben sich noch genügend Detailprobleme, und es ist erhebliche Disziplin in der Anwendung notwendig: wenn ich in eine Laborschaltung einen zusätzlichen Widerstand einlöte, muss ich in in der Lagerverwaltung austragen. Gelöst werden muss auch das Problem der Reservierung: ein Kunde bestellt 10 Netzteile - 4 sind auf Lager, dazu 2 Platinen, und für die übrigen werden Bauteile gebraucht. Alles das muss reserviert werden, wenn dem Kunden der Auftrag bestätigt wird, und steht für andere Projekte nicht mehr zur Verfügung. Lieferzeiten sind auch noch zu beachten. Und damit es nicht so einfach wird und sich die Sache lohnt, lasse ich nicht die fehlenden 4 Netzteile, sondern gleich 25 fertigen.

Nur mal so als Grundlage. Das Thema ist vielfach komplexer als etwa eine Buchhaltung.

Gruss Reinhard
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.903 Beiträge
 
FreePascal / Lazarus
 
#4

Re: artikel mit stücklisten in db abbilden

  Alt 10. Jan 2010, 09:43
Zitat von Berni68:
Tabelle Artikel:
----------------
IdArtikel (Primärschlüssel)
ArtArt (Bool: Rohteil oder Fertigteil)
Benennung

Tabelle Stückliste:
-------------------
IdStueck (Primärschlüssel)
IdArtikel (Referenz zu Tabelle Artikel)
Anzahl


Muss aber drin sein, kann aber wenn nur Fertigteile sichtbar sein sollen mit ArtArt ausgeblendet werden.
dann nehmen wir ein anders Beispiel:
Kochrezepte!

Hier sind die Zutaten (Stückliste)sprich Kartoffen, Nudeln, Mehl usw. wohl unbedingt in einer separaten Tabelle (Zutaten).
Trotzdem muss es möglich sein, Produkte aus "Artikel" zusätzlich in der Stückliste zu verwenden, da so was vorkommen kann.
In diesem Fall würde ich die Artikel die auch als "Zutat" verwendet werden können, redundant in Zutaten speichern.
oder seht ihr ne andere Möglichkeit?

Gruss Kh
Karl-Heinz
  Mit Zitat antworten Zitat
Berni68

Registriert seit: 9. Jan 2006
Ort: Villingen
162 Beiträge
 
Delphi XE5 Professional
 
#5

Re: artikel mit stücklisten in db abbilden

  Alt 10. Jan 2010, 10:06
Eben gerade nicht:

Artikeltabelle:
---------------
Art. Benennung Mengeneinheit
01 Rührei Portion
02 Eier Stück
03 Speck gramm
04 Salz gramm
05 Pfeffer gramm

Stücklistentabelle:
-------------------
IdStueck IdArt Menge
01 02 3
01 03 100
01 04 5
01 05 10

ok. Ich hab das oben falsch beschrieben, IdStueck ist natürlich nicht der Primärschlüssel
sondern gibt nur die Zeilen für die Stückliste von Rührei an.
d.h. wenn ich das Kochrezept für Rührei haben will gebe ich die Zeilen der
Stücklistentabelle aus bei denen IdStueck=01 ist.
Wobei nicht notwendigerweise in der Stücklistentabelle IdStueck mit der Artikelnummer belegt sein muss, sondern eine eigene Nummer, es könnte für Rührei ja auch mehrere verschiedene Rezepte geben.
Für Eier, also Art.02 bibt es in der Stücklistentabelle keine Zeilen bei denen IdStueck=02 ist.
In einer weiteren Tabelle 'Arbeitsplan' kann man dann in gleicher Art und Weise hinterlegen was mit dem Zeug gemacht werden muss.
Bernhard
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

Re: artikel mit stücklisten in db abbilden

  Alt 10. Jan 2010, 11:30
Code:
Artikel-Tabelle:
================
Feld  P Beschreibung
------ - ----------------------------------------
ArtID 1 ArtikelID
SetArt  Ist Set-Artikel? (Ja, Nein)
EinzVK  Darf einzeln verkauft werden? (Ja, Nein)

Set-Tabelle:
============
Feld P Beschreibung
----- - ---------------------------------------------
SetID 1 Referenz auf die ID des Set-Artikels
ArtID 2 Referenz auf die Artikel, die zum Set gehören
Menge  Anzahl im Set
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: artikel mit stücklisten in db abbilden

  Alt 11. Jan 2010, 15:51
Hallo,

bei Stücklisten gibt es Stücklisten-Positionen.
Jede Position hat eine Referenz auf das Teil

Wurzel der Stückliste ist selbst auch ein Position / Teil (das Zusammenbauteil).

Die Beziehung von OT/UT ist eine eigene Tabelle

Tab1 Part Teile
PartId
PartName


Tab2 PartsList Stücklisten
PartsListId


Tab3 PartsListPos Stücklisten-Positionen
PartsListPosId
PartsListId Referenz auf Tabelle PartsList
PartId Referenz auf Tabelle Part
OTPosId Referenz auf PartsListPos (Oberteil)
Number Integer Anzahl der Teile der Position


Knackpunkt ist OTPosId als Anzeige,
zu welcher Position das Teile gehört.


Wenn jetzt die Frage aufkommt, warum die Teile nicht direkt verlinkt sind ...

Bei einer Stückliste muss auch angeben werden,
wie viele Unterteile zu einem (Ober)teil gehören

Stk-Liste
Teil 1
Teil 1.1 2 Stück
Teil 1.2 1 Stück
Teil 2

...


Heiko
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz