SSRS_COST_CENTRE_MULTI

The shared datasets used in reports
Post Reply [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
User avatar
robinwilson16
Site Admin
Posts: 185
Joined: Sun Oct 16, 2016 6:46 pm
Forename: Robin
Surname: Wilson
College Name: FEA
Position: MIS Consultant
LinkedIn Profile: https://www.linkedin.com/in/robinwilson16
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

SSRS_COST_CENTRE_MULTI

Post by robinwilson16 » Mon Feb 20, 2017 6:04 pm

Lists cost centres for multi-select:

Code: Select all

CREATE FUNCTION [dbo].[SSRS_COST_CENTRE_MULTI] (
	@Session VARCHAR(7),
	@Fac VARCHAR(MAX),
	@Team VARCHAR(MAX)
)
RETURNS TABLE
AS
RETURN


--DECLARE @Session VARCHAR(7) = '2015-16'
--DECLARE @Fac VARCHAR(4) = 'CNEB'
--DECLARE @Team VARCHAR(4) = 'BISM'
SELECT
	 Code = '-1',
     Description = '-- All Cost Centres --' 

UNION ALL

SELECT
	Code = RIGHT ( TEAM.s_reference, LEN ( TEAM.s_reference ) - CHARINDEX ( '-', TEAM.s_reference ) ),
	Description = FAC.d_reference + ' - ' + LEFT ( TEAM.s_reference, CHARINDEX ( '-', TEAM.s_reference ) - 1 ) + ' - ' + RIGHT ( TEAM.s_reference, LEN ( TEAM.s_reference ) - CHARINDEX ( '-', TEAM.s_reference ) ) + ' - ' + TEAM.s_name
FROM ulive.dbo.capd_section TEAM
INNER JOIN ulive.dbo.capd_department FAC
	ON FAC.d_id = TEAM.s_department
INNER JOIN (
	SELECT DISTINCT
		TeamID = PRG.m_modulesection
	FROM ulive.dbo.capd_module PRG
	INNER JOIN ulive.dbo.capd_department FAC
		ON FAC.d_id = PRG.m_moduledept
	INNER JOIN ulive.dbo.capd_section TEAM
		ON TEAM.s_id = PRG.m_modulesection
	WHERE
		PRG.m_start <= LEFT ( @Session, 2 ) + RIGHT ( @Session, 2 ) + '-07-31'
		AND PRG.m_end >= LEFT ( @Session, 4 ) + '-08-01'​​
		AND PRG.m_type = 'P'
		AND PRG.m_status IN ( 'R', 'P' )
		AND 
			CASE
				WHEN @Fac LIKE '%-1%' THEN 1
				ELSE 
					CASE
						WHEN ', ' + @Fac + ',' LIKE '%, ' + FAC.d_reference + ',%' THEN 1
						ELSE 0
					END
			END = 1
		AND 
			CASE
				WHEN @Team LIKE '%-1%' THEN 1
				ELSE 
					CASE
						WHEN ', ' + @Team + ',' LIKE '%, ' + LEFT ( TEAM.s_reference, CHARINDEX ( '-', TEAM.s_reference ) - 1 ) + ',%' THEN 1
						ELSE 0
					END
			END = 1
) CRS ON CRS.TeamID = TEAM.s_id
WHERE
	COALESCE ( FAC.d_start, LEFT ( @Session, 2 ) + RIGHT ( @Session, 2 ) + '-07-31' ) <= LEFT ( @Session, 2 ) + RIGHT ( @Session, 2 ) + '-07-31'
	AND COALESCE ( FAC.d_end, LEFT ( @Session, 4 ) + '-08-01'​​ ) >= LEFT ( @Session, 4 ) + '-08-01'​​
	AND COALESCE ( TEAM.s_start, LEFT ( @Session, 2 ) + RIGHT ( @Session, 2 ) + '-07-31' ) <= LEFT ( @Session, 2 ) + RIGHT ( @Session, 2 ) + '-07-31'
	AND COALESCE ( TEAM.s_end, LEFT ( @Session, 4 ) + '-08-01'​​ ) >= LEFT ( @Session, 4 ) + '-08-01'​​
Attachments
SSRS_COST_CENTRE_MULTI.rsd
(1.86 KiB) Downloaded 173 times

Post Reply [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable

Who is online

Users browsing this forum: No registered users and 1 guest