У меня есть запрос с кодом SQL, который вычисляет рабочие дни для каждого из следующих действий: Interstaff, Mission, `` Congés` с использованием определенной функции VBA.
Когда в один день выполняются два действия, он считает 1 день для каждого действия, я хочу, чтобы функция Sum проигнорировала этот день, и перейду к следующему.
Я хотел бы изменить свой код SQL, чтобы добавить это условие:
«При расчете миссии, если в тот же период есть конгы, игнорируйте этот день (и отдайте приоритет подсчету только в конгезах)»
Я читал, что есть ПЕРЕКЛЮЧЕНИЕ или вложенные условия ИИФ,но я не смог перевести это в свой настоящий код ...
Пожалуйста, примите во внимание, что я все еще начинающий на пути к обучению!
SELECT
Z.Planning_Consultants.ID_Consultant,
Sum(IIf([Activité]="(2) Interstaff",WorkingDaysInDateRange([maxBegin],[minEnd])*Planning_Consultants.Time_Allocated,0)) AS NonBillable,
Sum(IIf([Activité]="(1) Mission",WorkingDaysInDateRange([maxBegin],[minEnd])*Planning_Consultants.Time_Allocated,0)) AS Billable,
Sum(IIf([Activité]="(3) Congés/Arrêt",WorkingDaysInDateRange([maxBegin],[minEnd])*Planning_Consultants.Time_Allocated,0)) AS Absent,
Например, мистер А получилмиссия с 06/06/2019 по 07/06/2019.С выходным (конге) 06.06.2009.Я ожидаю, что результатом будет Миссия 4 дня и 1 день конгрега, в моем случае у меня будет 5 дней миссии и 1 конг,
Вот пример набора данных:
Activity BegDate EndDate Time_Allocated
(1)Mission 01/01/2019 31/12/2019 100%
(3)congé 02/04/2019 05/04/2019 100%
Например, в апреле я хотел бы иметь 18 рабочих дней и 4 конге вместо 22 рабочих дней и 4 конге