Neuigkeiten:

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

Mobiles Hauptmenü

Berechnete Werte in Formular anzeigen

Begonnen von philipp101183, Juni 05, 2011, 19:40:31

⏪ vorheriges - nächstes ⏩

philipp101183

Hallo liebes Forum,

ich bin vollkommener Anfänger auf dem Gebiet Access 2010. Ein paar skills konnte ich mir jedoch in den letzten Wochen schon aneignen. Ein paar Sachen sind für mich jedoch einfach nicht logisch und ich komme einfach nicht weiter.

Ich habe eine Tabelle die sich "Tickets" nennt mit folgenden Feldern:

-Ticketnummer
-Datum
-Verkäufer (Mehrwertfeld mit möglichen Verkäufern aus einer anderen Tabelle, jedoch höchstes zwei Verkäufer)
-Produkte (Mehrwertfeld mit möglichen Produktauswahlen mit Preis aus einer anderen Tabelle, durchschnittlich 2 produkte pro Ticket)
-Personenanzahl
-Anzahlung

Folgende Felder sollen sich errechnen am besten in der Tabelle:
-Gesamtpreis (Alle Produkte * Personenanzahl)
-Restzahlung (Gesamtpreis - Anzahlung)

In einer Abfrage kann ich die Felder Gesamtpreis und Restzahlung errechnen. Am besten wäre dies aber in der Tabelle direkt. Des weiteren habe ich für die Tabelle ein Formular womit ich die Daten editieren möchte. Auch da hätte ich gerne die Felder drinne.

Kann mir einer sagen wie ich das hinbekomme?

Des weiteren habe ich ein kleines Problem. Wenn ich in der Entwurfsansicht vom Formular bin und ein Ereignisfeld einfüge öffnet sich nicht mehr automatisch der Assistent zur Einstellung des Feldes.

Über eure Hilfe würde ich mich sehr freuen.

Beste Grüße

Philipp

MzKlMu

Hallo,
ZitatAm besten wäre dies aber in der Tabelle direkt.
Nein, das wäre keine gute Lösung. In einer Datenbank speichert man keine berechneten Felder. In der Tabelle würde es auch gar nicht gehen, bzw. erst ab Access2010.
Berechne in der Abfrage (was Du ja schon hast) und nimm die Abfrage als Datenbasis für das Formular. Also, bitte auf keinen Fall in der Tabelle rechnen, die Abfrage ist die bessere Lösung.

ZitatWenn ich in der Entwurfsansicht vom Formular bin und ein Ereignisfeld einfüge
Was verstehst Du unter einem Ereignisfeld?
Gruß Klaus

philipp101183

Das Problem ist ich brauche auch alle anderen Felder aus der Tabelle Tickets für das Formular. Wenn ich jetzt die berechneten Felder aus der Abfrage in das Formular bringen will kriege ich probleme. In dem Feld erscheint dann "#Name?#" oder so ähnlich.
Wenn ich die Abfrage normal öffne bekomme ich eine Parameterabfrage. Wenn ich die durchklicke ohne was einzutragen funktioniert es aber trotzdem mit den RIchtigen berechnungen.


MzKlMu

Hallo,,
ich rate Dir dringend auf die Mehrwertfelder (habe ich leider jetzt erst gelesen) zu verzichten. Mehrwert/Nachschlagefelder verhindern den sauberen Aufbau der DB. Du solltest mit Zwischentabellen ordentlöiche n:m Beziehungen aufbauen, alles andere ist Krampf. Auch wenn diese von Microsoft selbst erfunden wurden.
Wahrscheinlich kommen die ganzen Probleme die Du hast von der Verwendung dieser Mehrwert/Nachschlagefelder.
Ändere also erst mal das Datenmodell, alles andere ist Krampf.

Siehe hierzu:
Die Nachteile von Nachschlagefeldern

In Formularen sind die Nachschlagefelder (Kombinationsfelder) kein Problem.
Gruß Klaus

philipp101183

Ja das habe ich mir schon gedacht. Leider reichen meine Kenntinisse nicht aus um diese Mehrwertfelder zu umgehen. Wie müsste ich das denn machen bei folgenden Bedingungen: (Tabelle Tickets)
-ein Ticket hat eine Nummer die dem physischen Ticket entnommen werden kann
-ein Ticket hat ein Verkaufsdatum
-ein Ticket kann von eine, Verkäufer oder zwei Verkäufern im Team verkauft werden
-ein Ticket kann ein oder mehrere Veranstaltungen beinhalten mit wöchentlich wechselnden Preisen und Zeiten
-ein Ticket hat eine Anzahlung
-ein Ticket hat eine Restzahlung
-ein Ticket hat einen Gesamtpreis

Bisher habe ich es so gemacht:
Tabelle Verkäufer

Tabelle Produkte

Tabelle Tickets

Würde mich über Hilfe sehr freuen.

LG

Phil

philipp101183

Hey wirklich keiner eine Ahnung? Wie bekomme ich denn sonst ein Berechnetes Feld aus einer Abfrage in einem Formular das sich auf eine Tabelle bezieht angezeigt?

DF6GL

Hallo,


naja, "Ahnung" würde ich da nicht ansprechen wollen...



"Wie bekomme ich denn sonst ein Berechnetes Feld aus einer Abfrage in einem Formular das sich auf eine Tabelle bezieht angezeigt?"


wenn sich das berechnete Feld in einer Abfrage befindet , die nicht als Datenherkunft im Formular steht, dann könnte(!) das Feld mit der Dlookup()-Funktion ausgelesen und in einem Textfeld angezeigt werden.



Ich befürchte aber eher, dass Dein Tabellenkonzept unvollständig ist.

Es fehlt mindestens eine Tabelle "tblTicketverkäufe", wenn ein Ticket mehrmals (??) verkauft werden kann, und eine weitere, wenn ein Ticketverkauf auch noch von mehreren Verkäufern gleichzeitig behandelt (verkauft)  wird...


Wenn ich Deine Schilderungen der Ticketverkäufe richtig deute...

philipp101183

Jedes Ticket hat eine eindeutige Nummer, die Nummern werden von einem Ticketblock abgerissen uns sind durchnummeriert. Jedes Ticket kann jedch individuell verkauft werden. Mit den jeweiligen Produkten die zur Zeit angeboten werden. Die Kombinatin ist jedoch frei.

Wie kriege ich denn die Dlookup Schleife in das Formular???

DF6GL

Hallo,

naja, das mit dem Ticket-Verkauf versteh ich nicht so ganz...

Wie auch immer:

Schreib in den Steuerelementinhalt eines Form-Textfeldes:

=DomWert("Spaltenname";"Abfragename";"ID= <<Irgendwas>>"

falls ein Kriterium nötig ist, sonst weglassen, wenn die abfrage nur einen DS liefert