Januar 24, 2021, 22:18:35

Neuigkeiten:

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


Lagerhaltung

Begonnen von Tanafuska, Mai 23, 2010, 13:41:45

⏪ vorheriges - nächstes ⏩

Tanafuska

Hallo an alle!
sitze seit 2 Tagen an diesem Access und komme gar nicht voran  :(
muss eine Lagerdatenbank erstellen.
Es gibt verschiedene Artikeln (Tabelle mit ID-Nummer, Bezeichnung und Herrsteller)
Es gibt Ab- und Zugänge (Es gibt eine Tabelle mit Bestand, also ID-Nummer und Anfangsbestand)
habe die auch als Bewegungstabelle benannt.
Und komme gar nicht mehr voran, kriege verschiedene Fehlermeldungen über irgendwelche Feldtypen usw   :'( :'(

kann mir jemand sagen, was ich zu erst machen sollte? womit fängt man? wie ist die Reinfolge?
mache ich zu erste die Abfragen oder die Formulare? wie sollen die Beziehungen sein?
Wie und wo rechnet er den aktuellen Bestand?!

Hilfe!

DF6GL

Hallo,

zuerst fängt man damit an, sich darüber klar zu werden, was man mit den vorhandenen (Geschäfts-)Daten überhaupt machen will.

Diese Daten müssen zunächst analysiert, geordnet, in sinngemäße Blöcke zusammengefasst und zueinander "in Beziehung" gesetzt werden.
Evlt. dabei "fehlende" Daten sind nachzufordern, bzw. es muß geklärt werden, woher diese Daten zu erhalten sind.

Dabei sind die hier stehenden Regeln und Vorgehensweisen zu beachten/anzuwenden:

http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/

(oder andere Erklärungen zu "Normalisierung" von Tabellen)


Bei Erstellen der  Tabellenstrukturen ist weiterhin auf die genaue Definition von Datentypen bezgl. der in einem Tabellenfeld zu speichernden Daten zu achten. Z. B. muß ein "Datum" als gültiger Datumswert gespeichert werden, d. h. das Tabellenfeld muß den Datentyp "Datum/Uhrzeit" erhalten.

Sind die einzelnen Tabellen erstellt, sollte man die Beziehungen zwischen den Tabellen über die entspr. Schlüsselfelder im Beziehungsfenster definieren/festlegen. Die Aktivieruag der ref. Integrität(süberwachung) sollte aber (IMHO) eher restriktiv erfolgen.

Nach dem o. g. Tabellenaufbau sollten für jede Tabelle je ein eigenes Formular mit Basis zur entspr. Tabelle erstellt werden. (Für n-Tabellen bei 1:n-Beziehungen kann ein Endlosform sinnvoll sein, wobei die 1:n-Beziehung in einer Hauptform (1-Tabelle) zu Unterform (n-Tabelle) -Konstruktion (standardmäßig) dargestellt werden kann).

Datenmanipulationen geschehen NUR über die Formulare, bzw. über das Ausführen von Aktualisierungsabfragen (oder Recordsets) mittels VBA-Code in Formular-Ereignisprozeduren.

Alle berechneten Werte (bis auf ein paar Ausnahmefälle) werden NICHT in Tabellen gespeichert. Wenn die o. g. Methodik der Normalisierung konsquent umgesetzt ist, erfolgen Berechnungen/Auswertungen über Abfragen, bzw. auch über Formeln direkt im Form/Bericht.


WIE die Beziehungen sein müssen, ergibt sich aus o. g. Datenanalyse. Die bestimmt die Datenzusammenhänge/-beziehungen. Die Definition der Beziehungen im Beziehnungsfenster reflektiert nur die realen Datenzusammenhänge (und hilft der DB-Anwendung, die Daten auch korrekt zu verarbeiten, bzw. fehlerhafte Vorgänge zu unterbinden.)


"Er" (vermutlich Access gemeint) rechnet gar nicht von allein z. B. den aktuellen Bestand eines Artikels an einem bestimmten Lagerort.

Eine solche Berechnung passiert durch/in eine/r passend (von Dir!) aufgebauten Abfrage.

Tanafuska

Danke!!!

Ich bekomme eine Fehlermeldung, wenn ich bei zwei 1:n Beziehungen ein Hacken bei "mit referentieller Intergrität" setzte. Die Meldung heißt: Die Beziehung ist dieselbe Anzahl an Feldern mit denselben Datentypen erforderlich. - Was mache ich hier falsch, bzw. was beachte ich hier nicht?

Danke für die Hilfe!!

Tanafuska

und verstehe ich richtig, dass ich die Abfragen nicht wirklich brauche, sondern gleich mit den Formularen anfangen kann?

Denn bei eine Abfrage bekomme ich auch eine Fehlermeldeung: Im Ausdruck stimmt ein Datentyp nicht überein. - Was ist damit gemeint? welcher Datentyp?

DF6GL

Hallo,

Du beachtest nicht, was die Fehlermeldung ( und ich im Grunde auch) bzgl. Datentypen aussagt...



Wenn eine Beziehung zwischen zwei Tabellen(feldern) erforderlich ist, ist auch die Übereinstimmung des Datentyps der beteiligten Datenfelder zwingend erforderlich.

Tanafuska

Was ist ein Datentyp? wodurch deffiniert er sich?

Tanafuska

Bei den ID-Feldern ist es ein AutoWert und bei den anderen ein Textfeld, ich kann bei dem ID nicht auf Text ändern unn andersrum ganau so, außerdem, hat er ja bei den anderen Beziehungen nicht rumgemerkert...

Er (Access) mag mich nicht....   :(

Tanafuska

Doch, man kann alles ändern, habe jetzt über "Zahl" und jetzt sind beide Fehlermeldungen weg!  :D


DF6GL

Hallo,

:o


ich denke, Du solltest als aller Erstes einen Grundlagenkurs in Access belegen...

Ohne die Grundlagen kommst Du nicht weit.


Ein Datentyp ist die Festlegung, wie ein Wert rechner-intern abgelegt wird.


Z.B ist der Zahlenwert 4711  eine Ganzzahl und demzufolge hat sie den Datentyp INTEGER  (in Access "Integer" oder "Long"). Mit solchen Datentypen kann weiter (mathematisch) gerechnet werden.
Integer besteht intern aus 16 Bit Speicherlänge, Long dagegen aus 32 Bit, was sich in der "Menge" (Wertebereich)  der darin speicherbaren Zahlenwerte äußert. (Für die genauen Wertebereiche der einzelnen Datentypen bemühe die Access-Hilfe oder Google)

Die Ziffernfolge "4711" ist keine "Zahl", sondern wie gesagt lediglich ein "Text", der aus ein paar aufeinanderfolgenden Ziffern besteht. Der in Access dafür zu verwendende Datentyp ist "Text".


Soweit ein kurzer Anriss zu Datentypen...

Tanafuska

Den hatte ich, den Kurs meine ich, aber ist alles weg
und meine Problem, habe mich auf meine Kenntnisse verlassen und das Ganze zu lange hinausgezögert, muss diese Lagerhaltung bis Dienstag hinkriegen...
also arbeite ich gerade mit "Try and error"  :( so als Strafe für meine Duseligkeit  :(


Tanafuska

Na ja, muss ich durch....
so, versuche es jetzt mit den Formularen, komme bestimmt bald wieder...

Danke!

database

Hi,

@DF6GL
ZitatBis Dienstag??

Er meint bestimmt 2012 oder so...  :D :D ;)

P

DF6GL

Ja, und dann auch noch den in der letzten Woche ... ;D

Trotzdem soll er viel Erfolg haben... :)  Der Ehrgeiz muß ja belohnt werden.

database


ZitatTrotzdem soll er viel Erfolg haben...   Der Ehrgeiz muß ja belohnt werden.


Dem stimm ich widerspruchslos zu!  ;D