Quantcast
Channel: SQL Server Analysis Services Forum
Viewing all articles
Browse latest Browse all 2472

MDX to find DateDifference with Multiple condition

$
0
0


HI EXPERTS ,
I HAVE EMPOYEE TABLE IN BELOW FORMAT.
I AM WORKING ON SSAS 2008 AND GENERATING REPORT ON IT .
I HAVE A TIME DIMENSION WHICH IS CONNECTED TO EMPLOYEE DIMENSION ON EFFECTIVEDATE
IN MY EMPLOYEE DIMENSION SINGE EMPLOYEE WILL HAVE MULTIPLE RECORDS AS I AM MAINTAINING HISTORY IN IT .
REQUIREMENT ::

I NEED TO FIND THE NUMBER OF DAYS BETWEEN JOINING AND LEAVING DATE OF A PERSON..WITH BELOW MENTIONED CONDITION.

ENDUSER SEE THE REPORT AFTER SELECTING SOME DATE VALUE FROM TIME FILTER I.E FOR WHICH YEAR OR QUARTER OR MONTH THEY WANT TO SEE THE NUMBER OF
DAYS EMPLOYEES HAVE WORKED.

EXAMPLE AS PER GIVEN SAMPLE ::

select '2010-04-05' AS JOINING_DATE,'' AS LEAVING_DATE, '2010-04-05' AS EFFECTIV_EDATE,201004 AS EFFECTIVEDATE_MONTH_YR,'PERSONx' AS EmployeeName,215212 AS Empno
UNION ALL
select '' AS JOINING_DATE,'' AS LEAVING_DATE, '2010-10-20' AS EFFECTIV_EDATE,201010 AS EFFECTIVEDATE_MONTH_YR,'PERSONx' AS EmployeeName,215212 AS Empno
UNION ALL
select '' AS JOINING_DATE,'2011-05-11' AS LEAVING_DATE, '2011-05-11' AS EFFECTIV_EDATE,201101 AS EFFECTIVEDATE_MONTH_YR,'PERSONx' AS EmployeeName,215212 AS Empno

IF MONTH ->  JAN-10 IS SELECTED THAN WORKING DAYS SHOULD BE ZERO BECAUSE EMPLOYEE JOINED AFTER THAT I.E '2010-04-05'

IF MONTH ->  AUG-11 IS SELECTED THAN WORKING DAYS SHOULD BE ZERO BECAUSE PERSON HAS ALREADY LEFT THE ORGANIZATION ON  '2011-05-11'

IF MONTH ->  APRIL-10 IS SELECTED THAN NUMBER OF WORKING DAYS FOR THAT MONTH WILL BE 26 FOR THAT MONTH BECAUSE EMPLOYEE JOINED ON 5TH OF THIS MONTH

IF MONTH ->  MAY-11 IS SELECTED THAN NUMBER OF WORKING DAYS FOR THAT MONTH WILL BE 11 DAYS BECAUSE EMPLOYEE LEFT ON  11TH OF THIS MONTH

IF MONTH ->  AUG-10 IS SELECTED  THAN NUMBER OF WORKING DAYS FOR THAT MONTH WILL BE 31 DAYS BECAUSE EMPLOYEE JOINED BEFORE aug-10 THAN AND LEFT AFTER THIS MONTH.
IF QUARTER-1 OF 2010 IS SELECTED THAN NUMBER OF WORKING DAYS WILL BE SUM OF APRIL-10(26DAYS)+MAY-10(31DAYS)+JUNE-10(30DAYS).... {AS PER FISCAL YEAR}

IF QUARTER-2 OF 2010 IS SELECTED THAN NUMBER OF WORKING DAYS WILL BE SUM  JULY-10 (31DAYS)+AUG-10(31DAYS)+SEPT(30DAYS)

IF YEAR-10 IS SELECTED THAN WORKING DAYS WILL BE SUM OF APRIL-10(26DAYS)+MAY-10(31DAYS)+JUNE-10(30DAYS)+JULY-10 (31DAYS)+AUG-10(31DAYS)+SEPT(30DAYS)+ OCT(31DAYS) +NOV(30DAYS)+DEC(31DAYS)+JAN-10(31DAYS)+FEB-10(28DAYS)+MAR-10(31DAYS)

IF YEAR-11 IS SELECTED FROM FILTER THAN WORKING DAYS OF EMPLOYEE WILL BE SUM OF APR-11(30DAYS)+MAY(11DAYS)

BELOW ARE MY DATE HIERARCHY IN CUBE :

[DateDay].[WeekHierarchy].[FYYear]

[DateDay].[WeekHierarchy].[FYQuarter]

[DateDay].[WeekHierarchy].[FYMonth]

MY EMPLOYEE joining and leaving date attributes are beow::

[Employee].[Joining Date].[Joining Date]

[Employee].[Leaving Date].[Leaving Date]

I NEED TO CREATE CALCULATED MEASURE FOR THIS (NUMBER OF WORKING DAYS).IN MY CUBE ,ANY HELP ON THIS ????


 





Viewing all articles
Browse latest Browse all 2472

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>