Einen schönen guten Tag liebe Access-Profis! :)
Ich finde so eine Datenbank ja auch wahnsinnig interessant, vorallem habe ich mir hier durch ein "learning-by-doing"-Projekt ganz schön was angetan, aber ab und an komme ich an einen Punkt, an dem ich einfach nicht weiter komme.. Ich versuche mal, euch mein Problem zu erklären:
Ich habe eine Datenbank über ein Bekleidungslager erstellt. Da gibt es (grob gesagt) die Tabelle "Mitarbeiter" (mit Personalnummer, Name, Vorname) und die Tabelle "Artikel" - hier bekomme ich schon das erste Problem: Wir führen verschiedene Kleidungsstücke - zB Blusen, Hosen, Sakkos. Diese gibt es nun je in verschiedenen Farben - zB grün, schwarz, orange.. Natürlich haben wir nun von den blauen Hosen verschiedene Größen, auch von den orangenen Blusen.. usw.
Ich würde dazu gern eine Art "Baumstruktur" aufstellen-ich möchte also erst auswählen,dass ich eine Bluse auswähle, dann die Farbe wählen und zum Schluss die Größe. Ich habe schon einige Einträge über Baumstrukturen gelesen, nur: Da die DB den Bestand mitzählen soll, muss die blaue Hose in der 38 auch eindeutig identifiziert und von der blauen Hose in der 40 zu unterscheiden sein..?
Das zweite Problem ist folgendes: Zwischen den Tabellen "Mitarbeiter" und "Artikel" habe ich noch eine Tabelle "Ausgabe" geschalten-so kann ich also erfassen, wann wer welche Artikel bekommen hat. Mit der Aktualiserungsabfrage kann ich im selben Zug "die 3 Blusen vom Bestand.Artikel" abziehen. Logischerweise möchte ich aber jedesmal nur die aktuellste Bekleidungs-Ausgabe aktualisieren, nicht alle Ausgaben immer wieder wiederholen..? :(
Ich hoffe sehr, dass ich mein Anliegen halbwegs verständlich rüberbringen konnte und mir jemand helfen kann!
Danke schonmal, LG Luisa
Hallo,
zum ersten Problem, du benötigst in der Artikeltabelle die 3 Felder BekleidungsTyp, Farbe, Groesse.
Dann kannst du mittels "abhängiger Kombinationsfelder" nacheinander die Artikel selektieren.
Du benötigst 3 Kominationsfelder (oder Listenfelder). Das Erste hat als Datenherkunft die Abfrage nach den Bekleidungstypen gruppiert nach den selben.
Wählst du 1 Eintrag aus wird im Ereignis "Nach Aktualisieren" die Datenherkunft für das zweite Kombinationsfeld gesetzt:
Me!Combi2.RowSource = "Select Farbe From Artikel Where Bekleidungstyp = '" & Me!Combi1 & "' Group by Farbe"
Das gleiche nochmal beim 3. Kombi.
Andreas
Hallo,
Zum 2. Problem:
ZitatZwischen den Tabellen "Mitarbeiter" und "Artikel" habe ich noch eine Tabelle "Ausgabe" geschalten-so kann ich also erfassen, wann wer welche Artikel bekommen hat. Mit der Aktualiserungsabfrage kann ich im selben Zug "die 3 Blusen vom Bestand.Artikel" abziehen.
Das soltest Du anders lösen.
Wenn Du eine Artikeltabelle hast, die jeden Artikel eindeutig kennzeichnet, musst Du in der Ausgabetabelle nur die mengen mit Vorzeichen erfassen. Ausgabe dann mit - (minus).
Gleichzeitig solltest Du in dieser Tabelle auch die Zugänge erfassen (womit sinnvollerweise der Name der Tabelle geändert werden sollte).
Eine über die Artikelid gruppierte Abfrage mit der Summe der Mengen (positiv/negativ) liefert jederzeit stets aktuell den Bestand. Ein Aktualisierungsabfrage wird überflüssig. Es gibt kein Feld mehr für den Bestand.
Hallo nochmal..
Also irgendwie komm ich mit den abhängigen Kominationsfeldern nicht klar.. In der Tabelle stehen also im Feld "Artikelkategorie" verschiedene Möglichkeiten (Sakko, Bluse, Hose, etc) und diese Kombinationsfelder muss ich im Formular entwerfen? Wo genau muss ich denn da den Code eintragen den du mir geschickt hast? Bin mit der Programmiersprache nicht ganz so vertraut.. Kann ich dafür auch vorgegebene Eigenschaften auswählen? Muss ich eigentlich unbedingt eine Abfrage für die Artikelkategorie erstellen oder kann ich auch einfach nur auf die Tabelle zugreifen? Ich hab bestimmt nur ein Black-Out oder einfach einen "Gedankenknoten" weil ich an dieser Stelle schon den ganzen Tag nicht weiterkomme :( Ich bin für jede Hilfe extrem dankbar, auch wenn ich mich manchmal etwas "begriffsstutzig" anstelle..!
Viele Grüße Luisa
Hallo,
www.donkarl.com/?FAQ4.36
Prosabeschreibungen sind halt nun mal nicht sehr erklärend.
Am besten lädst Du die Db mal hier (komprimiert/repariert, gezipp, A2003-Format) hoch, dann geht das Ganze vielleicht etwas effizienter über die Bühne ;-)
... Wie kann ich die DB denn komprimieren? Ich muss hier nochdazu erstmal lernen, mit diesem Windows7 umzugehen, dass macht alles noch schwerer ???
Hallo,
das ist keine Funktion von Windws, sondern von Access. Und es ist an unterschidelichen Stellen der jeweiligen Access-Versionen zu finden.
Probier halt auch nur zippen allein... (mit Winzip z. B.) und schau, ob sie klein genug zum Hochladen wird.
Hallo,
ZitatWie kann ich die DB denn komprimieren?
Bei Access 2007:
Office-Schaltfläche ---> Verwalten ---> Datenbank komprimieren und reparieren
Bei Access 2003:
Menüleiste ---> Extras ---> Datenbank-Dienstprogramme ---> Datenbank kompriemieren und reparieren
Winzip nicht vorhanden ? kein Problem mit Windows 7 ....
Datei mit der rechten Maustaste klicken ---> Senden an ---> ZIP-komprimierter Ordner
...und die dadurch gewonnene Datei.zip kannst du hier hochladen, wenn die Größe 200 KB nicht übersteigt.
HTH
Peter
Hallo lieber Helfertrupp..!
Na das wird ja noch eine schwere Geburt, aber zumindest habe ich jetzt die DB komprimiert und repariert und versuche sie nun mal hochzuladen.. Vielen Dank!
[Anhang gelöscht durch Administrator]
Hallo,
du musst aber auch die Antworten richtig lesen: in #3 : (komprimiert/repariert, gezipp, A2003-Format)
also solltest du deine DB auch auf 2003 konvertieren, da hier 2007 noch niccht so viele haben!
Gruß Oma
:'( Tut mir leid.. Aber jetzt dürfte es doch hoffentlich funktionieren! Hab auch in der Zwischenzeit noch ein bisschen dran gebastelt, bin gespannt wie eure Meinung dazu ist-ob man damit überhaupt schon irgendwas anfangen kann??
LG und Danke für eure Hilfe und Geduld!
[Anhang gelöscht durch Administrator]
Hallo,
was tut man nicht alles, hier ein Vorschlag im A2007-Format ;)
Wichtig: Feldname "Anzahl" in "Menge" geändert. (Reservierte Wörter DRINGEND vermeiden!)
Feld Bestand aus Tabelle Artikel entfernt. Bestände werden mir Bericht rpt_Bestände angezeigt.
(Annahme: Zugänge sind positiv, Abgänge negativ)
[Anhang gelöscht durch Administrator]
:D Dankeschön!
Zumindest weiß ich jetzt schon mal, dass meine Vorstellungen, was ich gern mit Access anstellen würde, nicht ganz so utopisch sind :) Aber ganz rund läuft das leider noch nicht..
Du wirst die DB ja bestimmt noch da haben die du umgeschrieben hast und ich hab jetzt auch noch nichts wieder dran verändert:
Das mit den Kombifeldern in dem "Ausgabe-Formular" ist genau so wie ich das wollte-nur irgendwas stimmt noch nicht ganz..?Wenn ich Kategorie, Farbe und Größe auswähle ändert sich nicht unbedingt die Artikelnummer-und der Bestand in dem Bericht ändert sich auch nicht?Oder habe ich nur etwas falsch gemacht?In der Aktualisierungsabfrage (ausgelöst durch den Button im Ausgabe-Formular) ist natürlich jetzt auch noch der Verweis auf das Feld "Bestand.Artikel", welches es ja nicht mehr gibt..
Es ist ganz großartig, ohne euch wäre ich glaube schon verzweifelt..
Ganz liebe Grüße aus Dresden
Luisa
Hallo,
die Artikelnummer ändert sich erst dann (relevant für die Tabelle, bzw. im Feld "Artikel") , nachdem ein Artikel im Kombi "cmbGr" (Größe) ausgewählt wurde.
Das Ganze ist nur die "komfortable" Auswahl eines Artikels, der gerade beim Einlagerung/Auslagerungs-Vorgang erfaßt werden soll.
Die Veränderung des Artikels hat auch keinen Einfluß auf den eingegebenen Mengenwert. Wenn der Artikel geändert wurde, wird auch (nach der Speicherung im Formular) der Bericht angepaßt.
Die Aktualisierungsabfrage kannst Du wegwerfen...(und den Button) (falls die das nicht mehr existierende Feld Bestand im Tabelle Artikel bearbeiten soll)
Hallo :)
Also langsam beginnt das ja sogar Spaß zu machen wenn nacheinander verschiedenen Probleme gelöst werden ;)
Ich habe jetzt einfach einen neuen Button erfunden, der das Formular speichert! :)
Werde mich noch ein bisschen in die Funktionsweise der von dir verschönerten Datenbank einarbeiten und dann noch den ein oder anderen Feinschliff vornehmen-bei dem ich ganz bestimmt wieder Hilfe gebrauchen kann..
Die wirklichen Daten müssen ja erst noch alle erfasst werden, wenn die DB endgültig funktioniert. Das werden natürlich Unmengen an Mitarbeitern (ca 1200) und gaaanz viele Artikel werden-der Bericht wird da sicher sehr lang.. Solche Sachen müsste ich nun also noch berücksichtigen und umgestalten, aber wie gesagt: learning by doing kann echt Spaß machen wenn man Erfolge sieht, also werde ich mich jetzt mal ran halten und mich bei dem nächsten größeren Hindernis wieder melden, ok? Darf ich deinen neuen Entwurf so übernehmen und meine "alte" DB dafür aussortieren?
Nochmal ganz ganz lieben Dank und viele Grüße Luisa :) :)
Hallo,
klar kannst Du meinen "Entwurf" weiterverwenden.
Ich empfehle Dir aber, bevor Du mit den Formularen weitermachst, ein detailliertes Konzept über alle gewünschten Funktionalitäten der DB zu erstellen.
Insbesondere u. st. Links #1 und #2 dringend umzusetzen. (Die Tabellen sind nicht normalisiert).
Einen "Speicherbutton" brauchst Du auch nicht... Eher einen, der einen neuen Datensatz im Form anzeigen läßt, in den Du dann einen neue Lagerbewegung eintragen kannst und es dabei auch möglich sin muß, verschiedene Eingaben auf Plausibilität zu prüfen. Z. B. MUSS ein Artikel eingegeben sein, oder die Menge darf nicht 0 sein etc.
Das sind wirklich nützliche Tips aber eben auch so viele.. Ich werde mich dort mal intensiv reinlesen und dabei bestimmt feststellen, dass ich euch gar nicht so viel hätte nerven müssen wenn ich mich so mal eher informiert hätte.. :(
Das bedeutet jetzt sicherlich dass ich noch eine Weile sitzen werde an dieser DB, aber ich hoffe doch dass ich noch weiter Hilfe von euch erwarten kann..? :)
Den "neuen Datensatz erstellen"-Button habe ich grade ganz fix eingebaut (das geht nun wie im Schlaf ;)) und die "Plausibilitätsprüfung" mach ich dann auch noch. Den "Speichern"-Button hab ich trotzdem mal gelassen.. Ich habe ja noch gar nicht erwähnt, dass ein anderer Mitarbeiter aus unserer Firma dann die DB benutzen soll. Das ganze soll ihn als Lagerarbeiter unterstützen, nur ist es für ihn eben nicht einfach, sich durch die Access-Oberfläche zu fuchsen, und alles soll am besten "per Knopfdruck" funktionieren.. Wisst ihr was ich meine? Das ist noch eine kleine Hürde weil es natürlich auch immer wieder passieren kann dass ihm etwas neues einfällt was die DB noch so können muss..
Na ich bin auf die nächsten Wochen gespannt und hoffe das beste! :)
Liebe Grüße Luisa
Hallo nochmal.. :)
Wie ich schon vermutet habe, tun sich bei den Links noch einige Fragen auf.. Wenn ich alle Tabellen jetzt so weit wie möglich "normalisiere" - muss ich da nicht alles nochmal von vorn beginnen?Ich meine ich kann die Tabellen, die schon miteinander in Beziehung stehen, ja schlecht auseinander nehmen ohne vorher die Beziehnung zu entfernen, oder?
Noch eine kleine Stichprobe ob ich das nun auch richtig verstanden hab: Ich müsste jetzt also zB die Tabelle "Mitarbeiter" auseinander nehmen und in einer extra Tabelle jeder Personalnummer einen Bereich zuordnen, ist das korrekt? Und wann genau werde ich mir dafür dankbar sein mir die Mühe gemacht zu haben? ;)
Liebe Grüße aus Dresden Luisa
Hallo Df6GL..
ein kleiner Hilferuf nochmal von mir.. :'(
Ich hab Mist gebaut-wollte noch ein Feld "Länge" in die Artikeltabelle einbauen und im Formular so die Gestalt annehmen lassen wie Kategorie und Farbe etc (abhängige Kombifelder) auch haben-was du so schön entworfen hast.. Nun hab ich in den Codes rumgeschrieben weil ich den ja kopiueren wollte oder so und nun geht nix mehr :( Könntest du nochmal versuchen mir nen allgemeinverbindlichen Code zu schicken oder darf ich nochmal die DB hochladen und du änderst mir das vielleicht noch einmal...? ???
Es tut mir wirklich leid, sowas kann aber auch nur mir passieren.. Es war doch schon so gut wie dchön ;)
Lieben Dank für die Hilfe! Luisa
Hallo,
;) :D
lad die Db ruhig nochmal hoch.. Irgendwer wird sich ihrer schon erbarmen... ;D
"nen allgemeinverbindlichen Code " gibt es wohl (konkret) nicht. Der muß schon auf Deine DB-Situation hin zugeschnitten sein.
"Und wann genau werde ich mir dafür dankbar sein mir die Mühe gemacht zu haben? "
dann, wenn Du keine Fragen mehr stellen mußt, weil die DB funktioniert :D
Hallo Luisa,
eine Bemerkung von Dir:
aber wie gesagt: learning by doing kann echt Spaß machen wenn man Erfolge siehtNun fragst du, welchen Nutzen denn ein normalisierter Tabellenaufbau.
Dazu muss man sagen:
Access ist eine Entwicklungsumgebung, die einiges vorraussetzt:
1. Kentnisse der Grundobjekte von Access (Erstellung, Benutzung, Eigenschaften)
2. Normalisierung von Tabellen
3. Grundkenttnisse von SQL
4. Grundkenntnisse von VBA
Insbesonders der 2. Punkt ist auch elementar, in DBWIKI die 10 Gebote für ACCESS:
ZitatDu sollst normalisierte Tabellen verwenden und das Konzept relationaler Datenbanken verstehen, bevor du mit irgend etwas anderem beginnst
Den "Nutzen" von normalisierten Tabellen ist ziemlich vielfältig u. sollte garnicht erst erfragt werden!
Du musst dich also bei allem Spaß zunächst mit vielen elementaren Dingen einer relatianolen DB auseinander setzen. Nur mit learning by doing wird es nicht gehen bzw. wird dann ziemlich mühselig u. lange dauern!
Das heißt aber nicht, dass wir nicht weiterhelfen werden ;D
Gruß Oma
Hallo,
ich hoffe Ihr hattet ein schönes WE?
Ich geb mir echt Mühe, mich in die Grundsätze der DB zu fitzen. Ich weiß auch, dass das keine Ausrede ist, aber ein kleines bisschen läuft mir die Zeit davon und es ist letztendlich so verlockend, wenn die DB so funktioniert ohne SQL und ABV benutzt zu haben.. Wie das so ist, ich hab das mal oberflächlich kennengelernt und merke jetzt, dass es noch viel mehr bedarf als ein paar "Nachschlagefeldern".. ;)
Also ich verspreche euch, dass ich mich in die Programmiersprache einlese so gut ich kann und auch die Tabellen versuche zu normalisieren-würde das nun zB bedeuten, dass ich eine seperate Tabelle "Größe", eine "Farbe" etc. benötige? Ich weiß noch nicht so richtig, wie ich die Tabellen sonst noch weiter "auseinander nehmen" kann.. ???
Ich möchte das jetzt nicht aufgeben und lade gern nochmal die DB hoch, mit der Bitte, mich nochmal zu unterstützen :)
Also es gibt die Blusen nun mit langen und mit kurzen Ärmeln - das soll schließlich so aussehen wie mit der Größe und Farbe (im günstigsten Fall als Auswahlkriterium nach "Kategorie") ..
Ganz liebe Grüße und Danke schonmal, ich stürz mich in der Zeit wieder auf die Access-Fibeln ;)
Luisa
[Anhang gelöscht durch Administrator]