Neuigkeiten:

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

Mobiles Hauptmenü

Wert aus Abfrage in Formular anzeigen

Begonnen von yme24, Januar 31, 2019, 08:14:55

⏪ vorheriges - nächstes ⏩

yme24

Wow, vielen Dank Klaus.
Das klingt ziemlich kompliziert, hoffentlich steig ich da durch  :-[
Ich schaue mir das heute Abend an (bin gerade unterwegs und habe hier kein Access).
Habe dir kurz mal die Berechnung in Excel eingetippt. So werden die Zuschläge be- und verrechnet.

Ich melde mich wenn ich mir die DB anschauen konnte.

VG,
Martin

MzKlMu

Hallo,
ZitatDas klingt ziemlich kompliziert,
Das ist nicht kompliziert. Du wirst Dich wundern.
Gruß Klaus

MzKlMu

#32
Hallo,
Achtung:
Ich habe oben eine geänderte Version hochgeladen.

Wenn Du die DB heruntergeladen hast, bitte noch mal herunterladen.

Ich hatte einen Denkfehler. Es darf nicht die ZuschlagID gespeichert werden, sondern der ermittelte Zuschlag. Das Feld ZuschlagID_F in der Messwerttabelle und die entsprechende Beziehung habe ich gelöscht. Statt dessen gibt es das Feld ermZuschlag (=ermittelter Zuschlag) in der Messwerttabelle, das keine Beziehung benötigt. An der Berechnungsmethode selbst hat sich nichts geändert.
Gruß Klaus

yme24

Hallo Klaus, guten Morgen.

Ich habe mir die DB angesehen. Vielen Dank für die Arbeit die du hier (vor allem am Wochenende!) investiert hast.
Die Beziehungen sind mir noch nicht so ganz klar, aber ich schau mir das heute nochmals an um es zu verstehen. Mit VBA kenne ich mich so 0,0 aus... weiß nicht ob ich das begreife  :-[

Ich bekomme beim öffnen der Formulare die Meldung "Parameterwert eingeben" tbl_Prüfberichtstoffe.ZuschlagID_F. Hängt das mit der Abfrage zusammen? Denn da steht bei ZuschlagID_F nichts drin.

Bei der Sache mit dem Betrag hast du dir leider zu viel Arbeit gemacht. Es gibt pro Prüfbericht nur einen Betrag der den Kunden verrechnet wird. In dem Formular wird aber jeder Stoff einzeln ausgepreist. Ich würde das Feld Betrag hinter jedem Stoff gerne rausnehmen und dafür im Berichtskopf einen "finalen" Betrag anzeigen (Summe der Zuschläge aus CSB,Nges undP + Basiswert - oder Basiswert *2 - je nachdem was korrekt ist).

Ich finde die Variante mit den Kombinationsfeldern bei den Stoffen sehr schön, so kann man die gemessenen Stoffe beliebig anzeigen.

VG,
Martin

MzKlMu

#34
Hallo,
zwei der Formaulare sind Unterformulare. Die haben ein ...Ufo... im Namen. Diese Formulare können und dürfen nicht selbstständig geöffnet werden. Diese sind in die Hauptformulare eingebunden. Ein einzelnes Öffnen führ dann logischerweise zu der Parameternachfrage. Das mit dem Betrag war kein Aufwnd, das ist nur eine Spalte in der Abfrage.
Zitat(Summe der Zuschläge aus CSB,Nges undP + Basiswert - oder Basiswert *2 - je nachdem was korrekt ist).
Soll das nicht * 2 sein, also so:
Summe(CSB, Nges, P) * Basiswert
oder
Basiswert *2
jenachdem was korrekt ist.

Hast Du die neue Version heruntergeladen und verwendet ?
Das ist wichtig, in der vorherigen Version waren Fehler.
Gruß Klaus

yme24

Ja du hast natürlich recht, auf die prozentuale Berechnung bezogen ist es die Summe der Zuschläge * Basiswert.
Montag Morgen halt...  ::)

Die Meldung erscheint beim öffnen des Hafo in der Version die ich heute morgen nochmal herunter geladen habe.
Sie erscheint auch beim öffnen der Abfrage... daher meine Vermutung.

VG,
Martin

MzKlMu

Hallo,
grr... mein Fehler, ich habe Felder gelöscht und die Formulare nicht angepasst. Gib mir eine Stunde.
Gruß Klaus

MzKlMu

Hallo,
anbei eine neue Version (02).
Ich habe auch die Zuschlagstabelle noch geändert. Da stehen jetzt die echten Zuschläge drin (<=1), was für das Summieren vorteilhafter ist. Vorher war das ja ein Faktor (>=1)
Ich habe auch das mit dem Betrag (und der Deckelung auf 2) eingebaut. Ich habe das hoffentlich richtig verstanden.
Schaue es Dir an.

Öffne bitte immer nur die Hauptformulare.
Gruß Klaus

yme24

Hallo Klaus,

das ist Super :)
So ganz bin ich noch nicht durchgestiegen wie das mit der tbl_Prüfberichtstoffe funktioniert, weil da ja im Prinzip nur IDs drinstehen, aber ich werde mal (in einer Kopie) genauer untersuchen was du da gezaubert hast.
Eine Kleinigkeit war nicht richtig bei der Berechnung im Ufo aber das habe ich schnell selber korrigiert... mit WENN Formeln kenne ich mich ja aus  ;D
Korrekt steht jetzt im "Verrechnet wird" Feld: =WENN(SummeErmZuschl>1;2;SummeErmZuschlag+1)
Das bewirkt jetzt zum einen die Deckelung als auch eine korrekte Berechnung falls die 100% nicht erreicht werden.

Ich gebe jetzt mal eine Reihe Prüfberichte ein und schaue ob alle Daten so passen. Ich darf dir übrigens neben meinem "Danke" auch von meinen Kollegen ein ganz großes Dankeschön übermitteln  :D

VG,
Martin

Beaker s.a.

ZitatWas ist richtig ?
Bei einer Deckelung wohl eher dies
Zitat=WENN(SummeErmZuschl+1>2;2;SummeErmZuschlag+1)
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)

MzKlMu

@Ekkehard
ich habe ja meine Antwort oben wieder gelöscht.
Alle 3 Formeln stimmen nicht.
Sowohl bei Dir als auch bei Martin wird bei 1,8 als Summe der Zuschläge 2 eingetragen, was aber falsch ist, das muss bei 1,8 bleiben.
Und meine Formel stimmt nicht wenn die Summe der Zuschläge 0 ist (keine Zuschläge).
Ich muss da noch mal nachdenken. Oder Ihr  ;D
Gruß Klaus

yme24

Hallo Ekkehard und Klaus,

Bei meiner Formel wird bei einem Zuschlag von 1,8  die Verrechnung 2 angegeben und das ist korrekt, denn: 1,8 entspricht 180%. Der Deckel ist bei Basiswert*2 = 100%.
Bei einem Zuschlag-Wert <1 wird im Feld Verrechnung der ermittelte Zuschlag +1 angezeigt. Das ist korrekt, da der Basiswert * 1,x genommen wird.

VG,
Martin


MzKlMu

Hallo,
wenn Du sagst, es ist richtig soll es mir recht sein. Du musst es wissen.
Gruß Klaus

yme24

Hallo Klaus,

ja der Wert ist korrekt. Ob da jetzt eine 2 steht oder 100% ist wirklich egal.

Viel prolematischer ist, dass beim hinzufügen neuer Datensätze keine Berechnungen ausgeführt werden. Muss ich da irgendwas beachten?

VG,
Martin

Beaker s.a.

Hallo Klaus,
Zitatich habe ja meine Antwort oben wieder gelöscht.
Überschneidungen passieren halt.

Ansonsten denke ich aber den TS richtig verstanden zu haben.
I.Ü. könnte man den Ausdruck auch so formulieren
=WENN(SummeErmZuschl<1;SummeErmZuschlag+1;2)

@Martin
Das liegt wohl daran, dass es bei einem neuen DS noch keine Daten für
die Berechnungen vorliegen. Ergänze diese mit der Nz() Funktion.
=Nz(CSB;0) + Nz(Nges;0) + Nz(P;0)
bzw.
WENN(Nz(SummeErmZuschl;0)<1;Nz(SummeErmZuschlag;0)+1;2)

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)