SQL Server: Difference Between LEN and DATALENGTH

So what exactly is the difference between the LEN and DATALENGTH functions in SQL Server? They sound similar but they're actually used for two different purposes.
  • The LEN function tells you how many characters are in a string but will exclude any trailing blanks.
  • The DATALENGTH function tells you how many bytes are used to represent an expression.
This means that two string expressions, one with some trailing blanks and one without, could have the same value of LEN but different values for DATALENGTH.
Read More

SSRS: Conditional Formatting for Negative Numbers

If you have an SSRS report and want to apply some conditional formatting to negative values, follow these steps:

  1. Select the value in the Tablix to which you would like to apply conditional formatting.
  2. In the Properties pane, go to the 'Font' group and go to 'Color'. Click the drop-down and choose the last option, 'Expression...'.
  3. The Expression window will open. In the text box at the top enter the following: =Iif(Fields!NameOfYourField.Value<0,"Red","Black")
  4. Click 'OK'.
Of course you can modify this to use any other logic and colours. This simple example will display negative values in red and everything else in black.
Read More

Android 10 on Pixel

I don't usually get excited about OS updates on my phone, mostly because I'm using an older piece of hardware at this point (my Pixel is about 3 years old). This latest Android 10 release is pretty awesome though so I've decided to write about my favourite new features. This is coming from a few days of use and running into some pretty awesome stuff.

Without further ado, here are the 3 things about Android 10 I'm loving the most on my Pixel:
  • I received a couple of notifications telling me that certain apps had requested my location in the background. Each time one of these popped up I was given some options for removing or limiting this kind of access to my location data. I loved this because I didn't even realize some of these apps would be grabbing this in the background. I like preserving my battery so I was quick to change the options to only allow them to grab my location when I'm actually using the apps.
  • There's an overall dark theme! I'm always switching whatever apps I can to be dark but now you can darken the entire OS.
  • Previously connected devices are listed more readily when you go to your Bluetooth settings. I'm always connecting to different speakers and vehicles and love having this list more accessible because it used to be buried a bit.
I'm noticing some weird performance issues with my lock screen and while adding widgets to my home screen but otherwise it seems to be running just fine.
Read More

Excel: Connect to SSAS Cube

You can connect to an SSAS cube from within Microsoft Excel, which is pretty fantastic because it lets you analyze your data in a PivotTable.

Here's how to get connected to an SSAS cube in Excel:
  1. Click on the 'Data' tab on the ribbon.
  2. In the 'Get External Data' group, click on 'From Other Sources' and choose 'From Analysis Services'.
  3. Enter the server name (e.g., 'Server\Tabular').
  4. Choose either Windows Authentication or enter a different user name and password to connect. You'll need to make sure that this account has the appropriate permissions to read the cube.
  5. Click the 'Next' button.
  6. Choose the cube to which you would like to connect.
  7. Enter a file name, description, friendly name, and/or keywords as desired. This is just to save the connection in a way that makes it easy for you to identify it later if you reuse it. You can leave the defaults here if you're not picky.
  8. Click the 'Finish' button.
  9. Choose if you'd like to create a PivotTable Report, PivotChart, or just simply create the connection.
  10. Click the 'OK' button.
If you chose either the PivotTable Report or PivotChart option you will immediately be able to interact with the cube right in your worksheet. All of your cube's fields and measures will be visible in the pane on the right-hand side of the screen.

Personally I think this is one of the coolest things about SSAS, being able to expose a cube inside a tool like Excel that's so familiar to so many data analysts. A friendly cube design makes all the data accessible in a way that eliminates the need to know all the individual data sources and joins required.
Read More

SSMS: Select Multiple Tables/Views/Objects

In Microsoft SQL Server Management Studio (SSMS) I've often been annoyed by the apparent inability to use my Shift or Ctrl keys to select multiple objects at once in the Object Explorer window.

I'm happy to say that there is in fact a way you can multi-select tables, views, whatever objects you like!

Go to the 'View' menu and select 'Object Explorer Details'. This glorious new pane will open and allow you to select as many objects as your heart desires. You can also just hit the F7 key as a quick shortcut. How awesome is that?

It's beyond me why this is only possible in this details pane, so if you happen to have some insight then I'd love to hear about it in a comment down below.
Read More

SSRS: Hide Toolbar and Navigation Using URL Parameters

If you have an SSRS report deployed to a Report Server you can use URL parameters to link to it in such a way that all of the toolbars and navigation items (like breadcrumbs) at the top of the screen are hidden.

First you need to get the URL pointing to your report from the report server. It will look something like this:

https://server/ReportServer/Pages/ReportViewer.aspx?%2fFolderName%2fReportName

Now just add on the following to the end of that URL:

&rs:Command=Render

So it will look something like this:

https://server/ReportServer/Pages/ReportViewer.aspx?%2fFolderName%2fReportName&rs:Command=Render

It's that easy!
Read More