collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 68
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 1
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 14038
  • stats Beiträge insgesamt: 67221
  • stats Themen insgesamt: 9067
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Berechnung von Werten iVm der Verknüpfung von Feldern in einem Formular  (Gelesen 2081 mal)

Offline Chris777777

  • Newbie
  • Beiträge: 42
Hallo zusammen,
ich habe ein Formular u. a. mit den Feldern: Kunde, Land, Behälter und Faktor erstellt. Es gibt viele verschiedene Möglichkeiten diese vier Felder auszufüllen, z.B.:
Kunde: A
Land: Belgien
Behälter: Box
Faktor: 0,4

oder

Kunde: A
Land: Belgien
Behälter: Kiste
Faktor: 1,2

Alle Kombinationsmöglichkeiten habe ich in eine separate Tabelle geschrieben. Sobald die Felder Kunde, Land und Behälter gefüllt sind und in einem weiteren Feld "Anzahl" ein Wert eingegeben wurde, z.B. 10, soll dieser Wert mit dem entsprechenden Faktor multipliziert werden. Das Ergebnis soll ich einem weiteren Feld angezeigt werden.

Ist sowas möglich?
Danke und viele Grüße,
Chris
 

Offline Beaker s.a.

  • Access Guru
  • ****
  • Beiträge: 1863
In die Eigenschaft "Steuerelementeinhalt" von einem weiteren Feld:
= Me.Faktor * Me.Anzahl
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Hallo,
und als Hinweis: Auf eine Feldname "Anzahl" ist unbedingt zu verzichten. Je nach Formel liefert Anzahl die Anzahl der Datensätze und nicht den Eintrag im Feld. Besonders wenn man Anzahl im Steuerelementinhalt verwendet.
Bei der Formel von ekkehard oben dürfte das auch der Fall sein.
Ändere das Feld in "Menge" z.B.
Gruß
Klaus
 

Offline Chris777777

  • Newbie
  • Beiträge: 42
Hallo,
ok, den Feldnamen habe ich auf Menge geändert. Allerdings erscheint nun in dem weiteren Feld (Feldname = Übertragungswert) #Name?
Es muss doch zunächst auf die Tabelle "tblDaten" (in der alle Kombinationsmöglichkeiten wie "Kunde", "Land", "Behälter" und "Faktor" aufgelistet) zugegriffen werden oder? Sobald z.B. das Land oder der Behälter abgeändert wird, ändert sich auch der Faktor. Der Faktor wird jedoch nicht von den Benutzern eingegeben, sondern soll automatisch nach Eingabe von Kunde, Land und Behältern gezogen und mit dem Feld "Menge" multipliziert werden. Das ermittelte Ergebnis soll dann im Feld "Übertragungswert" erscheinen.
Viele Grüße,
Chris
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Hallo,
von was ist denn der Faktor abhängig, vom Behälter und dem Kunden oder nur vom Behälter.

In einer Abfrage mit den beteiligten Tabellen und der Verknüpfung über die Schlüsselfelder steht auch der Faktor für Berechnungen direkt zur Verfügung.
In der Abfrage dann ein berechnetes Feld:
Übertragungswert: Faktor * Menge
Du muss darauf achten, dass Anzahl überall in Menge geändert wird, auch in Abfragen muss das angepasst werden. Das geht nicht automatisch.
Gruß
Klaus
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1294
Klarstellung: Nicht der Feldname Anzahl sondern die (Pest-)Option Objektnamenautokorrektur ist für Fehler beim Rechnen mit dem Feld verantwortlich.
Grüße von der (⌒▽⌒)
 

Offline Chris777777

  • Newbie
  • Beiträge: 42
Hallo,
der Faktor ist abhängig vom Kunden, Behälter und auch vom Land. Die dafür relevanten Infos habe ich in die tblDaten hinterlegt. Wenn ich z.B.
Kunde: A
Behälter: Box
und Land: Belgien
eingebe, ist der Faktor immer 0,4
Sobald für Kunde, Behälter oder Land etwas anderes eingetragen wird, ändert sich der Faktor wieder. Alle möglichen Kombinationen der drei Felder sind in der tblDaten hinterlegt. Auf diese Daten soll dann im Formular im Feld Übertragungswert zugegriffen werden. In diesem Feld muss dann eine Prüfung stattfinden, mit welchen Angaben die Felder Kunde, Behälter und Land gefüllt sind. Der entsprechende Faktor soll dann mit dem Feld Menge multipliziert werden. Das Feld Menge wird vom Benutzer individuell eingegeben.
Viele Grüße,
Chris
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Hallo,
Zitat
In diesem Feld muss dann eine Prüfung stattfinden, mit welchen Angaben die Felder Kunde, Behälter und Land gefüllt sind.
da muss doch nichts geprüft werden. In der Tabelle steht das doch alles Datensatzabhängig drin.
Zeige mal ein Bild des Beziehungsfensters.
Gruß
Klaus
 

Offline Chris777777

  • Newbie
  • Beiträge: 42
Hallo,
ich lade mal die ZIP hoch. Vielleicht ist das leichter.
Viele Grüße,
Chris
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1294
Hier ist eine mögliche Umsetzung für die Dateneingabe bzw. zum Navigieren.

PS: wegen unterschiedlicher Schreibweise von Hongkong (Land) vs. Hong Kong (Daten) habe ich zusätzlich ein Land Hong Kong in die Tabelle Land am Ende eingefügt, was Du löschen solltest, nachdem zuvor in der Faktorentabelle der Datensatz mit der LandId 249 auf 80 geändert wurde. Ich hab's leider erst zu spät bemerkt.
« Letzte Änderung: März 06, 2018, 20:31:31 von Lachtaube »
Grüße von der (⌒▽⌒)
 
Folgende Mitglieder bedankten sich: Chris777777

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Hallo,
ich habe auch noch eine mögliche Umsetzung.
Vom Gedanke ist die ähnlich dem Vorschlag von Lachtaube. Ich habe nur vollständige Beziehungen angelegt.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Chris777777

Offline Chris777777

  • Newbie
  • Beiträge: 42
Hallo,
super, danke für eure Mühe. Das sieht sehr gut aus. Es gibt allerdings noch ein kleines Problem. Für manche Kunden ist keine Länder-Behälter Beziehung mit dem dazugehörigen Faktor vorhanden. Das ist auch so gewollt. Das bedeutet, dass noch mehr Kunden existieren, als in der tblDaten bzw. LKB_Faktor angegeben. Wenn ein Kunde keine Länder-Behälter Beziehung besitzt, sollen die Felder im Formular frei ausfüllbar sein bzw. mithilfe des Dropdown-Button gefüllt werden können.
Zudem wäre es schön, wenn in der Tabelle tblWA bzw. WA die Einträge aus dem Formular mit Wörtern gefüllt werden und nicht mit Ziffern. Also soll z.B. das Feld Land nicht mehr mit der LandID (z.B.88) gefüllt werden, sondern mit Israel.
Viele Grüße,
Chris
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Hallo,
Zitat
Zudem wäre es schön, wenn in der Tabelle tblWA bzw. WA die Einträge aus dem Formular mit Wörtern gefüllt werden und nicht mit Ziffern. Also soll z.B. das Feld Land nicht mehr mit der LandID (z.B.88) gefüllt werden, sondern mit Israel.
Ist Dir nicht aufgefallen, dass es bei unseren Vorschlägen in der Tabelle tblWA keine Felder zum Land, zum Kunden und zum Behälter mehr gibt ? Wenn Du die Beziehungen angesehen hast, sollte Dir das eigentlich aufgefallen sein. Das geht auch nicht anders, in der Tabelle haben die anderen Felder nichts zu suchen.
Wenn Du die Klartexte benötigst, so ist das über eine Abfrage zu erledigen. Alles andere würde dem Sinn einer Datenbank widersprechen.

Zitat
Wenn ein Kunde keine Länder-Behälter Beziehung besitzt, sollen die Felder im Formular frei ausfüllbar sein bzw. mithilfe des Dropdown-Button gefüllt werden können.
Welche Felder willst Du dann frei ausfüllen ?
« Letzte Änderung: März 07, 2018, 17:35:56 von MzKlMu »
Gruß
Klaus
 

Offline Chris777777

  • Newbie
  • Beiträge: 42
Hallo,
das ist mir schon aufgefallen. Jedoch habe ich keine Erfahrungen mit Access und weiß dementsprechend nicht was möglich ist bzw. welche Auswirkungen eine Einstellung hat.

Wie muss ich denn die Abfrage gestalten, damit ich Klartexte erhalte?

Sobald eine Land-Kunde-Behälter Beziehung nicht in der tblDaten gelistet ist, sollen alle anderen Felder wie Land, Kunde oder Behälter ohne Begrenzung füllbar sein. Hier gibt es dann auch keinen Faktor und das Übertragungsfeld soll einfach leer bleiben.

Viele Grüße,
Chris
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7375
Hallo,
Zitat
Hier gibt es dann auch keinen Faktor und das Übertragungsfeld soll einfach leer bleiben.
Soll in dieses Feld dann manuell etwas eingetragen werden (können) ?
Gruß
Klaus