Connections: Difference between revisions

From Accelerator for SageCRM
No edit summary
No edit summary
Line 83: Line 83:
then after  </httpProtocol> add in
then after  </httpProtocol> add in


<rewrite>          
<rewrite><outboundRules>
            <outboundRules>
                 <clear />                 
                 <clear />                 
                 <rule name="AddCrossDomainHeader">
                 <rule name="AddCrossDomainHeader">

Revision as of 18:38, 21 March 2024

This page is to help you set up your Sage CRM connection

When you first open the app it will prompt you to create a connection.

Click the PLUS (+) button and you will see a dialog

1. Enter in your CRM url in one fo the formats

 * https://crm.yourserver.com/CRM/
 * http://yourserver/CRM/

2. CRM Username

3. CRM User password

4. Remember me (stores the password)

5. Connection name - Internal name

6. Connection Caption - The text you see in the screen

7. Enabled - Tab is not shown if not enabled

8. Connect - Tries to login and saves the connection details


=

Troubleshoot

Help ref# 77342

If you get a CORS issue like the image below

It could be an issue with your web.config in that it is missing the CORS xml code

On your CRM server open "custompages/sagecrmws/web.config" and search for the "<system.webServer>" section.

You should see a number of "Access-Control-Allow-..." options within the "<system.webServer>" section.

 <system.webServer>
   <httpProtocol>
     <customHeaders>
       <add name="Access-Control-Allow-Origin" value="*" />
       <add name="Access-Control-Allow-Headers" value="*" />
       <add name="Access-Control-Allow-Methods" value="GET,PUT,POST,DELETE,PATCH,OPTIONS" />
       <add name="Access-Control-Allow-Credentials" value="true" />
       <add name="Access-Control-Allow-Private-Network" value="true" />
     </customHeaders>
   </httpProtocol>

....leave any code in between thats there already...and do not copy this line in  :)

 </system.webServer>

If you do not see it then add it in.

Add in the section

   <httpProtocol>
     <customHeaders>
       <add name="Access-Control-Allow-Origin" value="*" />
       <add name="Access-Control-Allow-Headers" value="*" />
       <add name="Access-Control-Allow-Methods" value="GET,PUT,POST,DELETE,PATCH,OPTIONS" />
       <add name="Access-Control-Allow-Credentials" value="true" />
       <add name="Access-Control-Allow-Private-Network" value="true" />
     </customHeaders>
   </httpProtocol>

between

 <system.webServer>

and

 </system.webServer>

then after </httpProtocol> add in

<rewrite><outboundRules>

               <clear />                
               <rule name="AddCrossDomainHeader">
                   <match serverVariable="RESPONSE_Access_Control_Allow_Origin" pattern=".*" />
                   <conditions logicalGrouping="MatchAll" trackAllCaptures="true">
                       <add input="{HTTP_ORIGIN}" pattern="(http(s)?://((.+\.)?crmtogether\.com|(.+\.)?localhost\#|(.+\.)?capacitor\.com))" />
                   </conditions>
                   <action type="Rewrite" value="{C:0}" />
               </rule>           
           </outboundRules>
       </rewrite>


No need to restart IIS or anything. Just save the file.

      • UPDATE: 17 March 2024 ***

It appears that a wildcard header in the “Access-Control-Allow-Origin” header is no longer accepted. This causes a CORS issue and you cannot log in. We fixed this on the session by editing the

…custompages/sagecrmws/web.config

Value From

           <add name="Access-Control-Allow-Origin" value=”*” />

To

           <add name="Access-Control-Allow-Origin" value=”https://version1260.crmtogether.com” />