Лучшее решение - запускать пакет ежедневно из агента SQL.Внутри самого пакета включите переменную с выражением, которая проверяет, для какого текущего дня месяца он выполняется (т. Е. Использует GETDATE ()), анализирует дату для этого дня и проверяет наличие 1. Если 1, то VariableValueAиначе VariableValueB.Итак, ваше выражение выглядит так:
DAY(GETDATE()) == 1 ? "VariableA" : "VariableB"
Примечание: убедитесь, что тип данных переменной соответствует выводу выражения.Как видно из приведенного выше примера, выходные данные являются строковыми, поэтому переменная должна иметь тип данных String.Если значения вашей переменной целочисленные, тогда тип данных переменной должен быть Int32 (или 64-разрядный Int64, и т. Д.).
Смотрите мой ответ, чтобы узнать, как работают выражения.
https://stackoverflow.com/a/53598832/4630376