Back to the Case Study Home Page...
When a customer requests a Quote from the system, the resulting document produced is an actionable document. If the customer wishes to purchase the order they simply sign the quote and provide payment options. When the Quote is received back, the order entry personnel verify the Quote is complete and then process the Quote to an Order.
When processing the Order it is necessary to transfer all of the information about the Quote from SalesLogix into the MAS 500 back office system as an Order. In addition, because the Order may be for a new customer (one who does not yet exist in MAS 500) the Order creation process must also check to see if a new customer record needs to be created first.
In order to ensure the back office business rules have been met, an additional series of data validations must also occur.
A custom integration was develop to meet this business process. Utilizing Microsoft SQL stored procedures and direct database access, information is transferred from SalesLogix to MAS 500. After this occurs, information is passed back to SalesLogix to update the processed Order with the MAS 500 Order number generated.
This posting will describe the process in transferring Quotes from SalesLogix into MAS 500 as orders.
The Order Entry Screen
As mentioned in this post, the Quote Detail screen has a button that when clicked, will launch the following screen.
This custom screen allows the Order Entry person to verify the Quote is complete and ready to be sent to the back office system. The Shipping Priority, Delivery Method, and Payment Types are all required. Additionally, special instructions can be added at this point. These instructions carry across to the sales order in MAS 500. If Special Instructions are added the order is placed on hold in MAS, until the instructions are reviewed and appropriate actions taken. After reviewing the Order the user may click the "Process Order" button.
Data Validations
Upon clicking the Process Order button, the system reviews the Quote. At this point the Quote and the associated Account(s) and Contact(s) are validated to ensure all required information is present. If any problems are found the user is presented with a dialog of the issue(s). The following items in SalesLogix are validated:
• Billing Account is defined
• Billing Address is defined
• Shipping Account is defined
• Shipping Address is defined
• End User Account is defined
• Shipping Priority is defined
• Delivery Method is defined
• Payment Type is defined. If paying by Invoice, that a PO number exists.
• Quote taxes have been calculated
• Shipping costs have been calculated
• Quote Total is present and correct
• Ship to Account and/or ship to Contact phone numbers are at least 10 digits
• Ship to Account and/or ship to Contact fax numbers are at least 10 digits
• Bill to Account and/or ship to Contact phone numbers are at least 10 digits
• Bill to Account and/or ship to Contact fax numbers are at least 10 digits
• At least one product exists on the Quote
• A Requested Delivery Date is specified for each line item
• No Optional Products are defined
• All Products have been priced
• All Products have a shipment method defined
• All Products have shipping and tax calculated.
• All Products are valid, sellable items.
• All BTO Kits pass validations and contain valid, sellable items.
Process Order screen showing validation errors to the user. If any errors occur the data does not transfer to MAS 500 and the Order is remains in SalesLogix until the issues are corrected.
Transferring Data
After all data validations pass, the system will begin to transfer data from SalesLogix to MAS 500. The integration is a real time link between SalesLogix and MAS 500 in which data from SalesLogix is automatically passed to MAS 500. The following steps are performed during the integration:
- A check is made to determine if the Bill to Account exists in MAS.
- If the Account exists, the SalesLogix and MAS Account records are examined and any values that are different are updated from SalesLogix into MAS 500.
- If the Account does not exist, the Account is added using the data from SalesLogix and the appropriate customer template record corresponding to the Account type in SalesLogix.
- A check is made to see if the Billing Address exists at the Billing Account in MAS.
- If the Address exists, it is compared to the data in SalesLogix. Any differences are updated from SalesLogix to MAS.
- If the Address does not exist, the Address is added to the Billing Account in MAS.
- A check is made to see if the Billing Contact exists at the Billing Account.
- If the Contact exists, it is compared to the data in SalesLogix. Any differences are updated from SalesLogix to MAS.
- If the Address does not exist, the Address is added to the Billing Account in MAS.
- A check is made to see if the Shipping Address exists at the Billing Account in MAS.
- If the Address exists, it is compared to the data in SalesLogix. Any differences are updated from SalesLogix to MAS.
- If the Address does not exist, the Address is added to the Billing Account in MAS.
- A check is made to see if the Shipping Contact exists at the Billing Account.
- If the Contact exists, it is compared to the data in SalesLogix. Any differences are updated from SalesLogix to MAS.
- If the Address does not exist, the Address is added to the Billing Account in MAS.
- The Order is the inserted against the Billing Account in MAS. The order is placed on hold for any of the following three reasons:
- The Quote contains special instructions
- The Quote contains a Trade-in discount
- The Quote has payment terms that are different from the default terms for the Billing Account in MAS.
During each step of this process, a dialog screen alerts the user to the step currently being run. If any errors occur they are returned on the Process Order screen. At the point errors occur the Order in MAS 500 is removed or canceled. The order can then be re-processed after the problems have been corrected.
A detailed workflow of the Order Process Integration. Click for a full size view.
Back to the Case Study Home Page...