Wednesday, June 15, 2016

Connecting to SQL Server 2016 from Power BI

 Most of the SQL Servers have an integrated Reporting Services, a stable work horse for not only turning out reports but also handling all aspects of enterprise reporting from getting data to distributing, monitoring, etc. It has a reporting services Report Server and an integrated Report Manager front end.

I have covered the Reporting Services in two of my more popular books, one for SQL Server 2008 and another for Reporting Services 2012. The latter covers both the Native Mode of the server but also the SharePoint Integrated mode.





 

PowerBI on the other hand is supposed to provide the ad-hoc authoring of reports even though the author of the report has the knowledge of neither the complete innards of the report data nor the programming capabilities of a full-blown report developer.

In this post, I will step through the process of connecting to SQL Server 2016 from one of the recent versions of Power BI. I have a number of posts for the interested reader related to Power BI at the conclusion of this post.

The details of this post relates to a Windows 10 laptop which has a local named instance of SQL Server 2016 (Developer edition) and Power BI.

Step 1:
Launch POWER BI from its desktop shortcut.

PowerBI_00

Step 2:
Make sure your SQL Server 2016 is up and running. Get to the main screen where you will be designing by dismissing the modal splash screen.

PowerBI_01

 Click on GetData. You should get a drop-down menu with various data sources listed. When you hover over SQL Server you can see the pop-up as shown.

 PowerBI_02
 Click on SQL Server to display the following:





  PowerBI_03
You need to enter the details. The present version is not showing any options to browse for a server. You need to enter (You can get the information from the SSMS 2016) the details, the one shown are for the present named Instance of SQL Server 2016.

PowerBI_04

Click OK and you will be displaying the following screen:


PowerBI_05


SQL Server 2016 was installed for Windows Authentication access and therefore you can accept the default and click Connect.

You get this message related to encryption. SQL Server 2016 supports encryption and I am not sure why this message generated.


PowerBI_06

Click OK and you are connected to the AdventureWorks2014 Database as shown.

PowerBI_07

You may want to read up on the following related stuff to get a head start with Power BI:

PowerBI and the Cloud
http://hodentek.blogspot.com/2015/08/doing-bi-in-cloud-using-powerbi-for.html

PowerBI on Gartner's Magic Quadrant
http://hodentek.blogspot.com/2015/07/qlik-is-in-gartners-bi-magic-quadrant.html

Report from SQL Anywhere 16 using Microsoft Power BI
http://hodentek.blogspot.com/2015/02/powerbi-preview-reporting-from-sql.html

Report from an EXCEL application
http://hodentek.blogspot.com/2015/02/powerbi-preview-reports-using-data-on.html

Rapid reporting with Microsoft Power BI
http://hodentek.blogspot.com/2015/02/spin-out-cutting-edge-report-with-power.html

Microsoft Intelligent System Services
http://hodentek.blogspot.com/2015/03/microsoft-azure-iot-services-update.html

Power BI Unchained
http://hodentek.blogspot.com/2015/02/power-bi-unchained.html

Saturday, June 11, 2016

Exporting data from SQL Server 2016 as JSON string?

JSON support was long due and finally it was addressed in SQL Server 2016. If you are new to JSON review this article first.

Formatting and exporting data was the feature first introduced in SQL Server 2016 CTP2.

Microsoft introduced the FOR JSON AUTO clause. This clause automatically formats in JSON based on the order of the columns from tables. There is no need to specify a path or use nested sub-queries.

Here is a simple example from the AdventureWorks2014 OLTP database in SQL Server 2016. If you do not have this database you can install it as shown here.

If you do not have SQL Server 2016 follow this link to install.

The following query returns 10 rows from the Employee table of HumanResources.


JSON_00

For returning the JSON Formatted data all you need to do is to append the FOR JSON AUTO clause to the above query as shown here:

JSON_01

The response is rearranged in the queries response pane as shown:

JSON_02 

Read this JSON article with a twist.

Install AdventureWorks2014 OLTP DB Sample on SQL Server 2016

I heard that a new sample database has been created that pairs well with the latest SQL Server 2016. My attempts to find it has been futile. Should I find it, you will be the first to know.

However, you can check out or work with the new SQL Server with an existing sample, the AdventureWorks2014. It is available on the CodePlex site.

Go here (http://msftdbprodsamples.codeplex.com/releases) and download the highlighted database script. If you like you may try others on this site.



AdvWrks2014Install_00

Download the script file to a location of your choice and extract the files.
Locate the script file as shown. The data files are .CSV files for each of the table in the database.


AdvWrks2014Install_001

Launch SQL Server 2016 from its shortcut in All Programs. You should launch it with administrator privileges, otherwise you may not succeed.

Click File | Open | File...


AdvWrks2014Install_002

The file opens in a query pane as shown. You may need to scroll down to see the rest of the code. The original environmental settings statements are the following but in the next image they have been changed to reflect the downloaded location.
-------------------
:setvar SqlSamplesDatabasePath "C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\"
-- NOTE: Change this path if you copied the script source to another path
:setvar SqlSamplesSourceDataPath "C:\Program Files\Microsoft SQL Server\120\Tools\Samples\Adventure Works 2014 OLTP Script\"
--------------------------------


AdvWrks2014Install_003

 Step 1:

This is your starting point to run the script. But before you do it get the option to set it, so that it complies with SQL Server 2014 for scripting.

Click Tools | Options... to open the Options window. Scroll down to the end and expand the SQL Server Object Explorer and click on Scripting to reveal the various settings.



AdvWrks2014Install_004

Set the script for server version to SQL Server 2014 the above drop-down and click OK..

 Step 2:

If you ran the script at this point by highlighting the script in the query pane and clicking Execute you would get an error:


AdvWrks2014Install_05

As the user database AdventureWorks2014 does not exist in the instance of server you got this error.


Step 3:
Now look at the two lines in the downloaded script:
----
:setvar SqlSamplesSourceDataPath "C:\Program Files\Microsoft SQL Server\120\Tools\Samples\Adventure Works 2014 OLTP Script\"-- NOTE: Change this path if you copied the script source to another path:setvar SqlSamplesDatabasePath "C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\"
------
The 'path' for the two lines should be set correctly otherwise you will end up with errors.

Herein two folders CSVData and Myscript are created in this Program Files folder:


The instawdb.sql is placed in the Myscript and all the .CSV files in the CSVData folder.

Replace the line with the path for the .CSV files in the download  (a sample of this folder is shown in the second image above).

 C:\Program Files\Microsoft SQL Server\130\Tools\CSVData

The SqlSamplesSourceDataPath should be set to the path of the CSVData folder.

The SqlSamplesDatabasePath should be set to the default database path for the instance you have created.

C:\Program Files\Microsoft SQL Server\MSSQL13.OHANA\MSSQL\DATA\

Now if you look at the script you would recognize it as executable as a SQLCMD command. Change to SQLCMD mode as shown:



With these changes made to the script, click Execute after placing your cursor in the query pane.

The script is executed starting with creating all the tables followed by Bulk Loading of the tables. When it encounters an error, you get a message in the response as shown here:

---------------------------------------
Microsoft SQL Server 2016 (RTM) - 13.0.1601.5 (X64)
    Apr 29 2016 23:23:58
    Copyright (c) Microsoft Corporation
    Developer Edition (64-bit) on Windows 10 Pro Insider Preview 6.3 <X64> (Build 14342: ) (Hypervisor)

Started - 2016-06-10 17:25:24.430

*** Dropping Database

*** Creating Database

*** Checking for AdventureWorks2014 Database

*** Creating DDL Trigger for Database

*** Creating Error Log objects
  CREATE_TABLE - dbo.ErrorLog
  ALTER_TABLE - dbo.ErrorLog
  CREATE_PROCEDURE - dbo.uspPrintError
  CREATE_PROCEDURE - dbo.uspLogError

*** Creating Data Types
  CREATE_TYPE - dbo.AccountNumber
  CREATE_TYPE - dbo.Flag
  CREATE_TYPE - dbo.NameStyle
  CREATE_TYPE - dbo.Name
  CREATE_TYPE - dbo.OrderNumber
  CREATE_TYPE - dbo.Phone

*** Creating Pre-Table Database Functions
  CREATE_FUNCTION - dbo.ufnLeadingZeros

*** Creating Database Schemas
  CREATE_SCHEMA - HumanResources.HumanResources
  CREATE_SCHEMA - Person.Person
  CREATE_SCHEMA - Production.Production
  CREATE_SCHEMA - Purchasing.Purchasing
  CREATE_SCHEMA - Sales.Sales

*** Creating XML Schemas

Create AdditionalContactInfo schema
  CREATE_XML_SCHEMA_COLLECTION - Person.AdditionalContactInfoSchemaCollection
  ALTER_XML_SCHEMA_COLLECTION - Person.AdditionalContactInfoSchemaCollection
  ALTER_XML_SCHEMA_COLLECTION - Person.AdditionalContactInfoSchemaCollection

Create Individual survey schema
  CREATE_XML_SCHEMA_COLLECTION - Person.IndividualSurveySchemaCollection

Create Resume schema
  CREATE_XML_SCHEMA_COLLECTION - HumanResources.HRResumeSchemaCollection

Create Product catalog description schema
  CREATE_XML_SCHEMA_COLLECTION - Production.ProductDescriptionSchemaCollection
  ALTER_XML_SCHEMA_COLLECTION - Production.ProductDescriptionSchemaCollection

Create Manufacturing instructions schema
  CREATE_XML_SCHEMA_COLLECTION - Production.ManuInstructionsSchemaCollection

Create Store survey schema
  CREATE_XML_SCHEMA_COLLECTION - Sales.StoreSurveySchemaCollection

*** Creating Tables
  CREATE_TABLE - Person.Address
  CREATE_TABLE - Person.AddressType
  CREATE_TABLE - dbo.AWBuildVersion
  CREATE_TABLE - Production.BillOfMaterials
  CREATE_TABLE - Person.BusinessEntity
  CREATE_TABLE - Person.BusinessEntityAddress
  CREATE_TABLE - Person.BusinessEntityContact
  CREATE_TABLE - Person.ContactType
  CREATE_TABLE - Sales.CountryRegionCurrency
  CREATE_TABLE - Person.CountryRegion
  CREATE_TABLE - Sales.CreditCard
  CREATE_TABLE - Production.Culture
  CREATE_TABLE - Sales.Currency
  CREATE_TABLE - Sales.CurrencyRate
  CREATE_TABLE - Sales.Customer
  CREATE_TABLE - HumanResources.Department
  CREATE_TABLE - Production.Document
  CREATE_TABLE - Person.EmailAddress
  CREATE_TABLE - HumanResources.Employee
  CREATE_TABLE - HumanResources.EmployeeDepartmentHistory
  CREATE_TABLE - HumanResources.EmployeePayHistory
  CREATE_TABLE - Production.Illustration
  CREATE_TABLE - HumanResources.JobCandidate
  CREATE_TABLE - Production.Location
  CREATE_TABLE - Person.Password
  CREATE_TABLE - Person.Person
  CREATE_TABLE - Sales.PersonCreditCard
  CREATE_TABLE - Person.PersonPhone
  CREATE_TABLE - Person.PhoneNumberType
  CREATE_TABLE - Production.Product
  CREATE_TABLE - Production.ProductCategory
  CREATE_TABLE - Production.ProductCostHistory
  CREATE_TABLE - Production.ProductDescription
  CREATE_TABLE - Production.ProductDocument
  CREATE_TABLE - Production.ProductInventory
  CREATE_TABLE - Production.ProductListPriceHistory
  CREATE_TABLE - Production.ProductModel
  CREATE_TABLE - Production.ProductModelIllustration
  CREATE_TABLE - Production.ProductModelProductDescriptionCulture
  CREATE_TABLE - Production.ProductPhoto
  CREATE_TABLE - Production.ProductProductPhoto
  CREATE_TABLE - Production.ProductReview
  CREATE_TABLE - Production.ProductSubcategory
  CREATE_TABLE - Purchasing.ProductVendor
  CREATE_TABLE - Purchasing.PurchaseOrderDetail
  CREATE_TABLE - Purchasing.PurchaseOrderHeader
  CREATE_TABLE - Sales.SalesOrderDetail
  CREATE_TABLE - Sales.SalesOrderHeader
  CREATE_TABLE - Sales.SalesOrderHeaderSalesReason
  CREATE_TABLE - Sales.SalesPerson
  CREATE_TABLE - Sales.SalesPersonQuotaHistory
  CREATE_TABLE - Sales.SalesReason
  CREATE_TABLE - Sales.SalesTaxRate
  CREATE_TABLE - Sales.SalesTerritory
  CREATE_TABLE - Sales.SalesTerritoryHistory
  CREATE_TABLE - Production.ScrapReason
  CREATE_TABLE - HumanResources.Shift
  CREATE_TABLE - Purchasing.ShipMethod
  CREATE_TABLE - Sales.ShoppingCartItem
  CREATE_TABLE - Sales.SpecialOffer
  CREATE_TABLE - Sales.SpecialOfferProduct
  CREATE_TABLE - Person.StateProvince
  CREATE_TABLE - Sales.Store
  CREATE_TABLE - Production.TransactionHistory
  CREATE_TABLE - Production.TransactionHistoryArchive
  CREATE_TABLE - Production.UnitMeasure
  CREATE_TABLE - Purchasing.Vendor
  CREATE_TABLE - Production.WorkOrder
  CREATE_TABLE - Production.WorkOrderRouting

*** Loading Data
Bulk load: DataFileType was incorrectly specified as widechar. DataFileType will be assumed to be char because the data file does not have a Unicode signature.
Loading [Person].[Address]
Bulk load: DataFileType was incorrectly specified as widechar. DataFileType will be assumed to be char because the data file does not have a Unicode signature.

(19614 row(s) affected)
Loading [Person].[AddressType]

(6 row(s) affected)
Loading [dbo].[AWBuildVersion]

(1 row(s) affected)
Loading [Production].[BillOfMaterials]

(2679 row(s) affected)
Loading [Person].[BusinessEntity]

(20777 row(s) affected)
Loading [Person].[BusinessEntityAddress]

(19614 row(s) affected)
Loading [Person].[BusinessEntityContact]

(909 row(s) affected)
Loading [Person].[ContactType]

(20 row(s) affected)
Loading [Person].[CountryRegion]

(238 row(s) affected)
Loading [Sales].[CountryRegionCurrency]

(109 row(s) affected)
Loading [Sales].[CreditCard]

(19118 row(s) affected)
Loading [Production].[Culture]

(8 row(s) affected)
Loading [Sales].[Currency]

(105 row(s) affected)
Loading [Sales].[CurrencyRate]

(13532 row(s) affected)
Loading [Sales].[Customer]

(19820 row(s) affected)
Loading [HumanResources].[Department]

(16 row(s) affected)
Loading [Production].[Document]

(13 row(s) affected)
Loading [Person].[EmailAddress]

(19972 row(s) affected)
Loading [HumanResources].[Employee]

(290 row(s) affected)
Loading [HumanResources].[EmployeeDepartmentHistory]

(296 row(s) affected)
Loading [HumanResources].[EmployeePayHistory]

(316 row(s) affected)
Loading [Production].[Illustration]

(5 row(s) affected)
Loading [HumanResources].[JobCandidate]

(13 row(s) affected)
Loading [Production].[Location]

(14 row(s) affected)
Loading [Person].[Password]

(19972 row(s) affected)
Loading [Person].[Person]

(19972 row(s) affected)
Loading [Sales].[PersonCreditCard]

(19118 row(s) affected)
Loading [Person].[PersonPhone]

(19972 row(s) affected)
Loading [Person].[PhoneNumberType]
Msg 4864, Level 16, State 1, Line 2180
Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 3, column 3 (ModifiedDate).

[ there were three rows of data in the CSV file but only two were transferred to the table]
Loading [Production].[Product]

(504 row(s) affected)
Loading [Production].[ProductCategory]

(4 row(s) affected)
Loading [Production].[ProductCostHistory]

(395 row(s) affected)
Loading [Production].[ProductDescription]

(762 row(s) affected)
Loading [Production].[ProductDocument]

(32 row(s) affected)
Loading [Production].[ProductInventory]

(1069 row(s) affected)
Loading [Production].[ProductListPriceHistory]

(395 row(s) affected)
Loading [Production].[ProductModel]

(128 row(s) affected)
Loading [Production].[ProductModelIllustration]

(7 row(s) affected)
Loading [Production].[ProductModelProductDescriptionCulture]

(762 row(s) affected)
Loading [Production].[ProductPhoto]

(101 row(s) affected)
Loading [Production].[ProductProductPhoto]

(504 row(s) affected)
Loading [Production].[ProductReview]

(4 row(s) affected)
Loading [Production].[ProductSubcategory]

(37 row(s) affected)
Loading [Purchasing].[ProductVendor]

(460 row(s) affected)
Loading [Purchasing].[PurchaseOrderDetail]

(8845 row(s) affected)
Loading [Purchasing].[PurchaseOrderHeader]

(4012 row(s) affected)
Loading [Sales].[SalesOrderDetail]

(121317 row(s) affected)
Loading [Sales].[SalesOrderHeader]

(31465 row(s) affected)
Loading [Sales].[SalesOrderHeaderSalesReason]

(27647 row(s) affected)
Loading [Sales].[SalesPerson]

(17 row(s) affected)
Loading [Sales].[SalesPersonQuotaHistory]

(163 row(s) affected)
Loading [Sales].[SalesReason]

(10 row(s) affected)
Loading [Sales].[SalesTaxRate]

(29 row(s) affected)
Loading [Sales].[SalesTerritory]

(10 row(s) affected)
Loading [Sales].[SalesTerritoryHistory]

(17 row(s) affected)
Loading [Production].[ScrapReason]

(16 row(s) affected)
Loading [HumanResources].[Shift]

(3 row(s) affected)
Loading [Purchasing].[ShipMethod]

(5 row(s) affected)
Loading [Sales].[ShoppingCartItem]

(3 row(s) affected)
Loading [Sales].[SpecialOffer]

(16 row(s) affected)
Loading [Sales].[SpecialOfferProduct]

(538 row(s) affected)
Loading [Person].[StateProvince]

(181 row(s) affected)
Loading [Sales].[Store]

(701 row(s) affected)
Loading [Production].[TransactionHistory]

(113443 row(s) affected)
Loading [Production].[TransactionHistoryArchive]

(89253 row(s) affected)
Loading [Production].[UnitMeasure]

(38 row(s) affected)
Loading [Purchasing].[Vendor]

(104 row(s) affected)
Loading [Production].[WorkOrder]

(72591 row(s) affected)
Loading [Production].[WorkOrderRouting]

(67131 row(s) affected)
** An error was encountered during execution of batch. Exiting.


There are some problems with two of the tables in the installation script at the CodePlex site.

Here is the Object Explorer displaying the installed database:

 

Thursday, June 9, 2016

R Language items installed with SQL Server 2016

 R is supposed to be the most powerful language when it comes to statistical processing of a large amount of data; machine learning and graphics. It is open, that means world is the player. Microsoft got into R for these strengths but still there were challenges when it comes to volume of data and deployment scenarios. The open software was further tuned for SQL Server to include in Microsoft R Server.

The Microsoft R product consists of the following:
  • Microsoft R Server
  • Microsoft R Client
  • Microsoft R Open
  • SQL Server R Services
When you install SQL Server 2016 Developer you will be able to use the following:



SQL@2K16_defaultInstall


Also in the SQL Server Installation Center you can install a stand-alone Microsoft R Server by clicking the link in the installation center, if for some reason you do not find the Microsoft R Server in your search.

RServer_00

After installing SQL Server 2016 Developer edition you should be able to find the R Server related folders/files here:

R_Folder
 

Update your SQL Server Management Studio 2016 to work with SQL Server 2016

If you followed my recent post (http://hodentek.blogspot.com/2016/05/get-ssms-2016-and-install-to-work-with.html)you would have installed the SQL Server Management Studo 2016 Release Candidate which used the software released on April 2016.

SSMS2016_April2016

SQL Server 2016 Developer became available on June 1, and when the SSMS 2016 RC was launched, you would get a message that there is an update to SSMS 2016.

SSMSUpdate

Clicking on the Update button takes you to Microsoft web site to download the latest version whose details are shown below.


SSMS2016_June2016

Updating easy

Double click the downloaded   June 2016 version to display the


Click Install and takes a little while downloading packages and installing.

Click Close.

Here is the SQL Server 2016 Instance after making a connection to it:

SSMS_SQL2k16_00

Sunday, June 5, 2016

Installing SQL Server 2016 Developer Edition

 Review the following before reading this post:

http://hodentekmsss.blogspot.com/2016/05/watch-out-sql-server-2016-general.html
http://hodentekmsss.blogspot.com/2016/05/download-sql-server-management-studio.html 
http://hodentekmsss.blogspot.com/2016/05/stretch-database-is-nice-feature-of-sql.html


Download the SQL Server 2012 Developer Edition from Microsoft Site.

Mount the .ISO file as described here.


Double click the executable file in the mounted drive.


Agree to updating computer information


SQL Server Installation center is displayed.


Install_00
Install_001


Click System Configuration checker.
Rules get checked as shown.

Install_002

Click OK

Click hardware and software requirements. You are taken to Microsoft site to review details.
Details here:
https://msdn.microsoft.com/en-us/library/ms143506(v=sql.130).aspx#top_principal
--------------
You can access a virtual machine on which SQL Server 2016 is already installed, if you have an Azure account for evaluation.
  • Needs .NET Framework 4.6.1 and will be installed during SQL Server 2016 installation.
Hardware requirements as shown here:

Install_003

  • You need 1GB except for Express which needs only 512MB. Recommended is 4GB
  • x64 Processor, 1.4 GHZ recommended 2.0 GHZ or higher
  • No x86 bit server
  • No WOW support either
  • Management tools OK on WOW

Two types of editions:

Principal Editions--Enterprise, Standard and Web
Breadth Editions--Developer and Express

For Windows 10, the type can be either Standard in Principal
or Developer and Express in Breadth editions


Click on Installation in SQL Server Installation Center to display Installation details


Install_004
Install_004_2


Click on the first option, New SQL Server stand-alone installation or add features to an existing installation.

The Product Key page is displayed. For developer edition no product key is required.

Install_005

Click Next to open the License Terms page as shown.

Install_006

Accept License terms and click Next.

Checks Global rules and takes you to product update page as shown
KB3164398---https://support.microsoft.com/en-us

Install_007

Click Next.

Install Setup Files page is displayed as shown.--this takes a while!



Install_008
Install_008_2

 
Install_008_3 

Click OK to Rules Check Result Message. Click Next

Features Selection page is displayed. Make selections

Install_009

After the 'Please Wait..' window the Instance Configuration window is displayed as shown.

Herein a named instance will be installed.

Installing a named instance called OHANA as shown


Install_010

Click Next.                         --after the 'Please Wait..' window


Polybase Configuration page is displayed as shown.


Install_011

Click Next. The Server Configuration page is displayed. The various service accounts needs to be set. In what follows, in this installation, the current computer user takes on all the accounts with his Windows password. This is just to keep it simple. In an enterprise, this way of handling must be avoided.

Install_012
Regarding initialization look here:
https://msdn.microsoft.com/library/ms175935(v=sql.130).aspx
---------------------------------
In the next couple of interactive windows the Service's Account Name will be changed to reflect the current user assuming them.

Click inside the Account Name window of the SQL Server Agent to bring up the drop-down menu.


Install_012_a

Click Browse...to display the Select User or Group window.


Install_012_b

Click Advanced... button.

Select User or Group (adv) page is displayed.
Install_012_c

Click Find Now button. The Search results pane gets populated with all relevant account information.

Install_012_d_1
Choose the Current User of computer by highlighting it and Click OK. The current user gets selected.


Install_012_e

Click OK. Current user account name is inserted for the SQL Server Agent's Account Name a shown.

Install_012_f

Do the same for the other services. Actually after doing for the SQL Server Agent you can copy the Account Name and paste in the other services. Enter password for each service, the same Windows password.


Install_013

Oops! there was a typo in the Reporting Services password field.


Install_013_1
--------------------------------------------------
Error in password for Reporting Services Corrected. Click Next.
Database Engine Configuration page is displayed.
Install_014

Click Add Current User on the Server Configuration tabbed pane as shown. The current user's user name gets added to the Specify SQL Server administrators'' pane


Install_014_a
Click Data Directories tab. In Data Directories accept default.


Install_014_b

Click TempDB tab. Note the file names and other details. Just accept the defaults.


Install_014_c

Click File Stream tab. Click all check boxes.


Install_014_d

Click Next.

Analysis Services Configuration mode is displayed
Default is Multidimensional and data mining mode. You can choose only a single server mode.
Accept default.

Install_015
Click Add Current User. Current User will be added as an administrator.

Click Data Directories tab.


Install_016

Make no changes and click Next.

Reporting Services Configuration page is displayed as shown.


Install_017

Accept default and click Next.

The Consent to install Microsoft R Open page is displayed.



Install_018                          --Please Wait window is displaeyd.
Click Next.
Feature configuration check is made and the Ready to Install page is displayed.

Install_019

Install_019_a
Install_019_b


Install_019_c

Install_019_d

Install_019_e

Install_019_f

Install_019_g
Click Install. The installation took slightly less than hour. This is the fastest ever for SQL Server in all these years.

The computer was not restarted but only the above message window clicked OK.

Install_020

That's all.

If you are just starting to learn Reporting Services, this is all that you may need:
https://hodentekmsss.blogspot.com/2017/05/installing-sql-server-2016-sp1-for.html



Do you know what you installed while custom installing SQL Server 2022?

 When you install any software in Windows OS, the key information gets into the Registry and some of which you can look up in the control pa...