Beginners Errors in Stretch Database SQL Server 2016 – Part 2
Check out the first basic error that beginners would experience while configuring stretch database in my previous article,
Another common error that usually occurred during the configuration is “Firewall”. If firewall is not able to identify the client IP address then it will throw an error like below.
Check the log to identify the detailed error message.
Client with IP address XXX.XXX.XX.XX is not allowed to access the server.
To fix the above issue, we have two ways.
Add the client IP in Azure SQL Server firewall.
Follow the below steps to add the client ip.
This will be applicable when you have SQL Server (Logical server) in Azure.
Step 1: Go to the SQL Server in Azure Portal
Step 2: Choose “Firewall”
Step 3: Click + Add Client IP and Save
Use the below stored procedure to add the IP Address in master database to allow the firewall.
sp_set_firewall_rule [@name = ] ‘name’,
[@start_ip_address =] ‘start_ip_address’,
[@end_ip_address =] ‘end_ip_address’
[ ; ]
This post explains that what are the basic errors that you could encounter during the configuration of stretch database in SQL Server 2016 and how can you overcome those errors.
Check the below error,
Check my article on Technet wiki for a solution for the above issue.
This post explains a very simple error message that we may face if any issue with a shared dataset.
For example, take a below scenario
You have a shared dataset deployed to the report manager portal. The name of the dataset is Sales and you need to build a mobile report using Sales shared dataset.
When you use the Sales Shared Dataset from mobile report publisher, you may get an error message if any issue with the query used in Shared dataset or data source issue. The error message usually will say DataSet1 even though we used the proper name for the shared dataset.
It is because the shared dataset by default considering the name ‘DataSet1’ when you create a dataset. It can be identified and modified if you open the dataset file in notepad.
Have you seen this scenario? Share your comments below.
This article explains that how can we show your Power BI report to everyone.
We have variety options in app.powerbi.com for the specific report.
The notable options are,
Publish to Web
Embed in SharePoint Online (preview)
Export to PowerPoint (preview)
Let us discuss “Publish to Web” Option
Open your Power BI report and click File option. You can see the options as like below.
Choose “Publish to Web” and click “Create embed Code”
Then click “Publish”, it will create a code for us.
We can share the link to anyone or else can embed the iframe in any web page or in SharePoint.
Check the report,
Sachin Tendulkar’s Cricket Data – Embedded Report
This article explains that how can we improve the performance when we access the SQL Query via network.
Scenario: I have taken SQL Server installed on Virtual Machine with 7GB of RAM and accessing the SQL Server database from local SQL Server management studio.
Step 1: Up and Run VM with SQL Server installed.
Step 2: Enable the DNS name of the Virtual Machine.
Step 3: Enable the TCP port with 1433 in portal.
Step 4: Create TCP port inside virtual Machine. Type WF.msc in command prompt. Right click on Inbound Rules and choose New.
Step 5: Make sure SQL Server services are up and running.
Step 6: Enable the SQL Server as mixed mode authentication.
Step 7: Create a new user login and check.
Step 8: Access the database from local SSMS.
Performance Improvement with NitroAccelerator
Install the “NitroAccelerator” in local machine, http://nitrosphere.com/trial/?ref=83095
Step 2: Run the query in local SSMS without Nitro Accelerator.
Step 3: Start the accelerator and test the query performance.
Recently, I saw a question raised in MSDN forum.
The question was “How to add data into Mobile Report Publisher?”
The answer is very simple, Mobile Report Publisher will use dataset for data.
If there are no datasets deployed to report server then we can’t see anything when using mobile report publisher data tab.
Steps to create dataset and make available for Mobile Report Publisher.
Step 1: Create a shared Dataset
Step 2: Deploy the shared dataset to report server
Step 3: Make sure the deployed shared dataset is deployed successfully and check it in report server as well.
Step 4: Click the Add data in Mobile Report Publisher.
Step 5: Choose the available dataset from report server.
Data will be added and start build the mobile report
I got a below error message when I execute the report. The error message is very straight forward and it highlights the exact issue.
Basically, this error occurred due to different data types. There are many situations where we get this error so I thought to document this scenario.
An error occurred during local report processing.
An error has occurred during report processing.
The processing of FilterExpression for the dataset ‘Dataset1’ cannot be performed. Cannot compare data of types System.Decimal and System.Double. Please check the data type returned by the FilterExpression.
In Dataset1, I used a filter property and filtered “Unit Price” greater than 12. When I choose Unit Price column, it automatically picked the data type as float as it has values like xxx.xx in table.
The Original data type of the Unit Price column in the database is different, it is money data type. There is a mismatch of the data type.
There are two ways to handle this issue.
1. We can filter the value (Unit Price > 12) in script level and directly pass the script in dataset Instead of using dataset filter properties. We also will get good performance. Check my post on …..
2. If we want to use the dataset filter then we need to convert the unit price column into SSRS supported data types, in this case, float.
convert(float,[UnitPrice]) as UnitPrice
Available data types in dataset filter.
This article explains that how to generate SELECT statement with all the table columns.
In the Production environment, most of the tables will have more than 100 columns. If those tables are used in a report with all the columns then it will be difficult to type all the columns.
To ease the process, we can generate the SELECT statement and can use that for any purpose.
Use the below code and pass the table which you want to use in the SELECT statement.
In this example, I used FactInternetSales table.
Declare @Column varchar(500), @tableName varchar(25)
SET @tableName =’FactInternetSales’
SET @Column = ”
select @Column = @Column + Column_Name + ‘, ‘ from [AdventureWorksDW2014].INFORMATION_SCHEMA.COLUMNS
select ‘SELECT ‘ + SUBSTRING(@Column, 0, LEN(@Column)) + ‘ From ‘+@tableName as SELECTScript
Copy and paste the result and execute the script.