Proposal Automation In Your CRM And What To Look Out For

CRM is a very versatile tool that’s often used for B2B sales and all its aspects, including tracking opportunities, leads, contracts, consolidating collaterals, documents and keeping contacts, tasks and events under one platform.

One of the most-overlooked essentials in B2B is the sales proposal process. But a timely CPQ, or Configure, Price, Quote software built in right on your CRM can give you that boost you’ve never had.

Thinking of adding CPQ to CRM? Consider these 7 elements to get the best system for your B2B needs.

  • Have an SSO, or Single Sign On to make everything easy for you and your users.
  • Can you use templates? This can speed up the process of generating new business and growing your company.
  • Analytics and Sales Reporting solidify the objectives and gives you something to aim for.
  • Integrations free up invaluable hours of your time by automating the apps you use for B2B.
  • Full support for your kind of business, and one that can give you the right CPQ from start to finish.
  • Value and scalability so you won’t have to pay more than what’s necessary. These days, it’s all about flexible pricing and zero annual licenses.
  • Last but not the least, you’ll need product flexibility that can adapt with the ever-changing B2B landscape.

Why Will You Need Single Sign On?

At first glance, having an SSO will mean a safer and more secure platform than without, but the biggest benefit you can take from this is complete accessibility. Sales tools must be visible and easy to get into so you and your staff can use it more. Plus, your CRM will be on the same platform as your tools, including your proposal.

In short, you’ll have the power to distribute, approve, create and collaborate on the proposal you’re working in one easy-to-use system that’s controlled by a single SSO, eliminating the need to install multiple software.

Are Templates Really That Important?

Proposals can mean the difference between landing your dream job and being stuck in your current situation. You’ll need a professional, high quality, detailed and engaging proposal or else it will get sent to where the sun doesn’t shine.

Templates can get you that stunning proposal quickly and consistently. Sales quotes won’t have to be done from scratch, thereby saving you time and effort. For business proposal templates that win deals, take a look at https://qwilr.com/templates/business-proposal-template/ and customize accordingly.

The end result? Cleaner, more professional proposals that show the client you’re really serious about your job. Automation and pre-filled templates can bring you there sooner than one without.

What About Reporting?

Sales processes are mainly made up of two parts- the sale itself and afterwards, the reporting. Metrics are there to be seen and analyzed so you can do better on your proposals the next time around. Real-time monitoring on the most important sales aspects mean you’ll be able to target areas of improvements to get better results the next time around.

When you learn how to read the data you’ll be more equipped to make the necessary adjustments for improved success. This is true of CPQ, CRM and A/B testing as well.

How Integration Can Benefit You

In the world of fast-paced B2B, the quicker you can point leads to your sales team, the greater the chances of turning a profit.

Automated proposal software integrated into your CRM platform is one of the best ways to close that gap. For example, you can use Zapier to connect to Microsoft Dynamics (on version 8 and above) and Qwilr with up to 20 unique configurations. Or, have the Microsoft Dynamics CRM tied to Qwilr easily and without having to input a single line of coding.

Here’s how the process works. Zapier connected to Qwilr supports the CRM account with automatic lead updates. Your sales team will know almost in real-time if there’s a possible lead they should follow. That said, it’s only a matter of time before your sales team becomes a well-oiled machine, nurturing proposals and getting more sales and profits.

The Role Of Support

You will need a CPQ that offers support for software development, maintenance and management. Free up all your time, concentrate on proposals and work on leads instead of having to do system troubleshooting.

Why Value and Scalability Are Important

B2B sales, mergers and growth can happen in the blink of an eye, and for that reason you will need a CPQ system that can keep pace. Moreover, while a good bargain is appealing, an invaluable partner is better for long-term success.

CRM Flexibility

Being able to spread winning bundles and create them via templates is one of the must-have features for CRMs as a whole. CPQ will make your sales team work as one even if they’re not all on the same office, area or location.

Advertisements

Applying XSLT transformation using the XML Task in SSIS

Using the XML Task component in SSIS we can apply XSLT to the input XML file.

Recently we had a requirement to read data from XML file and create/update corresponding records in Dynamics 365 CE. For the child entity tags in the XML, we wanted to insert some of the tags (key) from the parent to the child so that it can be easily used for mapping and setting the parent lookup.

For that we had used Foreach Loop Container to read the XML file, then had applied XSLT transformation using the XML Task before processing the file using XML Source Component and CRM Destination Component of KingswaySoft.

The XML task editor here is using 3 File Connection.

One for the input file, another for output and third for the XLST file.

Here need to select

  • Operation Type as XLST
  • Source Type as file connection as we are specifying XML file as input.
  • For output, we are creating an output XML file and overwriting the destination file if existing.
  • In the Second Operand, we are specifying the XSLT file.

For InputXMLTask file connection, we need to specify the user-defined variable that reads the file in its connection string property for it to work properly.

Same for OutputXMLTask

And for the XSLT File Connection

Let us take a simple example to understand it better à

Suppose below is our source XML i.e. Contact.xml

We want to apply following XSLT transformation to it, which adds the fullname tag to it which is a combination of firstname and lastname tag. i.e. XlsTransform.xslt

Drag the XML task to the control flow of the package.

Specify the following properties for it as shown below

Run the package we will get the below output file, a fullname tag added which is combination of firstname and lastname tag as below i.e. ContactOutput.xml

Hope it helps..

Order of attributes in Alternate Key in Dynamics CRM Destination Component in SSIS (KingwaySoft)

Recently we got the below error in one of our SSIS Packages

error

The packages were working fine in one of the environments and were failing in another.

It was throwing an error in one of the lookup fields that was referring to the alternate key. Here the alternate was defined with 2 fields.

As it turned out in another environment the order of the fields was changed for the alternate key field.

We recreated the alternate key field in the proper order of the attributes to fix this.

Hope it helps..

Using CDS/CRM Connection Manager of KingswaySoft’s SSIS Dynamics 365 Integration toolkit in Script Component (SSIS)

Recently for one of our requirements we had to use the CDS/CRM Connection of KingswaySoft’s SSIS Integration Toolkit for Dynamics 365

Below are the steps to be followed –

Drag the Script Transformation component, specify any input columns and inputs / outputs as required.

In the Connection Managers add the connection to Dynamics 365

Click on Edit Script to open the Visual Studio.

Add references to below 3 assemblies. We need to search for the 2 KingswaySoft assemblies in the machine and then add them.

The sample code –


public override void Input0_ProcessInputRow(Input0Buffer Row)
{
var connMgr = this.Connections.CRMConnectionManager;
var connectionString = (string)connMgr.AcquireConnection(null);
var conn = new CrmConnection(connectionString);

var orgService = (IOrganizationService)conn.GetCrmService();

RetrieveRequest retRequest = new RetrieveRequest();
retRequest.ColumnSet = new ColumnSet();
retRequest.ColumnSet.AddColumn("statuscode");
retRequest.Target = new EntityReference("dxc_contract", "dxc_contractnumberinternal", Row.dxccontractnumberinternal);
var response = (RetrieveResponse)orgService.Execute(retRequest);

if (response.Entity != null)
{
// status is closed
if (((OptionSetValue)response.Entity.Attributes["statuscode"]).Value == 282210002)
{
Row.IsApprovedContract = "N";
}
else
{
Row.IsApprovedContract = "Y";
}
}
}

Get all the details here

http://www.kingswaysoft.com/blog/2013/06/24/Writing-Script-Component-or-Script-Task-using-CRM-Connection-Manager

Hope it helps..

Assembly must be registered in isolation error while trying to register plugin \ custom workflow activity in Isolation Mode None in Dynamics 365 On Premise

While trying to register our custom workflow activity from Isolation mode – Sandboxed to None for Dynamics 365 On Premise we got the below error

This was because the user through which we were trying to register the plugin in None Isolation Mode using Plugin Registration Tool was not having Deployment Administrator role.

Adding the user to that Deployment Administrator role through Deployment Manager fixed the issue.

https://docs.microsoft.com/en-us/dynamics365/customer-engagement/on-premises/deployment-administrators

Read more about it

https://docs.microsoft.com/en-us/previous-versions/dynamicscrm-2016/developers-guide/gg309620(v=crm.8)#security-restrictions

Hope it helps..

Scribe Insight Limitation – XML Source doesn’t support repeating sibling nodes

Recently we were evaluating Scribe Insight as our Integration tool for one of our clients. The requirement was to read an xml and create records in Dynamics 365 CE.

The basic structure was something like below, with Account as the parent tag and Payment, Assets, Consumer as repeating child nodes of Account i.e. 1 – n.

However, to our surprise when we started defining the same structure in the XML Component within Scribe Workbench we got the below error message à

—————————

XML Component

—————————

Repeating nodes are not supported for cousins, siblings, etc. Multiple repeating nodes must be related linearly to repeating nodes that already exist. Thus, a new repeating node must be a grandparent, parent, child, grandchild, etc., to an existing repeating node.

—————————

OK

—————————

Interestingly enough the same limitation doesn’t exist in Scribe Online. Had posted something similar few days’ back on that

https://nishantrana.me/2019/01/14/scribe-online-working-with-hierarchical-data-in-dynamics-365-ce/

As we wanted to go with something that works in On Premise setup we went ahead with SSIS Productivity Pack of KingswaySoft https://www.kingswaysoft.com/products/ssis-productivity-pack which had XML components that works perfectly well with this kind of schema or structure.

Hope it helps..

Scribe Online – Working with Upsert Block in Dynamics 365 CE

Continuing our previous posts on Scribe Online, let us look at the Upsert block for Dynamics 365 CRM Connector.

The way it works is à

The Upsert block will have a field called alternatekeyname where we need to provide the name of the alternate key as shown below.

In CRM à

Along with passing the value for the field(s) involved in the alternate key.

The way to achieve the same in Informatica Cloud

https://nishantrana.me/2018/05/18/using-alternate-key-to-upsertupdate-using-dynamics-365-for-sales-connector-of-infomatica-cloud/

Do check out this wonderful article that explains the usage of Upsert Block, Custome Update + Insert and Update/Insert block.

https://www.scribesoft.com/blog/2014/11/updateinsert/

Hope it helps..

Scribe Online – Working with Hierarchical Data in Dynamics 365 CE

In the previous post, we saw how to create XML connection and using it as a source to create records in Dynamics 365 CE.

https://nishantrana.me/2019/01/11/scribe-online-xml-to-dynamics-365-ce/

In this post, we will see how to consume the hierarchical XML data as a source and create parent-child records in Dynamics 365 CE.

Suppose this is our source data with the following relationship

Contact à n Contract à n Asset à n Asset Line

As a first step we need to get the XSD for it, which we will use while defining the XML connection.

https://www.freeformatter.com/xsd-generator.html

Our XML connection

Similarly, add the CRM Connection.

This is how our final mapping will look like

For Query Contact Block (xml) à select Entity as Contact.

For the Include tab, we have selected all the child (tag) entities to be included.

For Create Contact (CRM) block we have mapped the first name and last name field

For For Each Child block select the relationship.

Followed by Create Contract block with following fields mapping.

Here we are setting the contact’s lookup in the contract entity using the Results from Contact Create steps.

Repeat the same steps for remaining child entities like Asset and Asset Line by selecting the relationship in for each child block and in the next create step setting the fields appropriately.

Validate and close the map and run the solution.

On successful run, we can see the records created in CRM

Hope it helps..

Scribe Online – XML to Dynamics 365 CE

Follow the earlier posts to create the Scribe Online trial and steps to create an integration solution.

Below is our sample XML file that holds the contact information that we want to create inside Dynamics 365 CE

For creating XML connection, we need the XSD file.

So let us generate the XSD file using the below tool

https://www.freeformatter.com/xsd-generator.html

The generated XSD –

Now install the XML Connector from the Marketplace.

Then create a new connection specifying the XML File and the XSD File.

Let us create the integration solution, go to Solution and click on create a new integration solution

Create a new integration map for the solution as shown below

Add the XML connection and the CRM Connection to the map and drag the Query block (XML Connection)

For Query Block select the contact entity.

The add the For Each Result block and insert the Create block (CRM) within it

For Create block, the select entity as Contact.

For the Fields tab, map the source fields to the target.

Click on ok to close the map editor and back in Solution, click on RUN to execute the solution.

After successful completion,

The success.xml created in the same folder where we had XML source file.

And also, we can see the records created in CRM.

In the next post, we will see how we can consume hierarchical XML data to create parent-child records in CRM.

Hope it helps..

Working with OptionSet \ Picklist in Scribe Online

Scribe Online makes it very easy to work with OptionSets while writing Integration and Replication solutions.

While creating the Dynamics 365 CE connection we can check the Include Picklist Display Names checkbox.

Scribe generates a corresponding field schemaname_displayname that holds the label for the corresponding option set.

Within our Query Block inside an integration type solution, we can see the display name fields added for each corresponding option set field.

Go to the Preview tab

Here we can see leadqualitycode_displayname, leadsourcecode_displayname etc. field added.

Within our Filter criteria, we can directly refer the label as shown below.

We can get the label from the Preview tab itself by clicking on the information icon next to the field as shown below instead of opening CRM.

Hope it helps..