Neuigkeiten:

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

Mobiles Hauptmenü

Formular doppelte Felder eintragen

Begonnen von Spedi05, September 12, 2019, 16:07:47

⏪ vorheriges - nächstes ⏩

Spedi05

Hallo zusammen,
bin neu hier und brauche eure Hilfe.
Ich möchte gerne eine Datenbank im access erstellen.
Habe eine Tabelle mit 6 kundennummer angelegt.
Jeden Tag kommen zu jede Kundennummer diverse Leute zum Essen und ich möchte die Eingabe mittels ein Formular tätigen.

Z.b
Datum12.09
Kundennummer 1 = 6 mittagessen
Kundennummer 2 = 2  mittagessen
usw..

Ich habe ein Formular erstellt, aber ich kann nur eine Kundennummer eingeben.
Wenn ich das Feld Kundennummer doppelt im Formular hinzufüge und als Standardwert die einzelnen Kundennummer eintrage, wird bei der erste Eingabe der hinterlegte Standardwert überschrieben.

Lässt sich das darstellen wie ich es möchte?

DF6GL

#1
Hallo und willkommen im Forum.

Wen Du eine DB erstellen willst, solltest Du zunächst einmal festlegen, was die DB überhaupt machen , bzw. für was sie eingesetzt werden soll.

Dabei ist zu überlegen, welche Daten gebraucht werden und welche dieser Daten schon vorhanden sind. Die (essentielle) Normalisierung der Daten und das Setzen der Beziehungen wäre der nächste Schritt (siehe u. st. Links 1, 1a und 1b).

Erst wenn diese Daten (Tabellen-) Konstellation logisch korrekt ist und die reale Situation widerspiegelt , kann man an die Erstellung der Formulare herangehen, die letztendlich nur die Visualisierung (und damit einhergehend die Manipulation) der Daten darstellt.


Du brauchst für die geschilderte Minimal-Aufgabe mindestens diese Tabellen:

tblKunden
KundID (Autowert)
Kund_Nachname (Text)
Kund_Vorname (Text)
Kund_Adresse (Text, evtl weiter aufgedröselt in Kund_Ort,_Kund_Strasse, Kund_PLZ, etc.)

tblKundenSpeisen
KundSpID (Autowert)
KundSp_KundID (Long) Fremdschlüssel zu tblKunden
KundSp_SPID  (Long)   Fremdschlüssel zu tblSpeiseArten
KundSp_Datum (DatumIUhrzeit)
KundSp_Anz  (Long)
KundSp_Notiz (Langer Text)  ' falls erforderlich


tblSpeiseArten
SpID (Autowert)
Sp_Art (Text)


Beziehungen:

tblKunden  ---1:n--- tblKundenSpeisen  ---n:1---tblSpeiseArten


Ein Formular frmKundenspeisen mit Datenherkunft zu tblKundenspeisen.  Die Fremdschlüsselfelder werden als Kombifelder (zur Auswahl des Kunden, bzw. der Speiseart für den aktuellen Datensatz ausgeführt mit jeweils Datensatzherkunft zu tblKunden und zu tblSpeisearten respektive.


Weiter Formulere zu tblKunden und tblSpeisearten, um diese Daten einzugeben und zu pflegen.


Andere Sichtweise:
Hauptformular für tblKunden. Darin ein Unterformular(-Steuerelement) für frm_KundenSpeisen als Endlosform, das über die Schlüsselfelder (KundId, KundSP_KundID) verknüpft.
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

Spedi05

Hallo Franz,

vielen Dank für deine Rückmeldung.
Ich habe bereits zwei Tabelle erstellt.

Tabelle Kunde
Kundenummer
Name 1
Name 2
Straße
PLZ
Ort
Telefonnummer
E-Mail

Tabelle Mittag
Datum
Kundennummer
Anzahl Mittagessen

Nun wie bekomme ich das hin, die Eingabe für dass Mittagsessen über das Formular einzugeben?

Ich möchte nicht jeden Tag das Datum, Kundennummer eingeben um die Eingabe zu tätigen

Möchte gerne via Formular
Nur das Datum eingeben und die Kundennummer sollten vorgelegt sein, damit ich nur die Anzahl der mittagsessen eingeben kann.

Vielen Dank im Voraus für deine Antwort



DF6GL

Hallo,

zunächst: 
Vermeide dringend(!!) Leer- und Sonderzeichen bei der Benamsung (Blank, Minus-Zeichen).
Vermeide dringend (!!)  reservierte Wörter (Datum)

Sorge dafür, dass "Kunde.Kundenummer" ein Autowert, bzw. ein Long-Wert mit eindeutigem Index ist.
Sorge dafür, dass "Mittag.Kundenummer" ein Long-Wert ist.



Erstelle eine 1:n-Beziehung zwischen  "Kunde.Kundenummer"  und "Mittag.Kundenummer"

Erstelle ein Einzel-Formular für Tabelle Kunde ("frmKunde")
Erstelle ein Endlosform für Tabelle Mittag ("frmMittag")


(Datentypen sind unbedingt in einer DB zu definieren).

Füge das frmMittag als UFO-Steuerelement in frmKunde ein.
Verknüpfe das UFO-Steuerelement über die Schlüsselfelder "Kundennummer" .
Damit werden alle Essen des aktuell angezeigten Kunden aufgelistet.

Das entspricht meinen zweiten Vorschlag von vorher.

ZitatNur das Datum eingeben und die Kundennummer sollten vorgelegt sein.

ist nicht zielführend...  Welcher der Kunden soll denn standardmäßig verwendet werden?

Wähle also mit der vorgeschlagenen Formularkonstruktion einen bestimmten Kunden und trage das Datum und die Anzahl der MittagEssen  in einen neuen Datensatz ein (hier könnte das aktuelle Datum vorbelegt sein).


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

Spedi05

Hallo,

es ist eine Kantine und es kommen verschiedenen Mitarbeiter zum Essen. Die Mitarbeiter sind auf 6 Kunde aufgeteilt.
Ich muss jeden Tag die Anzahl der Mittagsessen pro Kunde eingeben.
Aktuell mache ich alles via Excel will aber zu Access wechseln.
Es kommen jeden Tag alle Kundennummer vor.

 

DF6GL

Hallo,
ja, und?

Wo gibt es jetzt ein Problem? Hast Du alle Vorgaben umgesetzt?



btw:  Access ist nicht gleich Excel.. Verabschiede Dich von Excel-Denken und ließ Dich in die Grundlagen von Access und relationalen Datenbanksystemen ein.
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

MzKlMu

Hallo,
Deine Angaben sind schwer zu verstehen.
Zitat... die Anzahl der Mittagsessen pro Kunde eingeben.
Das kann doch pro Kunde nur ein Essen sein, oder ist ein Kunde mal 2 Mittagessen ?
Sind das jeden Tag immer 6 Kunden ?

Lade hier mal die Exceltabelle hoch, mit einigen wenigen (anonymen) Daten.
Gruß Klaus

Spedi05

Hallo zusammen,

ja, es kommen täglich zu jeder Kundennummer mehrere Leute essen.
Ich habe 3 Bilder im Anhang eingefügt mit der Ist Zustand und Soll

Ich hoffe jetzt könnt Ihr mich besser verstehen :-)

Excel : ist Zustand
Access 1 : habe ich hinbekommen, pro Kunde eine Tabelle erstellt
Access 2 : sollte sein, bekomme ich leider nicht hin.

Danke im Vorasu

MzKlMu

#8
Hallo,
das ist alles ziemlich verworren und unverständlich.
Was sind das für Zahlen in der Exceltabelle ?

Und bitte auch meine Fargen beantworten:
ZitatSind das jeden Tag immer 6 Kunden ?
Gruß Klaus

Spedi05

Hallo Klaus,

ja das sind immer 6 Kunden.
Anbei die Erläuterung zur excel Zahlen.

In der blau Zeile sind die Kunden,
darunter ist jeden Tag die Besucher bzw.anzahl Mittagsessen pro Kundennummer.
z.b am 01.04 waren 35 Leute von der Kundennummer 3 essen und 10 von der Kundennummer 153 usw. 

DF6GL

Hallo,

langer Rede kurzer Sinn:    mach es einfach so, wie hier vorgestellt: 

https://www.access-o-mania.de/forum/index.php?topic=24322.msg142978#msg142978

Damit kannst Du den Zustand (aber zunächst nicht die "Darstellung") entspr. der Excel-Liste darstellen.


Über "Bequemlichkeit" (bei der Eingabe) unterhalten wir uns später.


btw: Das Feld "Name 2" in "Kunden" wird ersatzlos gestrichen.  Dabei ist die Benamsung (zusätzlichzu  den "dringenden" Maßnahmen) noch stark verbesserungwürdig.
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

Spedi05

Hallo Franz,

das habe ich erledigt. Wie kann ich nun die Eingabe tätigen wie ich mir wünsche.

In der Tabelle Kunde mit UFO-Mittag sehe ich alle Mittagsessen pro Kunde.

Vielen Dank im Voraus für dein Hilfe

Max

DF6GL

Hallo,

wie wünscht Du denn die Eingabe mit dieser DB?

Lad die mal hoch, repariert/komprimiert und gezippt.
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

Spedi05

Hallo Frank,

anbei die Tabelle in Zip.
Das Formular sollte am liebsten wie folgt aussehen :

Datum :
und alles 6 Kundenummer in einem Formular ersichtlich sein, sodass ich nur die Anzahl der Mittagsessen eintragen kann

Danke dir für deine Lösung und Hilfe




DF6GL

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