Database SQL Operation: Activity.countActivityForOrgUnitUsers
Description: | Returns list of Users and their Active Activities Count for the Members of the Organization Unit. |
Sterotype: | nsmulti |
SELECT
count(Activity.activityID),
Users.fullName,
Users.userName
INTO
:countActivity,
:fullName,
:userName
FROM
Activity,
Users
WHERE Activity.userName IN
(
SELECT
Users.userName
FROM
OrganisationUnit,
Position,
PositionHolderLink,
Users,
OrgUnitPositionLink
WHERE OrgUnitPositionLink.organisationStructureID = :organisationStructureID
AND OrgUnitPositionLink.organisationUnitID = :organisationUnitID
AND Position.positionID = OrgUnitPositionLink.positionID
AND OrganisationUnit.organisationUnitID = OrgUnitPositionLink.organisationUnitID
AND PositionHolderLink.positionID = Position.positionID
AND PositionHolderLink.organisationStructureID = :organisationStructureID
AND Users.userName = PositionHolderLink.userName
AND PositionHolderLink.recordStatus = :recordStatus
AND PositionHolderLink.fromDate <= :effectiveDate
AND
(
PositionHolderLink.toDate >= :effectiveDate
OR PositionHolderLink.toDate IS NULL
)
)
AND Activity.userName = Users.userName
AND Activity.recordStatusCode = :recordStatusCode
AND Activity.startDateTime >= :startDateTime
AND Activity.endDateTime < :endDateTime
GROUP
By Users.fullName,
Users.userName
|