УСТАНОВИТЕ ДАННОЕ В ФУНКЦИИ

Я хочу установить DATEFIRST в моей функции, но это не разрешено.

SET DATEFIRST 1

Я могу добавить код в SP и вызывать SP из функции, но я не заинтересован в этом.

Я могу установить DATEFIRST прежде, чем я вызову свою функцию, но я также не заинтересован в этом.

Любая другая работа вокруг?

РЕДАКТИРОВАТЬ

Ниже приведен код, который я хочу использовать в моей ФУНКЦИИ, чтобы вернуть общее количество рабочих дней месяца. Но я не могу добавить этот код в функцию из-за моей DATEFIRST

DECLARE @my int
DECLARE @myDeduct int
DECLARE @day INT
DECLARE @mydate DATETIME
DECLARE @TotalDays INT

SET @mydate = GETDATE()

SET @myDeduct = 0
IF (@@DATEFIRST + DATEPART(DW, @mydate)) % 7 not in (0,1)
SET DateFirst 1 -- Set it monday=1 (value)

--Saturday and Sunday on the first and last day of a month will Deduct 1
IF (DATEPART(weekday,(DATEADD(dd,-(DAY(@mydate)-1),@mydate))) > 5)
SET @myDeduct = @myDeduct + 1

IF (DATEPART(weekday,(DATEADD(dd,-(DAY(DATEADD(mm,1,@mydate))),DATEADD(mm,1,@mydate)))) > 5)
SET @myDeduct = @myDeduct + 1

SET @my = day(DATEADD(dd,-(DAY(DATEADD(mm,1,@mydate))),DATEADD(mm,1,@mydate)))

Set @TotalDays = (select (((@my/7) * 5 + (@my%7)) - @myDeduct))

Select @TotalDays

Ответы на вопрос(4)

Ваш ответ на вопрос