Developer Workstation Installation

Open 'Developer Workstation Installation' wizard, choose your scenario to see more provider-related information of the installation manual.

Configure the Connection Strings

In the previous steps, we have explained how to set up the Sana Commerce SQL database and Dynamics AX WCF service. Now you have to configure the Sana Commerce Starter Site and backoffice web applications, so they can connect to the data stores:

Step 1: Open the 'web.config' file of the 'Sana.Commerce.StarterSite' project in any text editor ('Notepad' for example).

Step 2: Locate the 'connectionStrings' configuration section:

<connectionStrings>
       <remove name="LocalSqlServer" />
       <add name="IndexDirectory" connectionString="IndexDirectoryFolder"/>
       <add name="LocalSqlServer" connectionString="Server=ServerName\InstanceName;initial catalog=DatabaseName;User Id=Username;Password=Password;MultipleActiveResultSets=true;" />
       <add name="AxWebService" connectionString=
"EndPointConfigurationName=AX;UserName=AxUserName;Password=Password;Domain=Domain;" />
<add name="NavisionStandardService" connectionString="NavisionServiceUrl"/>
</connectionStrings>

Step 3: Delete the following line:

<add name="NavisionStandardService" connectionString="NavisionServiceUrl"/>

Step 4: Replace the following values:

#INDEXDIRECTORYFOLDER#: The path to the folder where the index files are stored.
#SERVERNAME\INSTANCENAME#: Database server name or IP address of the SQL database server and optionally the SQL server instance name.
#DATABASENAME#: Name of the SQL database used in 'Setup the SQL Database'.
#USERNAME#: Database username used in 'Setup the SQL Database'.
#PASSWORD#: Password of the database user.

Step 5: Replace the following values #AXUSERNAME#, #PASSWORD#, #DOMAIN# of the Dynamics AX user, which is configured in the AX client at the following location: Administration -> Common Forms -> Users. More detailed information about the AX user can be found here.
This user will be used by the Sana Commerce Starter Site to connect to Dynamics AX. Thus the appropriate rights should be granted in AX to this user.

Step 6: Open the 'web.config' file of the 'Sana.Commerce.BackOffice' project in any text editor.

Step 7: Locate the 'appSettings' configuration section:

<appSettings>
     <add key="FrontendUrl" value="ShopUrl"/>
     <add key="FrontendPath" value="PhysicalPathToFrontendFolder"/>
     <add key="FrontendContentPath" value="PhysicalPathToFrontendFolder\content\files"/>
     <add key="FrontendThumbnailPath" value="/content/files/images/ProductImages/Small/"/>
</appSettings>

Step 8: Replace the #FRONTENDURL# value, which should have the following form:

"#ROTOCOL#://#WEBSITEDOMAINNAME#:#PORT#"

where:
#PROTOCOL#: the protocol which is used for connecting to the SC website (HTTP or HTTPS)
#WEBSITEDOMANINAME#: the website address that is registered in the DNS servers of your network.
#PORT# (optional): the port number when it is not the default HTTP port number (80).

Attribute 'FrontendThumbnailPath' specifies the path to the folder which is used for storing the product images.
Attribute 'FrontendContentPath' specifies the folder which is used for storing the content files.

If your website and backoffice have different domains you should create the 'images' virtual directory in the
'BackOffice' website in IIS with the path to the original 'images' directory in the 'StarterSite' website.
This is done in order for HTML editor in backoffice to manage the content images correctly.

'Images' Virtual Directory in the 'Backoffice' Website in IIS

More detailed information about frontend and frontend content paths can be found here.

Step 9: Locate the 'connectionStrings' configuration section:

<connectionStrings>
      <clear/>
         <add name="IndexDirectory" connectionString="IndexDirectoryFolder"/>
         <add name="LocalSqlServer" connectionString="Server=ServerName\InstanceName;initial catalog=DatabaseName;User Id=Username;Password=Password;MultipleActiveResultSets=true;" />
         <add name="AxWebService" connectionString=
"EndPointConfigurationName=AX;UserName=AxUserName;Password=Password;Domain=Domain;" />
<add name="NavisionStandardService" connectionString="NavisionServiceUrl"/>
</connectionStrings>

Step 10: Delete the following line:

<add name="NavisionStandardService" connectionString="NavisionServiceUrl"/>

Step 11: Replace the following values:

#INDEXDIRECTORYFOLDER#: The path to the folder where the idex files are stored.
#SERVERNAME\INSTANCENAME#: Database server name or IP address of the SQL database server and optionally the SQL server instance name.
#DATABASENAME#: Name of the SQL database used in 'Setup the SQL Database'.
#USERNAME#: Database username used in 'Setup the SQL Database'.
#PASSWORD#: Password of the database user.

Step 12: Replace the following values #AXUSERNAME#, #PASSWORD#, #DOMAIN# of the Dynamics AX user, which is configured in the AX client at the following location: Administration -> Common Forms -> Users. More detailed information about the AX user can be found here.
This user will be used by the Sana Commerce Starter Site to connect to Dynamics AX. Thus the appropriate rights should be granted in AX to this user.

Step 13: Locate the following node in the 'client' configuration section, which is located in the 'system.serviceModel' section:

<endpoint name="AX" address="AxEndpointAddress" binding="wsHttpBinding" 
bindingConfiguration="AX" contract="AXDataServiceClient">

Step 14: Replace the 'AxEndpointAddress' value with the address where the Dynamics AX WCF service is published
(do the same for both 'web.config' files of the 'Sana.Commerce.BackOffice' and 'Sana.Commerce.StarterSite').

Step 15: Locate the following node in the 'identity' configuration section:
<userPrincipalName value="USER_PRINCIPAL_NAME" />

Step 16: Replace the 'USER_PRINCIPAL_NAME' value with the Business Connector proxy user (SC_BusinessProxyUser) in the following format
(do the same for both 'web.config' files of the 'Sana.Commerce.BackOffice' and 'Sana.Commerce.StarterSite'):

<userPrincipalName value="SC_BusinessProxyUser@DOMAIN" />

You can find more information about different SQL connection strings here: http://connectionstrings.com/sql-server-2005.