0

System ausgebremst

Hallo, ich habe im täglichen DS ein Auswahlfeld( mit 6 Werten) und ein Zahlenfeld 'Stunden'.

Jetzt möchte ich für eine grafische Darstellung die Stunden in verschiedenen (je Auswahl 1) Berechnungsfeldern
dargestellt haben. Ich bediene mich der Formel:

let myChoice := "Quelkhorn";
let myD := Datum;
let myMA := MA.Name;
sum((select Stunden_Kalender where text(Bereich) = myChoice and Datum = myD and MA.Name = myMA).'Summe Stunden')

und es klappt.
Allerdings bremse ich das System aus wenn nicht filtere sondern alle Datensätze aufrufe. Dann dreht sich der Kreisel....

Darf ich daraus schließen, das es eine elegantere Lösung zu Darstellung dieser 6 Berechnungsfelder gibt?

Danke schon einmal!

Wolfgang

1 Antwort

null
    • Team Lead Customer Service
    • joerg
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Wolfgang, 

    dadurch in jedem Datensatz der select-Befehl sechs mal die komplette Tabelle durchsucht wird kann es bei größeren Datenmengen schon zu einer längeren Berechnungszeit kommen. 

    Man könnte versuchen durch die do as server-Funktion:

     

    do as server 

    let myChoice := "Quelkhorn";
    let myD := Datum;
    let myMA := MA.Name;
    sum((select Stunden_Kalender where text(Bereich) = myChoice and Datum = myD and MA.Name = myMA).'Summe Stunden')

    end

    das Ganze ein wenig zu beschleunigen.

    Benötigst du die Berechnungen wirklich alle auf jedem Datensatz?

    Man könnte vielleiht eine "Dashboard"-Tabelle anlegen, auf der diese Berechnung dann nur einmal ausgeführt wird

    oder auch in jedem Datensatz nur die Berechnung des eigenen Bereichs anzeigen 

    oder die Berechnung nur einmal am Tag ausführen und über eine Button auslösen und Text- oder Zahlenfelder schreiben lassen.

    Beste Grüße, Jörg

Content aside

  • vor 4 JahrenZuletzt aktiv
  • 1Antworten
  • 875Ansichten