Chapter 4. Integration Planning and Design

ERP is in the middle of the ecosystem of business facing applications, and Microsoft Dynamics AX will need to directly or indirectly integrate with other applications. Accuracy and timely update of this information is very important for business success and growth. This chapter is about integration planning, understanding integration technologies, and integration design/development.

In this chapter, the following topics are covered:

  • Integration planning
    • Integration scenarios
    • Integration requirements
  • Integration technologies
    • Application Integration Framework (AIF)
    • Data Import/Export Framework (DIXF)
    • Microsoft .NET Framework
    • Third-party integration solutions
  • Integration design and development
  • Best practices and recommendations

Integration planning

Planning is an important part of any data integration effort. Data integration planning requires identifying integration scenarios and the high-level requirements of integration. This topic covers common integration scenarios and the common questions to be asked for gathering integration requirements.

Integration scenarios

Every project is different. So, integration requirements will vary depending on the scope and the needs of the specific project. However, there are some common areas where most of the businesses have processes that require integration. The following table shows the common integration points and possible scenarios:

Integrations

Possible scenarios

Customers

Customers need to be maintained in the CRM system which needs to be synced with the ERP system.

Sales orders

Integrating web orders with the ERP system that includes delivery notification, invoicing, and payments or with customer systems directly (for example, EDI integration).

Product and inventory (on hand)

Receiving product data from a PLM system. Sending the product-and-inventory-on-hand data to external systems or customers. For example, e-commerce, Amazon, Marketplace, and so on.

Price list

Sending product price list to external systems or customers. For example, e-Commerce, marketplace and so on.

Sales tax

Sales tax integration with sales tax solutions (To calculate the sales tax based on the product, customer, ship to, price, and other relevant parameters).

Purchase orders

Purchase order, including ASN and AP invoice, integration with the vendor systems.

Employee and positions

Receiving employee and reporting relationship from the HR system or sending employee information to the payroll or expense systems.

Chart of accounts and financial dimensions

Sending the chart of account and financial dimension data to other internal systems like the payroll system, expense system, and others.

Exchange rates

Downloading daily exchange rates from exchange rate providers, such as Oanda.

Payment integration with banks

Sending AP payments such as check, ACH, wire, and so on, to the banking systems or automating bank reconciliations.

GL integration

Importing GL journal entries occurring outside of Dynamics AX system such as expense, payroll, loan accounting systems, or other divisions using a different accounting system (acquisitions).

Integration requirements

In a typical integration scenario, the implementation team works with the business users, internal IT, and in some cases, representatives of the applications identified for integration to determine the requirements in detail. The following questions must be answered and documented in order to have a successful integration solution. Often, the answers to these questions are not clear-cut and will require modeling of the different scenarios to develop the best solution. That being said, starting this process early in the project is the key.

Questions

Example values

Effects on design

What type of data needs to be integrated?

Sales orders, purchase orders, and so on

This will help you to determine if you can use any existing document services or need to create a new one.

What kind of integration type will the other applications support?

XML, Web services, flat file, .NET Interop

This will help you to determine the technology to use.

What is the availability of the systems that are being integrated?

What are the requirements of real-time data exchanges?

Asynchronous or synchronous

This will help you to determine the integration technology and configuration requirements.

Is the integration based on the pull model or the push model?

Pull, push, event-driven

This will help you to determine the customization and configuration of the exchange event.

What is the volume of transactions?

Number of transactions (daily, weekly, monthly, yearly)

This will help you to determine the scale of integration, suitable integration technology, and deployment options.

What will be the frequency of data exchange?

Timing per second, minute, hour

This information helps you to determine how to configure the integration solution.

What business rules are associated with the data?

Sequence of events and exception handling

This will help you to determine the customization requirement for the document exchange.

Does the data need to be transformed?

Will the transformations be performed before data is sent or when data is received?

Extent of transformation—field level mapping, value mapping, and flat file to XML or vice versa

This will help you to determine whether AIF value mapping, .NET transformation, or XSLT transformations need to be used.

If integration needs to update Dynamics AX, how will the changes be updated?

Full, incremental

This will help you to determine the configuration or customization requirement on exchange.

Is the external system an in house system or an external trading partner?

Security and encryption requirements

This will help you to determine how the users and security need be configured.

Synchronous or asynchronous

One of the key decisions to be made is whether integration should be real-time (synchronous) or asynchronous. The following table analyses both the messaging approaches and describes the scenarios when one should be selected over the other:

 

Pros

Cons

Good for

Examples

Synchronous

  • Fail-safe communication
  • Error/exception handling
  • Tight coupling between systems
  • Block sender until receiver is finished
  • Network dependency must be available

Transaction processing across multiple systems

Mobile app/ handheld for PO receiving, SO picking, Inventory counting, and so on.

Asynchronous

  • De-coupled systems
  • Does not block sender
  • Network need not be available
  • Messages can be queued
  • Reliability
  • Error/exception handling
  • Publish and subscribe
  • Request reply
  • Conversation
  • GL integration
  • SO/PO Integration
  • Master data integration

Asynchronous messaging architectures have proven to be the best strategy for an enterprise integration because they allow for a loosely-coupled solution that overcomes the limitations of a remote communication, such as latency and unreliability. The issues of reliability and exception handling in asynchronous messaging can be overcome by utilizing request/response and logging features in the Microsoft Dynamics AX AIF Framework.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.188.218.226