To display all labels of x-axis, go to Interval property of X-Axis label and give value as '1'.
This blog contains posts related to data warehouse. All posts are used in my real time project and can be used as reusable codes and helpful to BI developers.
Labels
Apache Hadoop
(3)
ASP.NET
(2)
AWS S3
(2)
Batch Script
(3)
BigQuery
(21)
BlobStorage
(1)
C#
(3)
Cloudera
(1)
Command
(2)
Data Model
(3)
Data Science
(1)
Django
(1)
Docker
(1)
ETL
(7)
Google Cloud
(5)
GPG
(2)
Hadoop
(2)
Hive
(3)
Luigi
(1)
MDX
(21)
Mongo
(3)
MYSQL
(3)
Pandas
(1)
Pentaho Data Integration
(5)
PentahoAdmin
(13)
Polybase
(1)
Postgres
(1)
PPS 2007
(2)
Python
(13)
R Program
(1)
Redshift
(3)
SQL 2016
(2)
SQL Error Fix
(18)
SQL Performance
(1)
SQL2012
(7)
SQOOP
(1)
SSAS
(20)
SSH
(1)
SSIS
(42)
SSRS
(17)
T-SQL
(75)
Talend
(3)
Vagrant
(1)
Virtual Machine
(2)
WinSCP
(1)
Friday, March 4, 2011
Thursday, March 3, 2011
Named Set for Months in Current Financial Year
ORDER(
StrToMember("[Date].[Financial Period].[Year].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[1].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[1]")
:
StrToMember("[Date].[Financial Period].[Year].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN CSTR(CINT(DATEPART("q", Now())) - 1)
ELSE CSTR(CINT(DATEPART("q", Now())) + 3) END + "].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN CSTR(CINT(Format(Now(),"MM")) - 3)
ELSE CSTR(CINT(Format(Now(),"MM")) + 9) END + "]"
)
,[Date].[Financial Period].CURRENTMEMBER.PROPERTIES("ID", TYPED), DESC)
StrToMember("[Date].[Financial Period].[Year].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[1].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[1]")
:
StrToMember("[Date].[Financial Period].[Year].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN CSTR(CINT(DATEPART("q", Now())) - 1)
ELSE CSTR(CINT(DATEPART("q", Now())) + 3) END + "].&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]&[" +
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN CSTR(CINT(Format(Now(),"MM")) - 3)
ELSE CSTR(CINT(Format(Now(),"MM")) + 9) END + "]"
)
,[Date].[Financial Period].CURRENTMEMBER.PROPERTIES("ID", TYPED), DESC)
MDX named Set for Financial Year
Current Financial Year
STRTOMEMBER("[Date].[Financial Period].[Year].&["+
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]")
Last Financial Year
STRTOMEMBER("[Date].[Financial Period].[Year].&["+
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy") -1
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 2) END + "]")
STRTOMEMBER("[Date].[Financial Period].[Year].&["+
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy")
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 1) END + "]")
Last Financial Year
STRTOMEMBER("[Date].[Financial Period].[Year].&["+
CASE WHEN CINT(Format(Now(),"MM")) >= 4 THEN Format(Now(), "yyyy") -1
ELSE CSTR(CINT(Format(Now(), "yyyy")) - 2) END + "]")
Friday, February 25, 2011
Named Set for Current Month calculation
WITH SET [Calendar Months]
AS EXTRACT(STRTOMEMBER("[Date].[Month].&["+cstr(month(NOW()))+"]",CONSTRAINED)
*{[Date].[Calendar Period].[Month]},[Date].[Calendar Period])
SELECT NON Empty[Calendar Months] on Rows, [Measures].[Actual Amount] on Columns FROM [Sales]
AS EXTRACT(STRTOMEMBER("[Date].[Month].&["+cstr(month(NOW()))+"]",CONSTRAINED)
*{[Date].[Calendar Period].[Month]},[Date].[Calendar Period])
SELECT NON Empty[Calendar Months] on Rows, [Measures].[Actual Amount] on Columns FROM [Sales]
Thursday, February 17, 2011
Cross Apply and Outer Apply in SQL
DECLARE @Year INT
SET @Year = 2008
SELECT ISNULL(ROUND(a.SalesAmount,0),0) AS CurrentSales
, ISNULL(ROUND(b.SalesAmount,0),0) As PreviousSales
,a.MONTH As 'Month'
FROM
(SELECT SUM(Fs.SalesAmt) AS SalesAmount
,DD.MonthName AS 'Month'
,DD.MonthNumber
FROM FactSales FS
JOIN DimDate DD on DD.DateKey = FS.DateKey
WHERE DD.Year = @Year
GROUP BY DD.MonthName
,DD.MonthNumber
) AS a
OUTER APPLY
--CROSS APPLY
(SELECT Sum(Fs.SalesAmt) AS SalesAmount
,DD.MONTHNAME AS 'Month'
,DD.MonthNumber
FROM FactSales FS
JOIN DimDate DD ON DD.DateKey = FS.DateKey
WHERE DD.Year = @Year - 1
and DD.MonthNumber = a.MonthNumber
GROUP BY DD.MONTHNAME
,DD.MonthNumber
) AS b
Consider ther is no data for year 2007, then on replacing ‘Outer Apply’ with ‘Cross Apply’ no data will be displayed. But using Outer Apply will display data for the year 2008 (current Sales) and 0 for 2007 (Previous Sales)
XMLA Script to Process SSAS 2005 and 2008 Cubes
To Process SSAS 2008 Database
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Parallel>
<Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100">
<Object>
<DatabaseID>Mercury_HelpDesk</DatabaseID>
</Object>
<Type>ProcessFull</Type>
<WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>
</Parallel>
</Batch>
To Process SSAS 2005 Database
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Parallel>
<Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2">
<Object>
<DatabaseID>CIT Global WareHouse</DatabaseID>
</Object>
<Type>ProcessFull</Type>
<WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>
</Parallel>
</Batch>
XMLA Script to Process cube through variable supplied
"<Batch xmlns=\"http://schemas.microsoft.com/analysisservices/2003/engine/">
<Parallel>
<Process xmlns:xsd=\"http://www.w3.org/2001/XMLSchema/" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance/" xmlns:ddl2=\"http://schemas.microsoft.com/analysisservices/2003/engine/2/" xmlns:ddl2_2=\"http://schemas.microsoft.com/analysisservices/2003/engine/2/2/" xmlns:ddl100_100=\"http://schemas.microsoft.com/analysisservices/2008/engine/100/100/">
<Object>
<DatabaseID>"+ @[User::CubeDatabase] +"</DatabaseID>
</Object>
<Type>ProcessFull</Type>
<WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>
</Parallel>
</Batch>"
XMLA Script to Process cube through variable supplied
"<Batch xmlns=\"http://schemas.microsoft.com/analysisservices/2003/engine/">
<Parallel>
<Process xmlns:xsd=\"http://www.w3.org/2001/XMLSchema/" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance/" xmlns:ddl2=\"http://schemas.microsoft.com/analysisservices/2003/engine/2/" xmlns:ddl2_2=\"http://schemas.microsoft.com/analysisservices/2003/engine/2/2/" xmlns:ddl100_100=\"http://schemas.microsoft.com/analysisservices/2008/engine/100/100/">
<Object>
<DatabaseID>"+ @[User::CubeDatabase] +"</DatabaseID>
</Object>
<Type>ProcessFull</Type>
<WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>
</Parallel>
</Batch>"
Wednesday, February 16, 2011
SQL Function to Display Text with Sentence Caps
Below Query creates a function to display the text in sentence caps, e.g.., displays 'ANANDH KUMAR' as 'Anandh Kumar'
CREATE FUNCTION [dbo].[ProperCase](@Input AS VARCHAR(8000))
RETURNS VARCHAR(8000)
AS
BEGIN
DECLARE @Reset BIT;
DECLARE @Ret VARCHAR(8000);
DECLARE @i INT;
DECLARE @c CHAR(1);
SELECT @Reset = 1, @i=1, @Ret = '';
WHILE (@i <= LEN(@Input))
SELECT @c= SUBSTRING(@Input,@i,1),
@Ret = @Ret + CASE WHEN @Reset=1 THEN UPPER(@c) ELSE LOWER(@c) END,
@Reset = CASE WHEN @c LIKE '[a-zA-Z]' THEN 0 ELSE 1 END,
@i = @i +1
RETURN @Ret
END
Subscribe to:
Posts (Atom)