Es kommt ein wenig darauf an, wie häufig Terminverschiebungen vorkommen - und vor allem, wie häufig eine zweite Terminverschiebung vorkommt.
Für die erste Terminverschiebung würde ich einfach eine Kopie der Serienmail anlegen. Dann kann die erste Terminverschiebung problemlos verschickt werden. Außerdem könnte man mittels panelUpdate()
auch gleich im Adressdatensatz notierten, dass der Termin verschoben wurde.
Für den Fall, dass ein Termin nochmal verschoben werden muss, könnte man im Adressdatensatz (ganz unten) die bisherigen Versendungen einfach zurücksetzen. Sodass anschließend bei erneuter Verwendung des Verschiebe-Fragebogens wieder eine Serienmail verschickt werden kann. Allerdings wäre das ein manueller Schritt - wenn das dreimal vorkommt, kann man das machen. Wenn es regelmäßig vorkommen, ist das keine gute Lösung.
Ein mögliches Workaround wäre dann, dass man abhägngig von der Wiederholung (die mal ja im Adressdatensatz hinterlegen kann mittels panelData()
) weitere Kopien der Serienmail verwenden kann. Das ist nicht hübsch, würde aber bis zu einer vordefineirten (z.B. 5) Anzahl Verschiebungen ohne manuelle Eingriffe funktionieren.
Wir können ansonsten natürlich auch darüber nachdenken, im mailSchedule()
-Befehl einen Parameter zu ergänzen, der den vorheigen Versand automatisch zurücksetzt. Aber ich bin nicht sicher, ob sich der Mehraufwand wirklich lohnt?