NuGet: How to Install a Package in 19 Easy Steps
13 May 2013
If they tell you the machines will outsmart us very soon, don’t believe it. Here’s why. Tonight I was trying to add “Unity” dependency injection framework to my .NET 4 project under Visual Studio 2010 via NuGet. Yes, I know, stone axes are no longer supported, but whatever. Here are the list of steps, just [...]

Random Notes on MDX Filtering
09 May 2013
1. Filter() and IIF work funny in the columns hierarchy. Consider this: SELECT FILTER([MarketValue], [MarketValue] >1000) ON COLUMNS, [Region].[Region].[Region] ON ROWS FROM [MyCube] In this case the MarketValue in red actually means the global number for MarketValue, not the per region one. I.e., if the global MarketValue is 1024, then all regions will be returned. [...]

SSRS Production Deployment, Part 3
03 May 2013
Deploying Reports Download code. In Part 2 we talked about deploying SSRS data sources. Now we are ready reports. Reports are deployed using rs.CreateReport() method. It accepts array of bytes instead of .rdl file name. This is relatively minor, since reading contents of a file is not that hard. Here’s the code: Dim len As [...]

SSRS Production Deployment, Part 2
03 May 2013
In Part 1 we discussed that in development environemnt we deploy reports by simply clicking “Deploy” in BIDS, but this won’t work in production. To deploy reports in production we need to write an SSRS script, which is actually a piece of VB.NET code executing against SSRS web service. A typical report consists of the [...]

SSRS Production Deployment, Part 1
02 May 2013
So, you built your shiny and flashy SSRS report, and you hit “Deploy” in BIDS, or “SQL Server Data Tools” in newer versions. Your UAT is a breeze, and everything looks great. The million dollar question now becomes How do you deploy your reports to production? Download code. In most “enterprise” environments “production” means “no [...]

Downloading Oracle Driver for .NET…
19 Apr 2013
feels like I am trying to download a semi-legal DVD-copying software. It starts simple enough: just go to this page. Shows a list of things to download, it does not get easier than that. But when you click on the first link, it - shows you another list - then says you must accept the [...]

Scripting on Windows
19 Apr 2013
I needed to create a script of medium complexity that goes along these lines: 1. Take a list of databases. 2. Each database has an SVN folder, list of files to execute (with possible wildcards), and list of files to skip. 3. For each database, perform “get” on the SVN folder, ignore the excluded files [...]

BI Studio: cannot customize auto generated MDX query
20 Mar 2013
Long story short: if you are building an SSRS report in Microsoft BI studio, and if that report has parameters, you cannot customize the automatically generated MDX query. If you switch to text mode, make a change (any change, e.g. adding a space) and hit “save”, you get this error: An MDX expression was expected. [...]

Silverlight Image control does not support GIFs
03 Feb 2013
Surprise-surprise! WPF: The Image class enables you to load the following image types: .bmp, .gif, .ico, .jpg, .png, .wdp, and .tiff. Silverlight: [Image class] Represents a control that displays an image in the JPEG or PNG file formats. No error is displayed, it just shows a blank rectangle. I understand that GIF format was once [...]

Touches
01 Feb 2013
I wrote a little web page that “debugs” HTML 5 touch interface (requires touch screen device). Unlike regular mouse clicks, there is no “onTouch” attribute, you have to add and remove listeners via addEventListener() method of a DOM element. Event name is passed as string, which is not very safe, but hey, it’s JavaScript, folks! [...]