0

Änderung von Datensätzen nach Wechsel eines Auswahlfeldes

Ich versuche in einer Untertabelle nach dem Änderen eines Auswahlfeldes den Rest von freien Tagen neu berechnen zu lassen wie in dem SCS 

ich setze im Auswahlfeld nach Ändern Script ausführen.

den Code ein

let myStat := Auswahl;
let myLastDF := min(Dienstfrei);
if myStat = 2 then
Dienstfrei := myLastDF - 1
end;
if myStat = 1 then
Dienstfrei := myLastDF + 1
end

der zählt mir den Aktuellen Datensatz rauf  oder runter nicht aber die nachfolgenden.

wie könnte ich das am einfachsten umsetzen.

vlg MartinK 

2 Antworten

null
    • Martin_K
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Ich muss mich wieder bei Hr. Hansen bedanken und natürlich auch bei allen anderen die hier so viel Hilfe leisten.. 

    möchte auch noch das CodeSchnibbel bereit stellen damit es eventuell andere weiter verwenden können..

     

    let my := this;
    let myDiensteinteilung := Diensteinteilung;
    let myStat := Auswahl;
    let myDate := Datum;
    for i in select Diensttabelle where Diensteinteilung = myDiensteinteilung and Datum >= myDate do
    let myX := i.DFTage;
    if myStat = 2 then
    i.(DFTage := myX - 1)
    end;
    if myStat = 1 then
    i.(DFTage := myX + 1)
    end
    end

    vielen Dank nochmals

    • Martin_K
    • vor 6 Jahren
    • Gemeldet - anzeigen

    habe das Problem endlich gelöst  der Code dafür sieht so aus wenn es jemanden hilft.

    let myOlddat := date(year(Datum), month(Datum), day(Datum) - 2);
    let myName := Name;
    let myx := 1;
    while (select Diensttabelle where Name = myName and Datum = myOlddat).Auswahl = 1 do 
    myx := myx + 1;
    myOlddat := myOlddat - 2
    end
    ;
    let myoldDif := (select Diensttabelle where Name = myName and Datum = myOlddat).Auswahl;
    if Auswahl = "1" then
    myx
    else
    if Auswahl = "2" then
    0
    else
    if Auswahl = "3" then
    0
    else
    if Auswahl = "4" then
    myx
    else
    if Auswahl = "6" then 0 end
    end
    end
    end
    end

Content aside

  • vor 6 JahrenZuletzt aktiv
  • 2Antworten
  • 1524Ansichten