спасибо, но ни один не работалВозможно, я был новичком и не знал, как его вставить. Опция SQL работала, но данные были плохими, они возвращали проценты свыше 100%, что невозможно.Я исправил это так.Запрос теперь выглядит следующим образом:
SELECT COUNT(*) AS NoOfWo, DATENAME(mm, LastActualCompDate) AS month, LastActualCompDate, CompletionDate, JobNo
FROM WipHeader
WHERE (LastActualCompDate >= CAST(DATEPART(year, GETDATE()) AS varchar) + '-01-01') AND (NOT (LastActualCompDate IS NULL))
GROUP BY MONTH(LastActualCompDate), DATENAME(mm, LastActualCompDate), LastActualCompDate, CompletionDate, JobNo
HAVING (NOT (LastActualCompDate IS NULL)) AND (NOT (LastActualCompDate IS NULL)) AND (NOT (MONTH(LastActualCompDate) IS NULL))
ORDER BY MONTH(LastActualCompDate)
Затем в SSRS я добавил новое поле Calculated в набор данных с именем CalcDateDiff с таким выражением:
=datediff("d",Fields!CompletionDate.Value,Fields!LastActualCompDate.Value)
Затем В таблице я добавил Новые столбцыназвали «Поздно», «Вовремя» и «% в срок» и добавили выражения внизу соответственно:
=count(iif (fields!CalcDateDiff.Value>0,1,nothing))
=count(iif (fields!CalcDateDiff.Value<=0,1,nothing))
=count(iif (fields!CalcDateDiff.Value<=0,1,nothing))/Sum(Fields!NoOfWo.Value)
Затем установите свойства текстового поля последнего в процентах и добавьте группу по месяцам.
И эй престо.Это заняло у меня всего 4 дня!