Tuesday, April 29, 2014

Tech Tuesday: Working with Date and Time Fields in Integration between Microsoft Dynamics CRM and Microsoft Dynamics GP using SmartConnect

Today's Tech Tuesday article comes right from the trenches of working in the world of integration. In this article we are going to focus on date fields from Microsoft Dynamics CRM.

Oftentimes when customers need to transform date fields from one format to another they will just use the standard SmartConnect Date Calculation (under Additional Fields in the mapping).


This will normally allow you to transform a date field from any format to any format. In the case of this specific customer we ran into two unique issues.

1) The first hurdle was that sometimes the date field coming from Microsoft Dynamics CRM would be NULL. This presents challenges as you have to make assumptions on how you handle NULLS. 

2) The second challenge was that we had multiple regions involved. In this specific example, we had Microsoft Dynamics CRM Online (hosted in a US locale) and Microsoft Dynamics GP on premise in the UK.

This customer had a Dynamics GP field that needed that date value along with another Extender window that needed the date value. What we were able to do to accomplish this task was to provide a calculated field to meet the criteria for both scenarios. Here is the calculated field that was used below in VB.NET form:

'Use the date field from your CRM Entity below
Dim dateString as string = _CUSTOMENTITY_STARTDATE 
Dim provider as System.Globalization.CultureInfo = System.Globalization.CultureInfo.InvariantCulture
'substitute the "en-US" below with the locale of the source data
Provider = New System.Globalization.CultureInfo("en-US")

'Handle NULL/Blank value of date/datetime field 
if dateString ="" then
     return "1900-01-01"
else
     'Convert the datestring provided to a date field in locale, then convert to desired locale
     return (Convert.ToDateTime(dateString,provider)).ToString("yyyy-MM-dd")

end if

In this script we are using an interesting .NET feature. The CultureInfo class allows us to determine the locale of the date format. This in turn can be used to convert the dateString from Microsoft Dynamics CRM to the format of any locale. In our specific example we converted a US format date into the format that most of the world uses (in this specific instance, the UK). Additionally, we simply indicated that a blank value would return a standard date in the format that Microsoft Dynamics GP likes.

This script could be used to change any date/datetime field into a format suitable for Microsoft Dynamics CRM or Microsoft Dynamics GP.

Hope this helps you with any date calculation issues you may be trying to solve.

Thanks,
Chris Dew

Want more information on SmartConnect and the features it offers? Please contact sales@eonesolutions.com for more information!

Friday, April 25, 2014

Continued Growth and Changing Seasons at eOne!

With the Fargo snow (finally) melting, we are welcoming the forgotten warmth as the seasons change. Along with the weather we’re also welcoming some new changes as we add yet another eOne member to our team! We are delighted to introduce our newest addition to our Fargo office! 

Meet Naomi Olson:

Naomi joins us as our new AEP manager – focusing on collecting AEP renewals, building relationships and providing stellar customer service to our amazing partners and customers. If you have any questions regarding your software renewals, Naomi is your primary contact at eOne!

Coming from an impressive financial operational support background, Naomi has previously worked with Microsoft and has 13 years of banking experience under her belt. She is passionate about delivering dependability and success to those she interacts with each day. Naomi is excited to learn new things and is excited that her role will ultimately challenge her and fulfill her career expectations!

Outside of the office Naomi is passionate about her family which include her husband and five children. Being active with her family is another passion, including camping, biking, golfing skiing and gardening.

We’re looking forward to the expertise and skill-set Naomi offers our team and we hope you do too! Please join us in welcoming Naomi to the team! Drop her a line at naomi.olson@eonesolutions.com.

Thursday, April 24, 2014

4 Steps to get on board with SmartConnect

One of the questions I seem to get all day, every day is "how do I move forward with SmartConnect?" You've seen a demo at Convergence, from your partner or you attended one of our public demo sessions and know that SmartConnect is the solution for you. Here are the 4 steps you'll want to take to move forward:

Step 1: Get Your Questions Answered
If you still have questions as to whether or not SmartConnect is the best fit for your team, we'd encourage you to reach out to your partner as a starting point. We have AMAZING partners who are highly trained on our products. If you'd like to ask us your questions directly, send 'em our way! Please send your questions and if needed, we can even set up a call to speak with you directly on your project. (Email sales@eonesolutions.com.) And, if you already have your questions answered, skip to step 2! 

Step 2: To Bundle or Not to Bundle
Though you can purchase SmartConnect on it's own, we've also bundled it with SmartView, SmartList Builder, Node Builder and SmartPost, or Extender Enterprise so you can take advantage of a discounted rate.If you need the bundle options, visit our shop page or email sales@eonesolutions.com. You know what to bundle? Skip to step 3!

Step 3: Independent or Outsourced; Have a Plan
Really - you get to choose. If you want to be independent on SmartConnect - build your own integrations, support yourself, train all your users - that's just fine! If you make that choice though, be sure you get training from your Reseller or through eOne. The most successful customers I work with have a plan as to how they want to accomplish their integration project and who's going to do it. So - let us know your plan and we can make recommendations on the services you need. Already have a plan and you're sticking to it? Move on to Step 4!

Step 4: Move forward
If you haven't yet, let your Dynamics reseller know that you'd like to move forward with SmartConnect! They can then get a quote or invoice your way and get you on the road to utilizing SmartConnect. As soon as you pay for SmartConnect, you'll have reg keys available to use! Let us know if you need any help by emailing sales@eonesolutions.com. 

As always, please don't hesitate to reach out to us if you have any questions at all! We are here to help! Email sales@eonesolutions.com for questions on any of the steps above. 

We look forward to working with you and helping your integration project to be a seamless and successful one! 

Tuesday, April 22, 2014

Tech Tuesday: Table Links in Extender

Our Product Specialist, Nicole Albertson, dives deeper into Table Links in Extender for this week's Tech Tuesday below:

Extender includes the option for Table Links. Linking an Extender Window to a table ensures that the Extender Window's data is deleted when the corresponding table record is removed. 

How many tables can you link?
A window can be linked to one or more tables. When it is linked to more than one table, the Extender Window's data will only be deleted when there is not a corresponding record in any of the linked tables. 

How does it work with Work/Open/History?
If you link an Extender Window to a work table and not the corresponding history table, the Extender data will be deleted when the record is posted because the data is removed from the work table during the posting process. The key is to make sure that you link to the table for each Work, Open, and History so that the data doesn't get removed in the posting process.

Example:
If you create an Extender Window on the Item Maintenance window in Microsoft Dynamics GP, you may want to add a Table link to the Item Master. This will trigger Extender to remove the data you have entered in the Extender Window for that specific item when the Item is deleted in GP. So, for example, I have an item called '100XLG' and I have entered data into the Extender window for that item. When I delete '100XLG' from GP, the Extender data will be removed as well with the table link in place. If I don't have the table link, the Extender data would remain even though the item had been deleted.

In Extender 2013, the Table Links can be setup on a window by going to the Options button.



In Extender 10 and 2010, you can access the table links in the setup of the Extender Window by going to the Options menu and selecting Table Links.

Want more Extender information? Please feel free to reach out to us at sales@eonesolutions.com for more!

Monday, April 21, 2014

Changes and New Opportunities at eOne

Many of you will have noticed this week that Lauri is no longer answering the phones when you select renewals on our automated phone system. Lauri finished up with eOne last Friday and has moved on to some new and challenging opportunities. I think in the end collecting endless numbers of $200 payments become too easy with such good resellers – so Lauri has moved to a position where she can use her persuasive and negotiating skills to collect much larger outstanding amounts.

We will miss Lauri’s energy and passion.

For right now please address all emails to renewals@eonesolutions.com rather than directly to Lauri’s personal email account. The phone numbers remain unchanged 888-319-3663 (press 4 for renewals). Our team of Danielle, Alicia and Naomi will be ready to answer all your questions and queries on renewals. You will receive the same fast response times and great service you have been used to.

When one journey stops, new opportunities always emerge. So at eOne we are taking the opportunity to change the way we handle this role of AEP collecting. We will announce more details over the coming weeks – but this role is going to become more of a partner advocate role split across more eOne team members. These advocates will be working with you on both AEP payments, but also on a whole range of other topics like access to support, training needs, marketing activity, etc. This is going to be an exciting change in the way eOne does business that I am very sure will bring many benefits to our resellers.

More details to come as we roll out these changes.

Thursday, April 17, 2014

eOne's 2014 Goals & Successes


Everyone works really hard and sometimes we set goals and strive to hit those goals. Often when we hit those goals and are successful as a group – we turn around the next day and start on the next goal.  I think it is important for small businesses like ours to celebrate their successes. 

Over the past few months eOne has set and reached some goals and I would like to highlight them here. 

1.     Goal to reach 2000 SmartConnect Customers: For some time we have been aiming at reaching the 2000 customer target for SmartConnect. For a product that has existed for only 5 years - It is a great achievement, which we were really excited about, to reach the 2000 customer number in March 2014.  This means that there are 2000 mid-market companies that rely every day on SmartConnect to help run their business. That is a humbling responsibility. 

A massive congratulations goes to our development team Kevin, Ruaan and Sarvanaz for continuing to produce such a high quality product. I also need to highlight Dave, Chris D, Chris H and Lorren who provide all the support and implementation skills that let us sell. And last but certainly not least thanks to Abbey who has made these sales happen.

2.     Goal to sell 80% as much SmartList Builder as Microsoft did:  This goal was something we thought would be a steep one. The great result is that in the first quarter of 2014 we sold MORE SmartList Builders than Microsoft had sold in the same quarter a year before. This is a direct results of having great resellers. The direct responsibility goes to our sales and sales support team on getting the message out there effectively. A huge thanks to Abbey, Danielle, Alicia and Lauri.

3.     Goal to provide our resellers the easiest possible way to make AEP payments and keep track of the eOne modules their customers own: I measure this as a raging success for a few reasons – the first being that since Jan 1st we have processed 3319 module renewals almost seamlessly. There are always a few hiccups but overall it has been a great experience.

I add to this feedback from our resellers that goes like this: “This is the easiest site we work with and we work with 50 different ISV’s” and “Thank you for making such a great site, paying everything online without having to talk to anyone means I save so much time”.

So a huge thanks to Lauri, Bob, Jason, Alicia and SmartConnect for helping us get the new fully integrated processes running on the website.

I was back visiting our Australian office in March when we hit the 2000 SmartConnect customer  - so took the dev team out for a celebratory lunch – that started at 12pm and ended up sometime around 4pm.  It was a good thing that the only way home was public transport! 

We are shortly to have a celebration in our Fargo office – just waiting for the weather to warm up a little!

Tuesday, April 15, 2014

Tech Tuesday: SmartConnect Processing Sequence

Our Director of Professional Services, Lorren Zemke, will be taking you through the SmartConnect processing sequence for this week's Tech Tuesday!

In this article I am continuing my series of discussions on how SmartConnect processes data. Previously I've used examples on summing values and working with line sequence numbers. Today I will diagram the process flow of SmartConnect, using the process of sending data to Microsoft Dynamics GP but the same process is used for all maps.

The basic steps fall into the following categories:
  1. Pre-Map Tasks
  2. Data Read
  3. Transformation
  4. Pre-Document Tasks
  5. Document Send
  6. Post Document Tasks
  7. Post Map Tasks

Pre-Map Tasks 

Pre-Map tasks are executed before the data is read from the data source. This can be document processing tasks such as moving files, running scripts to ask the user for values, running another map and reading data from a SQL table. 

 

Data Read 

Pre-map tasks have finished executing and the data is being read from the data source. 

One specific task within SmartConnect, after the data is read, is called SQL Validation. This task is used to query SQL tables based on data from the data source. The Validation logic can verify if data exists or does not exist allowing the map to stop processing if the logic is not met. 


Transformation
This section of data is processed before it is sent to the destination. All of the column calculations are done at this time and the data is prepped for sending to the destination. In the case of Dynamics GP, SmartConnect is creating the XML file that will eventually be sent to eConnect. In a call to a web service destination, SmartConnect is generating the object needed to make the call and send data to that web service.

Pre-Document Tasks

The tasks created in this section happen immediately before each document is sent to its destination. At this point all data has been retrieved and all calculations with the map have taken place.
Use the tasks in this section for setting global variable data that will need to be used for Post Document or Post Map tasks.

If you are using Global Variables in your map, you can clear them out at this time to get them ready for the next document unless you need them for a Post Document or Post Map Task.

Document Send
SmartConnect creates a connection to the destination and sends a single document.

Post Document Tasks
Once a document has been sent to the destination, based on whether the document was successful will determine which set of Post Document Tasks will execute. Tasks can run if the document was successfully integrated or not. If a task needs to run regardless of whether the document was successful or not, the task needs to be placed.


The Pre-Document Tasks, Document Send and Post Document Tasks will continue to loop based on the value set for the Map Keys on the Data Source section of the map.



Post Map Tasks
After all data has been sent to the destination, SmartConnect determines if the map was successful or not to determine which set of tasks to execute. For all destinations but Dynamics GP it will depend if even one document or task is listed as having failed, the tasks that are part of the failed document section will execute. Only if 100% of the documents are successful will the map success tasks execute.

Happy Integrating!

Interested in learning more about SmartConnect? Reach out to our Sales Team at sales@eonesolutions.com for more information!