Software Information |
|
Microsoft CRM: Data Conversion ? Import from Act!
Best Software Act! is very popular CRM for small and mid-size organization. This system attracts business owner by its low price, plus system is very easy to use. However if your business is growing you should reach the moment to implement more advanced CRM solution. Natural question is ? how do we convert the data from Act! to new CRM solution and the mapping of your objects for conversion. You would probably like to avoid operator data entry with potential numerous errors and mistypes. Assuming that you are IT specialist, we'll give you technical side of Act to MS CRM data migration: ? First you need to download Act! SDK from Best Software website ? Install Act! SDK on the computer, where you plan to do programming ? We'll use asynchronous data export/import model, this means that we'll design the system, containing two parts: export into XML and this XML file import into the CRM ? Lets code Act! data export application, we'll use C# to address Act Framework classes, we'll need these libraries: using Act.Framework; ? To connect to Act! database: ActFramework framework = new ActFramework(); framework.LogOn("Act Username", "password", "SERVER", "Database"); ? Now we need Act field names to map them with the fields in the MS CRM: private void ShowContactsFieldsDescriptions(ActFramework framework) { ContactFieldDescriptor[] cFields = framework.Contacts.GetContactFieldDescriptors(); ContactFieldDescriptor cField; for(int x = 0; x < cFields.Length; x++) { cField = cFields[x]; Console.WriteLine("Table Name: {0}", cField.TableName); Console.WriteLine("Column Name: {0}", cField.ColumnName); Console.WriteLine("Display Name: {0}", cField.DisplayName); Console.WriteLine("ACT Field Type: {0}", cField.ACTFieldType); Console.WriteLine(""); } } ? Let's get contact list and create the file for import instructions to MS CRM: ContactList cList = framework.Contacts.GetContacts(null); FileInfo t = new FileInfo("Contacts.xml"); StreamWriter stw = t.CreateText(); ? Now we form export data: for (int i = 0; i < cList.Count; i++) { string strContactXml = ""; ContactFieldDescriptor cField; Object oValue; // First Name cField = framework.Contacts.GetContactFieldDescriptor("TBL_CONTACT.FIRSTNAME"); oValue = cField.GetValue(cList[i]); if (oValue != null && !(oValue.ToString().Trim().Equals(""))) strContactXml += "[CDATA[" + oValue.ToString() + "]]"; // Last Name cField = framework.Contacts.GetContactFieldDescriptor("TBL_CONTACT.LASTNAME"); oValue = cField.GetValue(cList[i]); if (oValue != null && !(oValue.ToString().Trim().Equals(""))) strContactXml += "[CDATA[" + oValue.ToString() + "]]"; else strContactXml += "" + "N/A" + ""; // Salutation cField = framework.Contacts.GetContactFieldDescriptor("TBL_CONTACT.SALUTATION"); oValue = cField.GetValue(cList[i]); if (oValue != null && !(oValue.ToString().Trim().Equals(""))) strContactXml += "[CDATA[" + oValue.ToString() + "]]"; // Job Title cField = framework.Contacts.GetContactFieldDescriptor("TBL_CONTACT.JOBTITLE"); oValue = cField.GetValue(cList[i]); if (oValue != null && !(oValue.ToString().Trim().Equals(""))) strContactXml += "[CDATA[" + Regex.Replace(oValue.ToString(), "
", " ? This is only portion of the data, that could be transferred into CRM, the whole list of fields is too long for small article, but your could design the whole list of desired fields. Please, pay special attention to replace ? Next is import application creation. We will not describe here connection to MS CRM details ? please read Microsoft CRM SDK if you need this examples. We'll concentrate on the nature of the import. The XML export file should look like this: [CDATA[John]][CDATA[Smith]][CDATA[John]][CDATA[1234 W. Big River]][CDATA[Chicago]][CDATA[IL]][CDATA[123456]][CDATA[Toy Corporation]]{4F1849C3-9184-48B5-BB09-078ED7AB2DAD} ? Reading, parsing and MS CRM object creation look is relatively simple: Microsoft.Crm.Platform.Proxy.BizUser bizUser = new Microsoft.Crm.Platform.Proxy.BizUser(); ICredentials credentials = new NetworkCredential(crmUsername, crmPassword, crmDomain); bizUser.Url = crmDir + "BizUser.srf"; bizUser.Credentials = credentials; Microsoft.Crm.Platform.Proxy.CUserAuth userAuth = bizUser.WhoAmI(); // CRMContact proxy object Microsoft.Crm.Platform.Proxy.CRMContact contact = new Microsoft.Crm.Platform.Proxy.CRMContact (); contact.Credentials = credentials; contact.Url = crmDir + "CRMContact.srf"; CorrectXML("Contacts.xml", userAuth.UserId); StreamReader reader = File.OpenText("Contacts.xml"); string input = null; while ((input = reader.ReadLine()) != null) { string strContactId = contact.Create(userAuth, input); Console.WriteLine("Contact {0} is created", strContactId); log.Debug("Contact " + strContactId + " is created"); } ? Just consider in more details CorrectXML function ? it places OwnerId into XML contact tree: private void CorrectXML(string fileName, string userId) { File.Move(fileName, fileName + ".old"); StreamReader reader = File.OpenText(fileName + ".old"); FileInfo t = new FileInfo(fileName); StreamWriter writer = t.CreateText(); string input = null; while ((input = reader.ReadLine()) != null) { input = Regex.Replace(input, "{_REPLACE_ME_}", userId); writer.WriteLine(input); } reader.Close(); writer.Close(); File.Delete(fileName + ".old"); } ? Finally, we are launching export, import, opening MS CRM and looking at the contact list, transferred from Act! ? Separate task would be Sales data from Act!, Notes etc. ? we plan to describe them in the future articles Good luck with integration! If you want us to do the job - give us a call 1-630-961-5918 or 1-866-528-0577! [email protected] Andrew Karasev is Lead Software Developer in Alba Spectrum Technologies ? USA nationwide Great Plains, Microsoft CRM customization company, serving clients in Chicago, Houston, Atlanta, Phoenix, New York, Los Angeles, San Francisco, San Diego, Miami, Denver, UK, Australia, Canada, Europe and having locations in multiple states and internationally ( http://www.albaspectrum.com )
|
RELATED ARTICLES
Did You Ever Want to Completely Erase Everything on Your Computer? Did you ever want to erase everything on your computer? This is a program I found that does that for you quickly and easily. Antivirus Software ? Get The Bugs Before They Get You! You turn on your computer, and it doesn't look quite right. Maybe your icons have changed, or the background picture is wrong. Some options are disabled. Even worse, you may not be able to boot your computer up at all. Guess what ? it's probably got a virus. Microsoft Great Plains Partner Selection: Overview Microsoft Great Plains, Navision, Solomon and Axapta are Microsoft Business Solutions ERP applications, serving to the whole spectrum of vertical and horizontal markets. Assuming that you already have one of these systems installed and implemented we would like to give you - IT director, Database Administrator, Programmer, Software Developer, Controller your options in supporting/upgrading Microsoft Great Plains for your company The Hidden Power of Online Manual Writing software manuals is boring, isn't it? We often think: "My software is easy to use. The user interface is intuitive. Why should I waste so much time for writing the document which nobody reads anyway?" Sometimes it's true ? I've never read the WinZip or Internet Explorer manuals ? everything seems clear without explanations. Nevertheless, even if your manual doesn't help to your software users, it may help to you. Publish your manual online and turn its hidden power into the real benefits for your business. Online Manual Makes Your Web Site Visible User manual is a huge bunch of words, the highly targeted words, which are specific for your software market. For instance, if you develop a database management system, its user guide will certainly contain such words as "database", "query", "transaction", "table", "record", and etc. On the other hand, people use these words in their queries when they are looking for a database management solution on the Google, Yahoo, or other search engine. Let the interested people to find your web site and your product. Upload your manual on your web server and make it available for indexing by search engine spiders. This area specific content will make your web site and your software more visible to potential customers. Making the user guide available online will increase your web site rank in relevant search results and will bring highly targeted traffic to web your site. Let the manual to work not only for your users, but for you as well. Online Manual Saves Your Time A picture worth a hundred words. Those who are engaged in user support know this for sure. When replying to user concerns, very often we have to write sentences like this "Open the Document settings dialog. Choose the External modules tab. Select the 'ABC Spell Checker' in the module list. Enter your registration key and verification code in the corresponding text fields which will appear at the bottom of the window. Then, press Activate". If your application is simple the user will likely understand you right and will do everything as you have explained. However, if your application is a complex system with lots of setting windows which behave differently in various modes, the user may be puzzled which window and which fields do you mean. In this case you risk getting into a long conversation by repeatedly explaining the same things again and again. The screenshot could be a very helpful illustration of your explanations. You may run your application, go to the certain window, open that tab page, activate the corresponding item in the list. Then make the screenshot of the window by using Alt+PrtSc key combination or another screen capture tool, save the picture in a file, and finally attach it to your message. Sometimes it's also necessary to add callouts, annotations and other enlightenments to the screenshot picture. Thus, you have to launch your image editor and to manually draw all the elements required. As you see, it may takes up to a half hour to reply to a single message only. And how many messages are yet in the queue? Having the screenshots prepared is a good approach which may save your time. But having screenshots already prepared together with callouts, explanations, and annotations is a great approach which will save you much more time. Most likely, you have all that stuff prepared in your software manual but it's not very polite to reply to the user: "Read that fantastic manual". User may have no idea where the manual is on the PC and on what page is the looked-for solution located. On the other hand, you may also have no time to manually cut particular pages with screenshots and related instructions from the manual and to attach them to each support message. The solution is easy. Put your manual on your web site in the form of HTML pages. Make all the pictures, screenshots with callouts, descriptions, and instructions accessible for every user. When you are processing another support request, simply insert an URL link to the appropriate page of your online manual and add just a few clarification words ? more words and pictures are already on that page. You will save much time and nerves because you will be sure that the user is looking at the same thing which you are describing. At the same time, the user will get a fast solution which is supported by clear pictures and neat instructions. Online Manual Makes Your Products Trustworthy Besides the users get the faster and more helpful support, they also see that you did this tedious job ? writing the handy and well structured manual with great screenshots and clear explanations. They know that this job is boring and developers don't like to do it. Therefore, if you did it and if you did it perfectly, it means that you respect your customers, not only their money. Good manual means that you consider your business and product seriously yourself. This helps your business to look more credible and serious. So, make your manual available online and prove your respect to your existing and prospective users. Make them trusting in you and in your product before they even download a demo copy of it. Online Manual Brings Sales As we see, the software manual which is a part of your web site generates a targeted traffic. The people may easily find your product because online help makes your web site more visible in relevant search results on the search engines. Those new visitors get more loyal when they see a well done help system. Also, if a prospect experiences difficulties with your software and asks for technical support, you may easily resolve the issue by referring the user to a certain page of your online help. With just a one click the user will see screenshots and explanations which will help them to settle the case. So, you have a motivated and targeted visitor, who feels loyal to your company and products, and whom you can easily help in case of a technical problem. The probability of such visitor ordering a license is several times higher than of the average one. Separate Anti-Keylogging Protection: Who Needs it Most? If there still are few unprotected computers left, I haven't seen any. Every emerging threat causes means of defense to appear. Anti-viruses and firewalls were the first. Now most computers have also an anti-spy program installed. More and more often experts say that some computers need autonomous anti-keylogging protection as well. Artificial Intelligence And Intuition The intuitive algorithm. Great Plains Dexterity Programming ? Overview For Developer Looks like Microsoft Great Plains becomes more and more popular, partly because of Microsoft muscles behind it. Now it is targeted to the whole spectrum of horizontal and vertical market clientele. Small companies use Small Business Manager (which is based on the same technology ? Great Plains Dexterity dictionary and runtime), Great Plains Standard on MSDE is for small to midsize clients, and then Great Plains serves the rest of the market up to big corporations. Off The Record - Tips For Picking Recording Software Need software to record your voice, streaming audio or musical instruments? There are dozens of great products on the market. Some cost up to five hundred dollars, but here are some of the low cost alternatives you might want to consider. Microsoft Great Plains 8.0 Brazilian Version ? Overview For International Consultant Microsoft Great Plains has substantial mid-market share in the USA plus due to the marketing efforts of former Great Plains Software (now part of Microsoft Business Solutions) in Spanish Speaking South America, South Africa, United Kingdom, Middle East, Poland ? we see strong position of Microsoft Great Plains in these regions (on these markets MBS promotes two mid-market ERP: Great Plains and Navision). New SQL Delta Version 3.1 COMMAND LINE FUNCTION Screenplay and Script Writing Software When it comes to screenplay software each screenwriter needs to determine what they need from the program they purchase and pick one that fits their specific needs. Screenwriting software doesn't write the screenplay for you. Why do I say this? I don't want you to be under the impression one software application is "better" or the "best" script writing software. No script writing software should be chosen based on it helping you complete your screenplay "better" or "faster" than another. Begun, The Browser Wars Have As Mozilla Firefox nears 10% market share, with well over 25 million downloads direct from the makers website, and goodness knows how many through other sources, Microsoft announces that it will be releasing IE 7 ahead of schedule. Originally scheduled for release with Microsoft's new Longhorn operating system in 2006, it seems that Microsoft are reacting to the run away success that Firefox has had over the last few months. But is Microsoft's announcement just a response to Firefox's success, or is it truly a commitment by the software giant to improve the browsing experience of the masses? Microsoft CRM Conversation Gateway: VoIP - Implementation & Customization Microsoft CRM is winning market share step-by-step from such the traditional CRM providers as Siebel, Saleslogix. In this article we'll show Microsoft Business Solutions CRM potential in the VoIP direction. Nowadays VOIP-based technologies and Instant Messaging Systems are getting wider and wider spread. Each work desk or each personal computer has one or another instrument of information exchange, belonging to the VOIP or instant messaging systems. Currently the mostly presented information exchange systems are: MSN Messenger Is A Sweet Way To Communicate MSN messenger is a pretty cool invention. I mean I'm not really into serious discussions on the email, answers to questions can often take a few days to arrive because people are so busy these days. I've just been 'hooked up' into Messenger and it's really a different kind of communication, quick, simplistic and even humorous with the capability to express your feelings with 'emotion' cartoons. International Support - Microsoft Great Plains VAR/Partner Selection ? Overview for V.P. IT Looks like Microsoft Great Plains becomes more and more popular, partly because of Microsoft muscles behind it. It seems to be goof solution for mid-size and even large multinational corporation with Headquarters in US and branches Worldwide. You, as V.P. IT can deploy the strategy, when you host your Great Plains in headquarter and have international offices connect via remote support. Or, you can have regional offices work of their own Great Plains installations and then consolidate information via FRx or other reporting tools Microsoft CRM: Data Conversion ? Import from Act! Best Software Act! is very popular CRM for small and mid-size organization. This system attracts business owner by its low price, plus system is very easy to use. However if your business is growing you should reach the moment to implement more advanced CRM solution. Natural question is ? how do we convert the data from Act! to new CRM solution and the mapping of your objects for conversion. You would probably like to avoid operator data entry with potential numerous errors and mistypes. Assuming that you are IT specialist, we'll give you technical side of Act to MS CRM data migration: Crystal Reports For Microsoft RMS ? Overview For Developer/Report Designer If you are software developer or database administrator - we would like to give you the clues on Crystal Report creation for Microsoft RMS MicroWorld Releases New Version of MailScan Ver. 4.5 - Antivirus and Content Security Software MicroWorld Technologies, Inc. the leading solutions provider in the area of Anti-virus and Content security, has announced the launch of its new version of MailScan Ver. 4.5, the antivirus and content security software for mail servers. Microsoft eCommerce Web-development: Great Plains eConnect .Net ? Highlights for Programmer In our small article we'll consider Microsoft Business Solutions Great Plains Sales Order Processing module as eCommerce backend. Plus we'll cover what is possible and impossible in eConnect and why. Microsoft Great Plains is one of the most popular ERP in the US, Canada, Australia, New Zealand, Middle East, Latin America, UK and South Africa. Due to the MBS strategy ? Great Plains Dynamics was pulled from other markets, such as continental Europe (Germany, France, Russia) ? where Navision and Axapta are the promoted and recommended solutions. If you have Navision or Axapta ? please read our publications on these products on Alba Spectrum Technologies publication site. Algebra Help Software Need help making sense of algebra? Have algebra lectures in your classroom left you scratching your head and wondering: "How on earth did they get that answer"? Do not despair, because help is at hand. AlgebraSolver from Softmath can make all the pieces of the algebra puzzle fall into place, improving your grasp of the subject with step-by-step problem solving that demonstrates exactly how a solution has been reached. |
home | site map |
© 2005 |