Einzelnen Beitrag anzeigen
Alt 12.08.2017, 16:13   #20
ebs17
MOF Guru
MOF Guru
Standard

Zitat:

Wird beim Weiterschalten zum nächsten DS immer die Berechnung aktiviert?

Das kommt darauf an: Ist eine Berechnung im Steuerelementinhalt hinterlegt (ein DLookup wäre auch eine Berechnung), dann darfst Du damit rechnen. Ist das Formular an eine Abfrage gebunden, wird die Abfrage beim Laden des Formulars einmalig ausgeführt, die Textfelder zeigen dann nur Inhalte an.


Zitat:

Die oben vorgeschlagene Ersatzfunktion ändert daran nichts Wesentliches.

Siehe #16: Wenn man sich ein Paar gute Laufschuhe anzieht, kann man bei den 14 Läufen zum Getränkemarkt etwas besser laufen als in Straßenschuhen, ob das für eine wesentliche Verbesserung führt, mag jeder für sich beurteilen.

Das einmalige Wasserholen (einzelne alles berechnende Abfrage) könnte etwa so aussehen:
1) Anlegen einer Kriterientabelle
Code:

Gruppe    Bezeichnung    Kriterium
1         Profi          PKD
1         Profi          CVD
2         Amateur        ABA
2         Amateur        OHNE
...
Mit dieser Tabelle kann man die verschiedenen Kriterien besser und vor allem auf einmal in die Abfrage einbringen. Außerdem lassen sich die Tabelleneinträge besser variieren und pflegen (über eine GUI auch durch Benutzer) als wenn sie hardcodiert in einer Anweisung stehen

2) Einbindung der zusätzlichen Tabelle in eine Abfrage, die als Datenherkunft für ein einfaches gebundenes (Endlos)Formular dient:
Code:

SELECT 
   U.Gruppe, 
   SUM(U.Menge) AS Mengensumme, 
   SUM(U.Umsatz) AS Umsatzsumme 
FROM 
   (
      SELECT 
         K.Gruppe, 
         W.Menge, 
         W.Umsatz 
      FROM 
         Werkzeug_Artikel AS W, 
         Kriterientabelle AS K 
      WHERE 
         W.Werkzeug LIKE "*" & K.Kriterium & "*" 
   ) AS B 
GROUP BY 
   U.Gruppe
Die Felder Werkzeug und Gruppe sollten indiziert sein (siehe Grundlagen - SQL ist leicht (8) - Index).

Für eine richtige Lösung (noch performanter) würde man das Feld Werkzeug in atomare Informationen zerlegen. Dann könnte man auch da indiziert auf Gleichheit prüfen.

__________________

Ein freundliches Glück Auf!

Eberhard

Abfrageperformance ist kein Geheimnis
SQL ist leicht: {0}:{1}:{2}:{3}:{4}:{5}:{6}:{7}:{8}:{9}:{10}:{11}
Dein Dankeschön: DBWiki=>Spende

Geändert von ebs17 (12.08.2017 um 16:16 Uhr).
ebs17 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten