Saturday, October 25, 2008

Microsoft Great Plains Integration with Legacy Systems

Microsoft Great Plains Integration with Legacy Systems


If you are developer who is asked: how do we implement Great Plains integration/interface with your legacy or other system – read this and you will have the clues on where to look further.

1. Great Plains Integration Manager - this is rather end-user tool - it is very intuitive, it validates 100% of business logic, brings in/updates master records (accounts, employees, customers, vendors. etc.) brings in transactions into work tables. The limitation of Integration Manager - it does use GP windows behind the scenes without showing them - so it is relatively slow - you can bring 100 records - but when you are talking about thousands - it is not a good option. By the way you can program Integration Manager with VBA.

2. eConnect – it is type of Software Development Kit with samples in VB.Net. Obviously the development environment should be Visual Studio.Net. eConnect will allow you to integrate master records - such as new customers, vendors, employees, etc., plus you can bring transactions into so called Great Plains work tables (eConnect doesn't allow you to bring open or historical records - you need to post work records in Great Plains, the same limitation applies to Integration Manager above) eConnect is rather for ongoing integration. It was initially created for eCommerce application integration to Great Plains.

3. SQL Stored Procedures. Obviously you have unlimited control and possibilities with SQL queries. You need to know Great Plains tables structure and data flow. Launch Great Plains and go to Tools->Resource Description->Tables. Find the table in the proper series. If you are looking for the customers – it should be RM00101 – customer master file. If you need historical Sales Order Processing documents – they are in SOP30200 – Sales History Header file, etc. Do not change existing tables - do not create new fields, etc. Also you need to realize that each GP table has DEX_ROW_ID - identity column. Sometimes it is good idea to use inbound/outbound XML in the parameters - then you can deploy web service as a middle party between two systems.

4. Data Transformation Services (DTS) – Good tool for importing your third party data into staging tables in GP - then you can pull them in using either stored procs of Integration Manager. You can also deploy this tool for EDI export/import.

5. Great Plains Dexterity Custom Screens. Sometimes users prefer to have seamlessly integrated into GP interface custom screens - for parameters settings and initiating integration. Dexterity is a good option, however remember - it is always better to create new custom screen versus customizing existing one - due to the future upgrade issues. Also - Dexterity is in phasing our by Microsoft Business Solutions.

6. Modifier/VBA custom buttons on the existing screens - alternative to Dexterity is you are comfortable with VBA and ADO.

7. MS Access – if you are doing one time conversion and your legacy has old ODBC compliant platform - you can use MS Access to create linked tables there - or import into MS Access.

8. SQL Linked Servers – you can do direct SQL queries to other ODBC compliant platform via SQL Linked Server (including ORACLE, UNIDATA, Pervasive SQL, Ctree, etc) - you may need to familiarize yourself with OPENROWSET command in Transact SQL. This is also good option if you need cross-platform Crystal Report - pulling data from SQL Server and third party databases on the same report.

9. Warning - do not place existing GP tables into Replication! - you will have upgrade issues.

By Andrew Karasev

Regards,
--
Mohammad R. Daoud
MCP, MCBMSP, MCTS, MCBMSS
Software Development Manager
+962 - 79 - 999 65 85
Dynamics Innovations
daoudm@dynamicsinnovations.com
http://www.dynamicsinnovations.com/

2 comments:

James said...

Good overview of the integration possibities. If I have an online application, does GP have the ability to receive TCP/IP connections for either batch or asyncronous updates

Mohammad Daoud said...

It could be applied, but not through GP itself, you may need to create a middle tier application that gets the data and store it on the local network, if you could post your situation my answer will be more specific.

Related Posts:

Related Posts with Thumbnails