Tuesday, February 28, 2017

Livetiles Collaboration in sharepoint

In SharePoint getting people to collaborate is key to the success of the project. And since custom development of such solutions can get too complex and time consuming more often than not, it definitely makes sense to use a third party solution which greatly reduces efforts and time spent.

One alluring such tool is Live Tiles which makes pretty easy to develop custom collaboration solution without much coding. More info can be found at https://www.livetiles.nyc/

Wednesday, February 8, 2017

MDX aggregate measure over specific dimensions

In the cube in our project, there was a need to aggregate a measure only on 3 out of 6 dimensions, so that the aggregation would not filter this measure on any of the excluded 3 dimensions.

After trying Aggregate and Ancesters functions I could finally get correct results with the root function as explained in this blog

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/3b724376-aa6d-4bcc-afcb-a2ac07c94df5/mdx-to-aggregate-measure-over-specific-dimensions?forum=sqlanalysisservices

To sum it up, I created a calculated measure like:

member [measures].[TotalCustYearCat] as (
root([Date].[Calendar Year].currentmember), 
root([Product].[Category].currentmember),
root([Customer]),
[Measures].[Internet Sales Amount]
)

Tuesday, February 7, 2017

Linq to MDX

Linq to MDX would be a grate feature to have, since that could make it much easier for developers to query SSAS cube and also take care of strong typing objects.

There are a few open source projects and some paid frameworks which aim to achieve this difficult task. I have not yet tested any of them but just mentioning here for future reference.

Free/Open Source:
https://github.com/DynamicTyped/MdxClient
https://github.com/alfathenus/NMDXBuilderLibrary
https://github.com/aprender/MDX-Runner
https://github.com/BalticAmadeus/FluentMdx


Paid:
http://www.agiledesignllc.com/Products.htm
https://code.google.com/archive/p/ranet-uilibrary-olap/

Monday, February 6, 2017

Highcharts lazy drilldown

A lazy drill down in highcharts can optimize performance and speed of the website greatly, fortunately there is very easy way to add this to the chart as explained here:

http://stackoverflow.com/questions/26801793/lazy-highcharts-drilldown

c# httpclient The remote certificate is invalid according to the validation procedure: RemoteCertificateNameMismatch

 If we get this error while trying to get http reponse using HttpClient object, it could mean that certificate validation fails for the remo...