none
Runningvalue Problem RRS feed

  • Frage

  • Sehr geehrte Forumsmitglieder,

    ich stehe vor einem ziemlich blöden Problem.
    Ich habe ein RunningValue Feld und würde gerne, sobald er den Wert 21 überschritt von neu anfängt zu zählen:


    Derzeit habe ich schon folgende Abfragen probiert, die mir leider kein Erfolg gebracht haben:

    SUM(ISNULL(Sollmenge / NULLIF(AnzahlArtPack,0),0) )  OVER (ORDER BY Zeit,Artikel ROWS UNBOUNDED PRECEDING) AS RunningValue
    SUM(ISNULL(Sollmenge / NULLIF(AnzahlArtPack,0),0) )  OVER (ORDER BY Zeit,Artikel ROWS BETWEEN 21 PRECEDING AND CURRENT ROW ) AS RunningValue

    Ich bin mit meinem Latein am Ende und benötige paar Denkanstöße, um das Ziel zu erreichen.

    Ist es denn überhaupt möglich? Bevor ich noch weiter und weiter probiere und recherchiere?

    Vielen Dank im Voraus.

    Gruß dash_


    Montag, 18. März 2019 13:26

Alle Antworten

  • Hallo,

    wende doch einfach ein Modulo 21 an.

    SUM(ISNULL(Sollmenge / NULLIF(AnzahlArtPack,0),0) )  OVER (ORDER BY Zeit,Artikel ROWS UNBOUNDED PRECEDING) % 21 AS RunningValue


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Montag, 18. März 2019 15:12
  • Hallo,

    danke erstmal für die schnelle Rückmeldung. Ich habe es mal mit dem Modulo probiert.

    Es ist schon ein großer Schritt nach vorne, aber wie bekomme ich das noch hin, dass er mir die 3 anstatt die 0 als Anfangswert nimmt? Denn ansonsten würden die ja verloren gehen.

    Gibt es denn ein Trick womit man mit dem Modulo auch mit "float" werden arbeiten kann? Ansonsten wird es auch sehr ungenau mit der Berechnung.

    Gruß dash_

    Dienstag, 19. März 2019 06:41
  • hilft sowas?

    ( ( RunningValue * 1000) % 21000 ) / 1000

    Grüßle

    m.

    Freitag, 10. Mai 2019 08:02