Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

ToDo - Liste im Formular

Begonnen von atom007, November 09, 2016, 16:09:23

⏪ vorheriges - nächstes ⏩

atom007

Hallo zusammen,

ich möchte gerne eine ToDo-Liste in ein Formular einbauen.
In der Liste sollen wöchentlich ca. 5-10 Aufgaben eingetragen sein, die dann einzeln durch verschiedene Benutzer ausgetragen werden.
Mein Problem ist: Bevor ich anfange irgendwas zusammen zu semmeln, wie baue ich so etwas sinnvoll auf und wie bekomme ich Access dazu, die Aufgaben wöchentlich selbst neu zu erstellen?
Hat jemand so etwas schon mal probiert oder evtl. Erfahrung mit ToDo-Listen?

Thx schonmal für die, die mir eventuell helfen können!

DF6GL

#1
Hallo,


bevor Du Formulare "zusammen semmelst", mach Dir Gedanken um die Daten, die für die Bearbeitung solcher "ToDo-Listen"  (was ist da Besonderes dran) nötig und welche schon vorhanden sind.

Lt. der Beschreibung sind (mindestens) erforderlich:


tblMitarbeiter
MAID (PK, Autowert)
MA_PersNr (Long, bzw. Text)
MA_Vorname (Text)
MA_Nachname (Text)
.
.
.



tblToDo
TDID (PK, Autowert)
TD_MAID (Long, FK zu tblMitarbeiter)
TD_Topic (Text)
TD_Task (Memo)
TD_ErstellDatum (Datum/Uhrzeit)
TD_ErledigtDatum (Datum/Uhrzeit)
TD_ZuErledigenBis (Datum/Uhrzeit)
.
.
.


Evtl. sind weitere Tabellen nötig, z. B. ToDoArten oder "Meilensteine"  etc.

ZitatAccess dazu, die Aufgaben wöchentlich selbst neu zu erstellen

??

Woher weiß Access, welche Aufgaben zu welchem Termin zu behandeln sind?
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

atom007

Danke DF6GL für deine Antwort,

ok, die Mitarbeitertabelle (existiert schon) und die ToDo-Tabelle sind soweit kein Problem. Das eigentliche Problem ist eher das, was du am Ende beschrieben hast: "Woher weiß Access, welche Aufgaben zu welchem Termin zu behandeln sind?".
Wann die Aufgaben zu behandeln sind muss Access gar nicht wissen. Es genügt, wenn Access diese Aufgaben jede Woche neu erstellt (und genau das ist momentan noch mein gedankliches Problem).

Das Erledigen machen die Mitarbeiter.
Ich hab mir z.B. eine Listenauswahl vorgestellt, wo der Mitarbeiter, der die Aufgabe abgeschlossen hat einfach durch Doppelklick die Aufgabe abschließt.

MzKlMu

Hallo,
werden alle Arbeiten wöchentlich ausgeführt ?
Und an welchem Tag der Woche ?
Wie erfolgt die Aufteilung der Arbeiten, welcher Mitarbeiter macht was ?
Gruß Klaus

atom007

Hallo MzKlMu,

ja, alle Aufgaben müssen im Lauf der Woche abgeschlossen werden.
Der Tag der Woche ist egal, wichtig ist nur daß die Aufgabe abgeschlossen wird.
Ebenso gibt es keine Vorgabe der Mitarbeiter, weil "rotierendes Personal". Die Mitarbeiter wissen eigentlich, was zu tun ist, aber es wurden ab und zu Einzelteile vergessen, darum will ich die ToDo-Liste einbauen.
Jede Woche Montag Morgen muss die Liste neu erstellt werden und dann bis Freitag abgeschlossen sein.

MzKlMu

Hallo,
dann sind mal mindestens 3 Tabellen erforderlich.
- Mitarbeiter
- Arbeitsliste
- Aufträge

In der Tabelle Aufträge gibt ein Fremdschlüsselfeld zum MA, ein Fremdschlüsselfeld zur Arbeit und ein Datum.
Du kannst dann z.B. für ein Jahr im Voraus per Anfügeabfrage für jede Woche (mit Datum für Mo z.B.) je einen Datensatz aus der Arbeitsliste anfügen. Das Feld für den MA bleibt leer und wird später mit einem auf die Woche gefilterten Formular per Kombifeld aus der Mitarbeiterliste ausgewählt.
Gruß Klaus

atom007

Hmmm....

sorry, aber das ist weniger die Lösung an die ich eigentlich dachte.
Mein Gedanke war eher über vba abzufragen, ob heute Montag ist, wenn ja, dann die Tabelle abfragen ob die Einträge schon erstellt sind und wenn nicht, dann sollen die Einträge in die Tabelle geschrieben werden. Dort werden sie dann von den MA nach Erledigung angeklickt und somit über eine Abfrage in eine Speicher-Tabelle geschrieben. Somit wäre jede Woche zu sehen, welche Aufträge aktuell sind und noch erledigt werden müssen. Wenn in der Tabelle Einträge der kommenden Woche zu sehen sind, dann könnte es zu Irreführungen kommen (meine ich).

MzKlMu

Hallo,
Du denkst falsch, mein Vorschlag ist nichts anderes als das was Du vorhast.
ZitatWenn in der Tabelle Einträge der kommenden Woche zu sehen sind, dann könnte es zu Irreführungen kommen (meine ich).
Da irrst Du, wie ich oben schon geschrieben habe, wird das Formular auf die gewünschte Woche gefiltert, dann sieht man immer nur die gewünschte Woche. Das lässt sich auch so einstellen, dass nur die aktuelle Woche angezeigt wird.
ZitatDort werden sie dann von den MA nach Erledigung angeklickt
Das anklicken ist nicht notwendig. Da es egal ist wer es macht, wird einfach per Kombi der Name gewählt der die Arbeit gemacht hat. Damit ist die Arbeit auch ohne Haken als erledigt gekennzeichnet.
Gruß Klaus

atom007

Ok, ich habe jetzt die Tabellen erstellt, allerdings lasse ich die Aufgaben-Tabelle leer. Jetzt werden Montags per vba die Einträge in die Tabelle geschrieben (eine Vorgabe-Tabelle mit den Datum's erstellen erscheint mir unpraktisch, besonders falls irgendwann mal eine Aufgabe dazu kommen sollte).
Im Formular ist jetzt ein Listen-Feld in dem die Aufgaben dann zu sehen sind. Per Klick werden dann die Aufgaben als "Erledigt" markiert und mit Datum/Zeit und User-Daten in die Erledigt-Tabelle verschoben. Das passt soweit.
Jetzt gibt es für mich nur noch 1 Problem: Wie kann ich vor dem Erstellen der Wochen-Einträge in die tbl_Aufgaben kontrollieren ob die Einträge schon da sind um Doppel-Einträge zu vermeiden?

Beaker s.a.

Hallo,
ZitatWie kann ich vor dem Erstellen der Wochen-Einträge in die tbl_Aufgaben kontrollieren ob die Einträge schon da sind um Doppel-Einträge zu vermeiden?
Vermutlich mit einem eindeutigen Mehrfelderindex (Datum und Aufgabe).
Dabei darf das Datumsfeld aber keine Zeitanteile <> 00:00:00 haben.
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)

atom007

Thx Beaker für deine Antwort.
Die Tabelle zu indizieren würde nichts bringen, weil die Einträge über vba kommen.
Ich müsste irgendwie über vb fragen, ob schon was in der Tabelle steht und nur wenn nicht sollen die Einträge neu gemacht werden.

DF6GL

Hallo,


ZitatDie Tabelle zu indizieren würde nichts bringen, weil die Einträge über vba kommen.

Wie kommst Du darauf?
Eine Indizierung hat nichts mit "VBA-Einträgen" zu tun..



ZitatIch müsste irgendwie über vb fragen, ob schon was in der Tabelle steht und nur wenn nicht sollen die Einträge neu gemacht werden.

Dafür gibt es die Domänenaggregat-Funktionen (z. B. DCount(), Dlookup(), etc.).
Schau dazu in der VBA-Hilfe nach.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

DF6GL

Hallo

das hier stinkt  verdächtig nach Crossposting...

http://www.ms-office-forum.net/forum/showthread.php?t=337103
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

atom007

Thx DF6GL für deine Antwort.

Punkt 1: Ich habe keinen Grund Crossposting zu machen, ich habe hier schon öfters was gefragt und brauche dazu keine 2. Internet-Seite mit dem selben Material zu belasten.
Punkt 2: Ich dachte, ich frage hier Leute, die sich auskennen mal um ihre Hilfe, bzw. Tips & Tricks. Äusserungen wie z.B. "Schau in der VBA-Hilfe nach" lesen sich für mich eher abweisend, als irgendwie positiv. Dass man in der Access-Hilfe nachschauen kann weiss ich selber, aber vielen Dank für deine Hilfsbereitschaft.

MzKlMu

Hallo,
an Grossposting habe ich im andern Forum auch gedacht, war mir aber nicht sicher, daher habe ich nichts gesagt.
Der Hinweis von Franz auf die Hilfe hat mit abweisen nichts zu tun. In der Hilfe gibt es oft ausführliche Beispiele zu Befehlen. Mindestens so viel wie man hier schreiben kann. Daher war der Hinweis auf die Hilfe durchaus angebraucht und bringt Dich auch weiter.
Was die Indizierung betrifft, so bringt die natürlich was. Eine Indizierung verhindert bereits auf Tabellenebene zuverlässig die Entstehung von Doppelungen, dabei ist es völlig unerheblich wo die Daten herkommen. Ob VBA oder manuell spielt also keine Rolle.
Wenn man die Datensätze per Recordset über AddNew anfügt werden bei einer Indizierung automatisch nur die DS angelegt die es noch nicht gibt.
Gruß Klaus