Neuigkeiten:

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

Mobiles Hauptmenü

Anfäger sucht Hilfe für DB-Aufbau

Begonnen von terrajoerg, Januar 11, 2020, 15:34:07

⏪ vorheriges - nächstes ⏩

terrajoerg

Hallo Gemeinde,
ich möchte mich gerne in Acess einarbeiten um eine DB zuerstellen für eine Lagerverwaltung.
Sollte ich hier falsch sein so teilt mir das bitte mit, bin wie gesagt Anfänger, bis jetzt habe ich es über Exel gemacht aber ich brauche nun eine Monatliche Auswertung der Bestände was zwar mit Exel auch möglich wäre mir aber der Aufwand zu groß ist.
Es geht um ein Pulverfarben Lager wo monatlich die Zu- und Abgänge erfasst werden sollen, Zugang sind immer volle kg, Abgang aber manchmal nur 0,1 kg habe mich da schon versucht aber an den 100g bin ich schon gescheitert da irgendwie das Komma nicht akzeptiert wird.
Es ist doch richtig das ich eine Tabelle mit den Artikeln brauche, eine für den Bestand und eine für die Zu-und Abgänge? Leider klemmt es da schon bei den Beziehungen unter den Tabellen unter einander bei mir  :'(

Ich habe also einen Artikel "A" wo ich am 9.01. 20kg bekommen habe und am 10.01. 0,1kg davon verbraucht habe - nun brauche ich eine Auswertung das ich im Januar 0,1kg vom Artikel "A" verbraucht habe und der Bestand nur noch 19,9kg ist.

Wenn ich mich etwas umständlich ausgedrückt habe könnt Ihr gerne Nachfragen.
Danke schonmal für die Hilfe
MfG
Jörg


MzKlMu

Hallo,
eine Tabelle für den Bestand ist überflüssig.
Du musst nur Zugang (+) und Abgang (-) erfassen.
Der Saldo ist dann der Bestand.
Welchen Datentyp Gast Du denn für das Gewicht verwendet?
Gruß Klaus

terrajoerg

Hallo,
ich habe nur "Zahl" gewählt was wahrscheinlich falsch war, kann es aber nicht mehr ändern da ich nicht weiß wo, kann also nicht mit Kommastellen arbeiten.

terrajoerg

Hallo,

habe mal meinen ersten Anfang eingefügt, bitte nicht erschlagen weil da nicht viel drin ist  :-[

MzKlMu

Hallo,
erst mal ganz kurz:
Zugang und Abgang gehören in ein Feld, Zugang positiv und Abgang negativ.
Das Feld hast Du auf LongInteger stehen, das muss Double werden. Integer kennt keine Kommazahlen.

Was ist den RAL die RAL Farben ?
Wieso ist die in beiden Tabellen, 1x als Zahl ud 1x als Text ?
Was bedeutet das kleine f vor den Feldnamen ?
Gruß Klaus

DF6GL

Hallo,

zusätzlicher Hinweis:


Wenn man Rundungsfehler bei der Bestandberechnung vermeiden will,  sollte man für "Menge"

-- entweder den Datentyp "Währung"  (Formateinstellung "Euro" entfernen) bei Einheit "kg"
-- oder die kleinstmögliche Mengeneinheit, hier wären das Gramm, mit Datentyp Long Integer

benutzen.


terrajoerg

Hallo,

danke erstmal für die Hinweise und Tip.
ZitatZugang und Abgang gehören in ein Feld, Zugang positiv und Abgang negativ.
Das Feld hast Du auf LongInteger stehen, das muss Double werden. Integer kennt keine Kommazahlen.
wurde geändert
ZitatWas ist den RAL die RAL Farben ?
Ja sind die Farben habe es jetzt mal in "Artikel" geändert
ZitatWieso ist die in beiden Tabellen, 1x als Zahl ud 1x als Text ?
wurde auch geändert, sind so kleine Fehler die man als Anfänger macht, das "f" habe ich auch entfernt, wurde mir empholen um die einzelnen Felder, Zellen oder Spalten zu unterscheiden.
Für "Menge" habe ich jetzt Währung verwendet.

Nun funktioniert meine Eingabemaske für die Eingabe von Zu-bzw.Abgänge nicht wirklich, es zeigt mir immer den ersten Datensatz an den ich da nur ändern kann.
Desweiteren bekomme ich es nicht hin den Zugang und den Abgang getrennt anzeigen zulassen, den aktuellen Bestand habe ich irgendwie geschaft, nun brauche es es noch getrennt für Zugang und Abgang.
Was benutze ich dafür?

DF6GL

Hallo,


siehe Anlage.

Vor der Formularerstellung muss der Tabellenaufbau korrekt und normalisiert sein.  (Feld "Hersteller" könnte auch ausgelagert werden)

Bessere (eindeutige) Benamsung verwenden.

Das Formular kann als Endlosform ausgelegt werden, dann kann man gezielt den neuen DS "ansteuern".

Bei einer Bestands-Abfrage darf Feld "Menge"  nicht gruppiert nur berechnet werden.


terrajoerg

Hallo,
warum geht das bei Euch so einfach und unkompliziert, ich tuhe mich da total schwer, muss mir sicher mal eine Lektüre zulegen.
Feld "Hersteller" kann auch weg, kann ich auch beim Artikel mit hinterlegen (z.B.1000ppg) wäre dann bei der Bestandveränderung eh sinniger da ich ja nur den Artikel angezeigt bekomme und nicht den Hersteller. (es gibt Artikel 1000 HerstellerA und Artikel 1000 HerstellerB z.B.)
Das Formular für die Eingabe ist auch fast perfekt so, es wäre nur schöner wenn das aktuelle Datum direkt gleich angezeigt wird und wenn man den "TAB" drückt die Eingabe auf Artikel und nicht gleich auf die Menge springt.

Ich kann nun die Berichte "Verbrauch" und "Bestand" erstellen, bei Verbauch brauche ich ja den monatichen Verbrauch pro Artikel, also alle Abgänge summiert pro Artikel.
Vielleicht kann mir da jemand nochmal helfen, bedanke mich schonmal.

MfG
Jörg

Beaker s.a.

Hallo Jörg,
Zitates gibt Artikel 1000 HerstellerA und Artikel 1000 HerstellerB z.B.)
Dann brauchst du die Tabelle "Hersteller" und eine Zwischentabelle
(n:m) "HerstellerDerArtikel" mit den Fremdschlüsseln (FK) zu ArtikelID und
HerstellerID. Denn verschiedene Lieferanten kannst du nicht
Zitatbeim Artikel mit hinterlegen (z.B.1000ppg)

Zitateh sinniger da ich ja nur den Artikel angezeigt bekomme und nicht den Hersteller.
Deshalb nimmst du statt der ArtikelID als FK in "Bewegungen" die ID aus der
Zwischentabelle, womit du Zugriff auf beide Informationen hast (Abfrage über
alle drei Tabellen für die Klarnamen).

Zitatden aktuellen Bestand habe ich irgendwie geschaft
Wie?
Zitatbrauche es es noch getrennt für Zugang und Abgang.
Ist doch nur eine zusätzliche Bedingung; - Menge < 0 = Abgang, Menge > 0 = Zugang.

gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

terrajoerg

Hallo,

es wäre für mich aber einfacher es beim Artikel mit zu hinterlegen, es sind von den zur Zeit 120 Artikeln nur 6 von einen anderen Hersteller wo sich eine extra Hersteller Tabellle nicht lohnt.
Es gibt ja auch noch den Artikel 1000matt, 1000feinstruktur, 1000grobstruktur, da nun für alles eine extra Tabelle anzulegen sprengt den Rahmen des wirklich benötigten.
Auch möchte ich den Eingabeprozess so einfach wie möglich gestalten. Auch wird mir die Umsetzung wieder etwas kompiziert  :'(, so wie es jetzt ist reicht mir das vollkommen erstmal,möchte mir als Anfänger nicht noch mehr Fallstricke einbauen und erstmal die Funktion von Acess verstehen, habe das ganze ja bis jetzt mit Exel gemacht aber durch die monatliche Auswertung welche ich jetzt brauche etwas an die Grenzen von Exel gestoßen, klar ist es damit auch möglich aber der Aufwand ist mir zu groß.

MfG
Jörg

MzKlMu

#11
Hallo,
Mache das gleich richtig. Irgendwann hast Du 12 Hersteller statt der 6 und dann fängt die Pfrimelei an. Artikel-Hersteller ist eine n:m Beziehung, da führt kein Weg dran vorbei.
Das ist alles ein Frage der Darestellung.
Du erstellst ein Hauptformular für die Artikel.
In dieses Hafo kommmt eine Register mit 2 Seiten. Auf die Seite 1 kommt ein Unterformular für Zugang und Abgang zu diesem Artikel und auf der anderen Seite ein Ufo für die Erfassung der Hersteller dieses Artikels.

In diesem einen Formular kannst Du alles erfassen was Du brauchst. Im Hafo kann auch ein Feld angelegt werden, das den aktuellen Bestand des Artikels zeigt. Du siehst dann auch auf einen Blick alle Hersteller dieses Artikels.

Zitat1000matt, 1000feinstruktur, 1000grobstruktur
Sind das Einträge in einem Feld ?
Wenn ja, wäre auch das für eine Datenbank ungeeignet.
Hier ist eine weitere Tabelle notwendig in der matt, feinstruktur, grobstruktur als je ein Datensatz mit einem Feld für den Primärschlüssel. In der Artikeltabelle gibt es dann ein Fremdschlüsselfeld für die Struktur. Auch solltest das Feld RAL in die Artikeltabelle wieder aufnehmen, ich hatte ja nur das 2 malige Vorhandensein angesprochen.
Weiterhin, solltest Du in der ZugangAbgantabelle ein Feld anlegen mit einem Faktor (-1 für Abgang und +1 für Zugang). Die Menge wird dann mit diesem Faktor multipliziert, das erspart das lästige Eingeben des Vorzeichens.

Du musst Dich vollständig von der Exceldenke lösen. Access erfordert einen völlig aneren Tabellenaufbau. Gerade im Hinblick auf Deine Auswertungswünsche wirst Du Dich ausführlich mit Access beschäftigen müssen. Access mus man lernen, da geht nix intuitiv wie bei Word oder Excel.

Gruß Klaus

terrajoerg

Hallo,

ach so einfach ist das ;) nein Spaß bei Seite :-\
Wie lerne ich denn am besten Acess, welche Lektüre ist denn zu empfehlen?
Mit rumbasteln und probieren komme ich hier sicher nicht weiter.
Ich weiß nun nicht mal mehr was in eine Tabelle oder in ein Formular geschweige was in eine Kategorie kommen soll, hatte gedacht das alles über verschiedene Tabellen eingegeben wird (Grundgrüst), Zu-und Abgang dann über ein Fomular eingegeben wird und ich eine Ausgabe über einen Bericht bekomme.
Dachte ich habe es fast geschafft aber nun werde ich wieder auf den Boden der Realität zurück geholt.  :-[

Nachdenkliche Grüße
Jörg

MzKlMu

Hallo,
Du solltest natürlich auch die Fragen beantworten.
ZitatSind das Einträge in einem Feld ?

Hier mal 2 Links:
Mehr Theorie:
https://www.hdm-stuttgart.de/~riekert/lehre/db-kelz/
Aus der Praxis:
https://www.access-tutorial.de/

Versuche Dich mal daran, dann meldest Du Dich noch mal.
Dann sehen wir weiter, Du kriegst hier schon geholfen, aber man kann nicht bei Adam und Eva anfangen. Die Basics werden benötigt.
Gruß Klaus

Beaker s.a.

Hallo Jörg,
Und zur praktischen Übung des Gelesenen/Gelernten empfehle ich immer
wieder gerne dieses Tool: http://www.buch.andreasstern.de/adamo.php
Damit kannst du dann auch Schritt-für-Schritt (will sagen, Tabelle für Tabelle)
dein Datenmodell aufbauen.
Fange einfach mit den drei angesprochenen Tabellen "Artikel", "Hersteller"
und "HerstellerDerArtikel" an. Das ist übersichtlich und sollte dir die Prinzipien
deutlich machen. Als nächstes nimmst du dir die Tabelle "Bewegungen" vor.
Weitere Normalisierungsschritte, wie z.B. die Ausprägungen, kannst du dann
evtl. schon selber nach und nach hinzufügen.
gruss ekkehard

P.S.: Zitat von mir
ZitatDeshalb nimmst du statt der ArtikelID als FK in "Bewegungen" die ID aus der
Zwischentabelle, womit du Zugriff auf beide Informationen hast
Halte ich inzwischen nicht mehr für richtig. Lass also die ArtikelID als FK in der
Bewegungstabelle. Über diesen und die n:m hast du ja auch Zugriff auf den
Lieferanten.
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)