Neuigkeiten:

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

Mobiles Hauptmenü

Bestellformular erstellen

Begonnen von weggli1, Juli 20, 2010, 18:22:16

⏪ vorheriges - nächstes ⏩

weggli1

Hallo allerseits. Ich habe ein riesenproblem und komm nicht weiter, hänge bestimmt schon 2 Tage daran.
Ich habe eine DB für einen Onlineshop erstellt. Nun möchte ich ein Bestellformular machen, in welchem man mehrere (verschiedene) Produkte auf einmal bestellen kann. (Ich weiss, dass es dieses Thema hier schon gibt, aber die anderen Threads haben mir nicht im geringsten weitergeholfen). Im Hauptformular sollten die Kundendaten eingegeben werden (resp. die K-Nr., der Rest kommt automatisch). Das hab ich auch schon geschafft, aber die Produkte kann ich irgendwie nicht einbinden (egal ob im HF oder im UFO).
An den Beziehungen sollt es jedoch nicht liegen, ich glaube die sind korrekt (bild). Und die Gesamtpreise können ja auch ohne Feld in einer Tabelle im Unterformular ausgerechnet werden oder?

kann mir jemand helfen?

[Anhang gelöscht durch Administrator]

oma

Hallo,

1.  Bist du dir sicher, eine Access-Datenbank für ein Onlineshop zu gestalten
2.  Bist du dir sicher, dass du die Tabellen:   "wird bestellt"   u.  "wird nachbestellt" benötigst
3.  Was klappt denn nicht, wenn du zu einem Hauptformular (mit Daten der Kunden) ein Unterformular mit den Daten der Besellungen erstellt; beide Formulare mit der Kundennummer verknüpfst u. im Unterformuar die Produkte mit ein Kombifeld auswählst?

Gruß Oma
nichts ist fertig!

weggli1

Hab das Beziehungsschema leicht angepasst. (Neues Bild)
Die Tabellen "wird bestellt" und "wird nachbestellt" brauche ich, um verschiedene Produkte in der gleichen Bestellung (mit der gleichen Auftrag_ID) vermerken zu können.
Wenn ich jedoch ein Unterformular anlege, dann enthält es keine Daten, egal wie ichs drehe und wende, ich kann keine Produkte auswählen, wenn ich ein Listenfeld erstelle, weswegen das ganze für die Katz ist....

[Anhang gelöscht durch Administrator]

MzKlMu

Hallo,
ZitatWenn ich jedoch ein Unterformular anlege, dann enthält es keine Daten, egal wie ichs drehe und wende, ich kann keine Produkte auswählen, wenn ich ein Listenfeld erstelle, weswegen das ganze für die Katz ist....
Bevor das datenmodell nicht stimmt, solltest Du eh keine Formulare anlegen, sonst sind diese auch für die Katz.
Ein Unterformular ist immer Bestandteil eines Hauptformulars.

Was zeigt das Hafo (Datenhrkunft) und was das Ufo (auch Datenherkunft)?

ZitatDie Tabellen "wird bestellt" und "wird nachbestellt" brauche ich,
Ich würde das in einer Tabelle machen, eventuell mit einem Kennzeichen für eine Nachbestellung.
Der Unterschied zwischen  "wird bestellt" und "wird nachbestellt"ist mir aber noch nicht ganz klar.
Gruß Klaus

weggli1

ZitatBevor das datenmodell nicht stimmt, solltest Du eh keine Formulare anlegen, sonst sind diese auch für die Katz.
Ein Unterformular ist immer Bestandteil eines Hauptformulars.

Was zeigt das Hafo (Datenhrkunft) und was das Ufo (auch Datenherkunft)?

Das Hafo zeigt sämtliche Kundendaten ausser Kunde_ID (Aus KUNDE) sowie Kunde_ID, Auftrag_ID, Auftragsdatum und Mitarbeiter_ID aus KUNDEN_BESTELLUNGEN.
Das Ufo sollte nun Produkt_ID, Produktname (als Listenfeld zum auswählen), Verkaufspreis, Anzahl sowie den Gesamtpreis ( Verkaufspreis*Anzahl) darstellen, aber da wähle ich wohl immer eine falsche Datenherkunft, anders kann ich mir das nicht erklären.

ZitatDer Unterschied zwischen  "wird bestellt" und "wird nachbestellt"ist mir aber noch nicht ganz klar.

Die eine Tabelle ist für die ausgehenden Bestellungen an die Lieferanten und die andere für die eingehenden der Kunden.

oma

Hallo,

ZitatDer Unterschied zwischen  "wird bestellt" und "wird nachbestellt"ist mir aber noch nicht ganz klar.

kommt wahrscheinlich aus den Bezeichnungen der Tabellen; es sollen ja wohl tblBestellLieferanten und tblBestellKunden sein.
hatte das zunächst auch "übersehen"

Gruß Oma

PS. Jo, kann man auch aus dem Schema erkennen, aber was in den Tabellen das Feld Anzahl (wohl nicht die Anzahl der bestellten Produkte)
nichts ist fertig!

weggli1

Zitataber was in den Tabellen das Feld Anzahl (wohl nicht die Anzahl der bestellten Produkte)

Doch, welche Anzahl des Produkts X in Auftrag Y vorkommt. Sieht dann ungefähr so aus:

Auftrag_ID   Produkt_ID   Anzahl
        1                  1               2
        1                  2               5
        1                  6               9
        2                  1               1
        2                  5               2

MzKlMu

Hallo,
ich würde das dann doch noch erheblich umstricken.

- Kunden und Lieferanten in eine Tabelle, mit einem Kennzeichen ob Kunde oder Lieferant (oder auch beides)

- Die Bestellungen in eine Tabelle, mit Kennzeichen ob Nachbestellung oder Kundenauftrag. Hier wird noch ein Faktor geführt für Kundenaufträge=-1 für Nachbestellungen =1. Mit diesem Faktor wird die Anzahl multipliziert. Wenn man das Ergebnis dieser Multiplikation gruppiert (nach dem Artikel) hat man stets den aktuellen Bestand. Das Feld "Menge an Lager" ist dann überflüssig, denn der Bestand wird ja errechnet.
Damit kannst Du in einem einzigen Formular (mit einem Ufo) alles verwalten.
Gruß Klaus

weggli1

ZitatHallo,
ich würde das dann doch noch erheblich umstricken.

- Kunden und Lieferanten in eine Tabelle, mit einem Kennzeichen ob Kunde oder Lieferant (oder auch beides)

- Die Bestellungen in eine Tabelle, mit Kennzeichen ob Nachbestellung oder Kundenauftrag. Hier wird noch ein Faktor geführt für Kundenaufträge=-1 für Nachbestellungen =1. Mit diesem Faktor wird die Anzahl multipliziert. Wenn man das Ergebnis dieser Multiplikation gruppiert (nach dem Artikel) hat man stets den aktuellen Bestand. Das Feld "Menge an Lager" ist dann überflüssig, denn der Bestand wird ja errechnet.
Damit kannst Du in einem einzigen Formular (mit einem Ufo) alles verwalten.

Das klingt schon praktisch, aber dann ist die Werteingabe nicht mehr so simpel wie bis jetzt (Lieferantenauswahl z.B. beim eingeben neuer Produkte) und den Bestand kann ich ja auch so errechnen lassen. Hätte die Lieferanten und die Kunden gerne getrennt gehabt...

MzKlMu

Hallo,
ZitatDas klingt schon praktisch, aber dann ist die Werteingabe nicht mehr so simpel wie bis jetzt (Lieferantenauswahl z.B. beim eingeben neuer Produkte)
Nein, da irrst Du Du kannst auch mit einer Tabelle auf Lieferanten beschränken, denn Du hast ja ein Kennzeichen in der Tabelle.
OK, Lieferanten und Kunden getrennt zu halten ist Ansichtssache, aber die Bestellungen/Nachbestellungen würde ich auf keinen Fall getrennt machen.
Zitatund den Bestand kann ich ja auch so errechnen lassen.
Aber mit 2 Tabellen ist das viel aufwändiger.
Gruß Klaus

weggli1

ZitatNein, da irrst Du Du kannst auch mit einer Tabelle auf Lieferanten beschränken, denn Du hast ja ein Kennzeichen in der Tabelle.
OK, Lieferanten und Kunden getrennt zu halten ist Ansichtssache, aber die Bestellungen/Nachbestellungen würde ich auf keinen Fall getrennt machen.

Also würdest du das so machen? Mit einem Ja/Nein-Wert beim Feld Nachbestellung?

[Anhang gelöscht durch Administrator]

MzKlMu

Hallo,
nein, so würde ich es nicht machen. Die Bestellungen müssen in einer Tabelle erfasst werden. Lieferanten_Bestellung und Kunden_Bestellung = eine Tabelle. Und in diese kommen 2 Felder eines für die KundenID und eins für die LieferantenID (wenn Du schon 2 Tabellen führen willst). Oder nur ein Feld und darin wird entweder die Kunden oder die LieferantenID erfasst. Und in diese gemeinsame Bestelltabelle kommt dann das kennzeichen.
Das wird aber nur gebraucht, wenn Du die IDs in einem Feld speicherst. Wenn Du 2 Felder (KundenID und LieferantenID) anlegst, brauchst Du auch dieses Kennzeichen nicht.

Lade doch statt der Bilder einfach mal die DB hoch (gezippt und komprimiert).
Gruß Klaus

weggli1

Ok, also hier ist die Datenbank, wie ich sie eigentlich geplant hatte...

[Anhang gelöscht durch Administrator]

MzKlMu

Hallo,
mit Access2007 kann ich leider nichts anfangen, ich habe kein Access2007. Bitte konvertieren in Access2003 oder kleiner.
Gruß Klaus

weggli1

Sorry, hier ist es konvertiert.

[Anhang gelöscht durch Administrator]