MS-Access 2000 Problem
boogeyman 05.07.2005 - 09:39 777 8
boogeyman
Bloody Newbie
|
Ich sitz gerade beim Ferialjob und muss eine Datenbank basierende Anwendung mit MS-Access 2000 erstellen. Wir haben Access zwar in der Schule durchgenommen, und bei weitem nicht so genau wie ich es brauchen würde (Formulare, Berichte, etc. haben wir nicht gemacht).
Ich stehe jetzt vor folgendem Problem: Ich habe eine Tabelle Aufgaben, eine Tabelle Mitarbeiter und eine Tabelle Bearbeiter. In der Tabelle Aufgaben stehen verschiedene Aufgaben die Mitarbeiter zu erledigen haben, in der Tabelle Mitarbeiter stehen alle Mitarbeiter. Einer Aufgabe sollen jetzt mind. 1 oder mehrere Mitarbeiter zugerodnet werden. Ein Mitarbeiter kann auch gleichzeitig mehreren Aufgaben zugeordnet sein. Dazu habe ich die Tabelle Bearbeiter, die einfach die ID der Aufgabe und die ID des Mitarbeiters enthält.
Jetzt bin ich dabei ein Formular zu gestalten, welches Mitarbeiter einer Aufgabe zuordnet. Ich hab mir gedacht ich mache eine Listbox mit allen Mitarbeitern (mehrfachauswahl) und eine Combobox mit allen Aufgaben wo ich dann eine Aufgabe (Combobox) und einen oder mehrere Mitarbeiter (Listbox) auswähle. Das ganze soll dann mit einem Button bestätigt werden und in die Datenbank (Bearbeiter) eingetragen werden.
Wie krieg ich das hin? Geht das in Access direkt oder brauche ich dafür VBA?
Ich hoffe ich hab mich verständlich ausgedrückt.
tia
btw.: Falls ihr Tutrials über Access und VBA in Verbindung mit Access kennt bitte posten.
|
samuel
.:: unnahbar ::.
|
es gibt sehr viele gute access tutorials online. allerdings wuerde ich dir zusaetzlich ein gutes buch nahelegen, wo du die dir fehlenden grundlagen an 2-3 gemuetlichen abenden nachlesen kannst bzw welches du in die arbeit mitnehmen kannst zum nachschlagen. greetings, sam sollte ich bei deinem problem nichts falsch verstanden haben sollte sich alles in access loesen lassen. ps: moeglicherweise ist das eine ganz gute seite, musst aber selber rausfinden: http://www.access-o-mania.de/
|
mat
AdministratorLegends never die
|
für mehrfachauswahl wirst vermutlich VBA brauchen.
|
boogeyman
Bloody Newbie
|
für mehrfachauswahl wirst vermutlich VBA brauchen. Jepp, hab mir ein paar Tutorials im Internet durchgelesen und es dann auch gelöst. Hab jetzt aber eine andere Frage: Ich hab das so gemacht, dass man durch alle Aufgaben durchklicken kann und dann dort jeweils über eine Liste die Mitarbeiter hinzufügen kann. Das funktioniert auch schon. Nur möchte ich jetzt haben, dass man wenn man durchklickt, immer die zugeordneten Mitarbeiter als selektiert in der Liste hat. Weiß da evtl. jemand Ansätze, wie ich das lösen könnte? Andere Frage: Wenn ich mittels VBA einen Datensatz hinzufüge, fragt Access immer nach ob ich wirklich x Datensätze hinzufügen, löschen, usw. will. Kann ich die Abfrage irgendwie abstellen? Nicht wundern wenn das ganze irgendwie n00b-mäßig klingt, arbeite praktisch das erste Mal mit VBA, hab bis jetzt nur mit anderen Sprachen programmiert und werd VBA nach dem Ferialjob auch sicher nimmer angreifen.
|
mat
AdministratorLegends never die
|
Andere Frage: Wenn ich mittels VBA einen Datensatz hinzufüge, fragt Access immer nach ob ich wirklich x Datensätze hinzufügen, löschen, usw. will. Kann ich die Abfrage irgendwie abstellen? deine db öffnen und im menü Extras -> Optionen ins tab bearbeiten/suchen wechseln und die hakerl von den bestätigungen entfernen.
|
boogeyman
Bloody Newbie
|
deine db öffnen und im menü Extras -> Optionen ins tab bearbeiten/suchen wechseln und die hakerl von den bestätigungen entfernen. Funktioniert, thx!
|
mat
AdministratorLegends never die
|
Ich hab das so gemacht, dass man durch alle Aufgaben durchklicken kann und dann dort jeweils über eine Liste die Mitarbeiter hinzufügen kann. Das funktioniert auch schon. Nur möchte ich jetzt haben, dass man wenn man durchklickt, immer die zugeordneten Mitarbeiter als selektiert in der Liste hat. Weiß da evtl. jemand Ansätze, wie ich das lösen könnte? deine liste muss "Mehrfachauswahl" auf "Erweitert" haben. dies ist bei den eigenschaften des steuerelements veränderbar. um einträge in der liste zu selektieren mach einfach: Liste0.Selected(0) = True
Liste0.Selected(1) = True
usw.
|
boogeyman
Bloody Newbie
|
Soweit bin ich auch schon. Nur hab ich eine Tabelle mit den IDs der Mitarbeiter und die Liste mit ihren eigenen IDs für die einzelnen Elemente, jetzt müsst ich die halt irgendwie miteinander in Beziehung setzen, ich hab aber keine Ahnung wie ich das anstellen soll.
|
boogeyman
Bloody Newbie
|
Es hat sich nun ein anderes Problem ergeben, nämlich bei einer Abfrage. Ich sitz jetzt schon seit einigen Stunden dran und komm einfach nicht weiter. Ich würde euch bitten euch das einmal anzuschauen und mir evtl. weiterzuhelfen. Brauchen tu ich nun eine Abfrage, die mir Aufgabengruppe.Nr, Aufgabengruppe.Bezeichnung, Kernaufgabe.Nr, Kernaufgabe.Bezeichnung, Detailaufgabe.Nr, Detailaufgabe.Bezeichnung ausgibt. Zusätzlich sollen noch Mitarbeiter.Kurzzeichen und Funktion.Kurzbezeichnung zu jeder Detailaufgbe ausgegeben werden, falls diese vorhanden sind, ansonsten soll das jeweilige Feld einfach leer sein. Aufgabengruppe, Kernaufgabe und Detailaufgabe sollen IMMER ausgegeben werden, auch wenn kein Mitarbeiter oder keine Funktion zugewiesen sind. Die Ausgabe soll dann folgendermaßen ausschauen: Aufgabengruppe.Nr | Aufgabengruppe.Bezeichnung | Kernaufgabe.Nr | Kernaufgabe.Bezeichnung | Detailaufgabe.Nr | Detailaufgabe.Bezeichnung | Mitarbeiter.Kurzzeichen | Funktion.Kurzbezeichnung
0 | Innerer Dienst | 0.1 | Die Stabstelle leiten | 0.1.1 | Öffentlichkeitsarbeit leisten | BO MO SHI | ABC-ORG ABC-Leiter
BO, MO, SHI sind dann jeweils Kurzzeichen für Mitarbeiter und ABC-ORG, ABC-Leiter sind jeweils Kurzbezeichnungen für Funktionen die in den jeweiligen Tabellen Mitarbeiter und Funktion stehen. Zur Tabellenstruktur: Jeder Aufgabengruppe sind mindestens eine oder mehrere Kernaufgaben zugeordnet. Jeder Kernaufgabe sind wiederrum jeweils mindestens eine oder mehrere Detailaufgaben zugeordnet. Jeder Detailaufgabe sind 0, 1 oder mehrere Mitarbeiter und 0, 1 oder mehrere Funktionen zugeordnet. Da eine Detailaufgabe mehrere Mitarbeiter oder Funktionen und eine Funktion oder ein Mitarbeiter mehreren Detailaufgaben zugeordnet sein kann, habe ich die Zwischentabellen Mitarbeiter_Detailaufgabe und Funktion_Detailaufgabe erstellt. Zur besseren Verständlichkeit, hier ein Screenshot der Tabellenstruktur aus MS-Access 2000: Ich hoffe ich hab mich verständlich ausgedrückt. tia
|