Einem Dat
Guten Morgen,
ich habe eine Frage zu Berechnung mit Tagen.
Nach der Änderung vom Datums-Feld 'Mailing versandt am' soll das folgende Skript ausgeführt werden, welches abhängig vom Tag eine bestimmte Anzahl von Tage dem Datums-Feld 'Follow-Up Termin' hinzurechnet. Es soll sozusagen die Transportzeit der Post berücksichtigt werden, bis man beim Kunden einen Anruftermin plant.
Die Folgende Formel erledigt den Job, aber kommt mir unnötig komplizert bzw. lang vor. Ich habe es jedoch nicht hinbekommen in der if-Abfrage gleich mehrere Wochentage abzufragen bzw. die Formel mittels Switch Case aufzubauen, da mir hier angezeigt wurde: "Diese Funktion darf keine Datenänderungen vornehmen."
Übersehe ich hier etwas, wie sich das Ganze kürzen und reduzieren lässt? Danke euch vorab!!!
'Follow-Up Termin' := if weekday('Mailing versandt am') = 0 then
date('Mailing versandt am' + 4)
else
if weekday('Mailing versandt am') = 1 then
date('Mailing versandt am' + 6)
else
if weekday('Mailing versandt am') = 2 then
date('Mailing versandt am' + 5)
else
if weekday('Mailing versandt am') = 3 then
date('Mailing versandt am' + 4)
else
if weekday('Mailing versandt am') = 4 then
date('Mailing versandt am' + 4)
else
if weekday('Mailing versandt am') = 5 then
date('Mailing versandt am' + 5)
else
date('Mailing versandt am' + 4)
end
end
end
end
end
end
3 Antworten
-
sorry da gingen im Text ein paar Buchstaben verloren
-
Hallo Daniel, besagte Fehlermeldung deutet darauf hin, dass der Code in einem Funktions- bzw. Berechnungsfeld ausgeführt wird. Wenn dem so ist, solltest du ihn statt dessen als Trigger "Nach Änderung" im Feld 'Mailing versandt am' ausführen lassen.
if 'Mailing versandt am' then
let myDay := weekday('Mailing versandt am');
let plusDays := switch myDay do
case 0: 4
case 1: 6
case 2: 5
case 3: 4
case 4: 4
case 5: 5
default: 4
end
'Follow-Up Termin' := 'Follow-Up Termin' + plusDays
end
Wobei ich davon ausgegangen bin, dass 'Follow-Up Termin' und 'Mailing versandt am' Felder vom Typ "Datum" sind.
-
Hallo Copytexter, tausend Dank für deine Arbeit! Das ist clean coding.
Ich hab noch:
'Follow-Up Termin' := 'Follow-Up Termin' + plusDays
in:
'Follow-Up Termin' :='Mailing versandt am' + plusDays
getauscht, damit es vom Versanddatum aus rechnet. Mit dem Trigger funktionert es jetzt ebenfalls
Content aside
- vor 3 JahrenZuletzt aktiv
- 3Antworten
- 320Ansichten