Prophet 21 - Epicor Customer Web Site
Transcription
Prophet 21 - Epicor Customer Web Site
Microsoft Outlook Integration version 12.14 Microsoft Outlook Integration Disclaimer This document is for informational purposes only and is subject to change without notice. This document and its contents, including the viewpoints, dates and functional content expressed herein are believed to be accurate as of its date of publication. However, Epicor Software Corporation makes no guarantee, representations or warranties with regard to the enclosed information and specifically disclaims any applicable implied warranties, such as fitness for a particular purpose, merchantability, satisfactory quality or reasonable skill and care. As each user of Epicor software is likely to be unique in their requirements in the use of such software and their business processes, users of this document are always advised to discuss the content of this document with their Epicor account manager. All information contained herein is subject to change without notice and changes to this document since printing and other important information about the software product are made or published in release notes, and you are urged to obtain the current release notes for the software product. We welcome user comments and reserve the right to revise this publication and/or make improvements or changes to the products or programs described in this publication at any time, without notice. The usage of any Epicor software shall be pursuant to an Epicor end user license agreement and the performance of any consulting services by Epicor personnel shall be pursuant to Epicor's standard services terms and conditions. Usage of the solution(s) described in this document with other Epicor software or third party products may require the purchase of licenses for such other products. Where any software is expressed to be compliant with local laws or requirements in this document, such compliance is not a warranty and is based solely on Epicor's current understanding of such laws and requirements. All laws and requirements are subject to varying interpretations as well as to change and accordingly Epicor cannot guarantee that the software will be compliant and up to date with such changes. All statements of platform and product compatibility in this document shall be considered individually in relation to the products referred to in the relevant statement, i.e., where any Epicor software is stated to be compatible with one product and also stated to be compatible with another product, it should not be interpreted that such Epicor software is compatible with both of the products running at the same time on the same platform or environment. Additionally platform or product compatibility may require the application of Epicor or third-party updates, patches and/or service packs and Epicor has no responsibility for compatibility issues which may be caused by updates, patches and/or service packs released by third parties after the date of publication of this document. Epicor® is a registered trademark and/or trademark of Epicor Software Corporation in the United States, certain other countries and/or the EU. All other trademarks mentioned are the property of their respective owners. Copyright © Epicor Software Corporation 2014. All rights reserved. No part of this publication may be reproduced in any form without the prior written consent of Epicor Software Corporation. -i- Microsoft Outlook Integration Table of Contents 1 What's New in Version 12.14 1 2 Introduction 2 3 Email Integration 4 Concepts 5 Linking Emails 5 Walkthroughs 6 Copying Emails You Received or Sent to Prophet 21 6 Creating E-Mail Blasts in Prophet 21 8 System Setup 11 Installing Prophet 21 Email Capture for Outlook 4 Task Integration 11 15 Concepts 16 Server Jobs and Sharing Flags 16 Walkthroughs 17 Setting a Prophet 21 Task to Synch with Outlook 17 Setting an Outlook Task to Synch with Prophet 21 19 Viewing Synch Timestamps 20 Setup 22 Software Requirements 22 Exchange Server Setup 22 Establishing System Settings 24 Activate the Feature 24 Enter Activity Types 24 Set Sharing Flags 25 Determine Task Detail 26 Create Server Job Account 27 Integration DLL Paths 28 Establishing User Settings 29 Prophet 21 29 E-Mail Client 29 Prophet 21 Database Server Setup 31 Enable Exchange Web Service 31 Create an Integration Account 31 Gather File Locations 31 - ii - Microsoft Outlook Integration Run Scripts 31 Manual Database Server Setup 32 Testing Server Communication 33 Customizing the Server Job 34 5 Calendar Integration 37 Concepts 38 Walkthroughs 39 Setting Outlook Calendar Events to Synch with Prophet 21 Setup 39 40 6 Contact Integration 41 How it Works 42 Walkthroughs 43 Copying Prophet 21 Contacts to Outlook 43 Retrieving Contact Copy Criteria 49 Setup 50 Scheduling Regular Contact Synchronization 50 Sample Files 58 7 Troubleshooting 59 - iii - 1 What's New in Version 12.14 Microsoft Outlook Integration 1 What's New in Version 12.14 You can now choose to import Prophet 21 tasks into Outlook as Outlook tasks, or as calendar appointments. See Assign as Task or Appointment on page 18 for more. -1- 2 Introduction Microsoft Outlook Integration 2 Introduction Microsoft Outlook Integration provides communication between Prophet 21 and Microsoft Outlook, allowing the two applications to share email information. There are two distinct sets of functionality contained within this manual. The only thing they share is an integration between Microsoft Outlook and Prophet 21. Other than that they work differently, have different setup requirements, and can be activated independently of one another. Email to Task Integration This feature converts emails composed and received in Microsoft Outlook into completed tasks stored in Prophet 21, with the body of the email saved in the task description. This sharing passes vital information contained in email correspondences to the people who need it, and stores it in your business system, proving easy access to it later without the need to move to another application. This transfer of information also lets you use customer and contact information in Prophet 21 to compose email blasts, which can then also be saved as tasks. Note: To synch tasks and calendars and to export your Prophet 21 contact lists to between Prophet 21 and your email client through an Exchange Server, you need to run the Microsoft Exchange Server Integration application. Task to Task Integration This feature converts tasks create in one application and translates and transmits them to the other. Moving from Prophet 21 to Outlook, this gives the user another area from which he can access his task list, especially if he's in a position to check email but not log into Prophet 21. Moving in the other direction, this integration allows tasks that have been recorded in Outlook, perhaps when Prophet 21 was unavailable, to still attach to the user's record in Prophet 21 where it can be tracked. In short, this two way communication prevents people from having two different task lists that they need two separate applications to manage. Note: Although you can use an email client other than Microsoft Outlook with your Exchange Server Task to Task integration, the instructions and examples in this manual reflect Microsoft Outlook. Calendar to Task Integration -2- 2 Introduction Microsoft Outlook Integration A sub-set of this functionality is the transmission of Outlook calendar events to Prophet 21, where they are stored as tasks. Unlike task to task integration, however, Prophet 21 tasks created from Outlook calendar events are all historical, closed tasks. Also note that this communication is one way; the calendar sends information to Prophet 21, but Prophet 21 cannot transmit tasks to the calendar. Contact Sharing The other sub-set of this integration is a one way export of Prophet 21 contacts to your Outlook contact list, eliminating the need to manually enter this information. -3- 3 Email Integration Microsoft Outlook Integration 3 Email Integration Email integration allows you to store emails composed in Outlook and Exchange as tasks stored in customer and contact records in Prophet 21. Text from the email body copies into the task description; this way you can give everyone access to important information that usually only exists in private emails. This feature also allows you to create mailing lists for email blasts in Prophet 21 and includes the ability to create templates using the mail merge functionality in Microsoft Word for more effective marketing campaigns for customers and prospects. Note: Email Integration is not available for ASP (hosted) customers because there is no direct visibility to the Prophet 21 database. -4- 3 Email Integration Microsoft Outlook Integration Concepts The following segments explain the business logic and internal processes Prophet 21 uses. While none of these sections will tell you how to perform tasks, they will deepen your understanding of system behavior. Linking Emails Saving emails as tasks in Prophet 21 is a mostly automated process that occurs behind the scenes. You can use it to convert emails you receive, as well as those you send. Received Mail This feature adds a button to the standard toolbar in Outlook. To share the email with other Prophet 21 users, you click it. Doing this kicks off a process that combs through Prophet 21 records in search of records that have the same email address as the sender. When it finds such a match, it copies the email as a completed task, assigns it an activity type you define, and attaches it to the record. There are several places the system looks, shown below. Match On: Result: Prophet 21 User Display task in Task Fast Edit Contact Display task in Task History tab in Contact Inquiry Customer Display task in Task History tab in Customer Master Inquiry If no such records exist, you must create the appropriate contact information for the email address and run the linking process again. To help you remember this, the process automatically creates a reminder task and assigns it to you whenever it finds no match in its search. Note: The system checks for duplicate emails (with the same From, To, Date, Time and Subject information) and does not create links for them. Sent Mail The process of converting mail you compose is virtually the same as converting received mail. Click a button, a different one from the one for received mail, and the process combs through Prophet 21 looking for matching email addresses, this time trying to match on the recipient's address instead of the sender's. -5- 3 Email Integration Microsoft Outlook Integration Walkthroughs This section shows you how to accomplish tasks, and provides explanations of the various areas of the system involved. Copying Emails You Received or Sent to Prophet 21 Copy emails in your Outlook Inbox or Sent Items folder to Prophet 21 by highlighting them and clicking the Link to Prophet 21 button. A message displays while the email is being transferred and saved. View the tasks created from the copied email in the Task History tab. -6- 3 Email Integration Microsoft Outlook Integration If you double-click anywhere but in the Comments column, you can view the detail of the task created for the email. If you double click on the Comments section on the list of tasks in Task History, you can view the body of the email. -7- 3 Email Integration Microsoft Outlook Integration Creating E-Mail Blasts in Prophet 21 Navigation Path: CRM > CRM > Maintenance > Contact Fast Edit While you cannot compose email in Prophet 21, this integration point with Outlook allows you to organize and select your contact information stored within, and export the resulting list of email addresses for use in creating an email blast. Run a Query The first step in generating your recipient list is to query your system for appropriate customers and contacts. Run this like any other query. Fields that may be particularly appropriate for use as filters in this process include: l l l l l l l l l Contact Mailing List ID Custom Column Name Customer Column Value Customer Type Opportunity ID Opportunity Name Opportunity Description Opportunity Type Opportunity Size -8- 3 Email Integration l l l l l l l Microsoft Outlook Integration Opportunity Stage Territory ID Territory Name Vendor ID Vendor Class 1 - 5 Supplier ID Supplier Name Select Recipients Once you have your query results, open the Customer Email Blast tab. As with many others, you are free to select what information appears here for each retrieved record, but make sure you include the Selected check box. Review the results and make sure the Selected check box is checked for each customer and contact you want to include in the blast. Save the List (Optional) Once you have selected your recipients you can use a right mouse button command to create a mailing list from the contacts. This command summons a popup window. Use it assign a description to the list so you can recall it later. -9- 3 Email Integration Microsoft Outlook Integration Create Blast Regardless of whether you save the mailing list for future use, you can use a right mouse button command to create an email for the email blast. When you select this command, Microsoft Word opens with a mail merge template. You can compose the message using the Mail Merge functionality available in Word, including the ability to use tokens from the fields you selected in the Contact Fast Edit Query to personalize the email. You can attach documents to the emails. You can select a mail merge document to use or choose Cancel to create a new mail merge document. You can save the email as a mail merge template in Word for later use. Note: Remember that you can also use the Link to Prophet 21 from Outlook functionality described earlier to link the emails (and responses to emails) to contacts and customers. - 10 - Microsoft Outlook Integration System Setup To use Microsoft Outlook Integration, you must first download and install the Prophet 21 Email Capture for Outlook program on each PC you want to provide the ability to link emails. In addition, you must complete the system setup described in this chapter. Installing Prophet 21 Email Capture for Outlook The Prophet 21 Email Capture for Outlook program must be installed on PCs that you want to link emails from. There is a version for Outlook 2003, Outlook 2007, Outlook 2010, and Outlook 2013. The following is an example of the installation for Outlook 2003, but the process is the same for Outlook 2007. The installation for Outlook 2010 and Outlook 2013 uses a different process. Use these instructions for installing the Email Capture for Outlook program, available from the Upgrade Center in the Epicor Customer Website. 1. Close Outlook on the PC on which you are doing the installation. 2. Run the setup.exe for the program. A window similar to the following displays: 3. Click Install. A setup wizard displays: - 11 - Microsoft Outlook Integration 4. Click Next. A window to select the file location for the installation folder displays: 5. Click Next. A window to confirm the installation displays. - 12 - Microsoft Outlook Integration 6. Click Next and the installation begins. You are notified when the installation is complete. - 13 - Microsoft Outlook Integration 7. Click Close to close the installation wizard. 8. Restart Outlook. A new button, Link to P21, displays on the Standard tool bar when you are in your Inbox or Sent Items in Outlook. A Send + Link to P21 button displays when you are creating a new email. Clicking this button both sends the email, and links it to Prophet 21. The first time you click the button to link an email, the system prompts you to enter a Prophet 21 profile, as it does when you first log into Prophet 21. To change the selected profile, log out of Outlook and back in again. - 14 - 4 Task Integration Microsoft Outlook Integration 4 Task Integration Task integration means that tasks created in one application can copy to the other. In addition, this sharing is an ongoing process, meaning that if you later change the details of a task in one place, those changes will also update the record in the other application. Sharing this data means less duplicate data entry to track the same information, and active sharing ensures these shared records remain accurate. Note: Although you can use an email client other than Microsoft Outlook with your Exchange Server integration, the instructions and examples in this chapter reflect Microsoft Outlook. - 15 - 4 Task Integration Microsoft Outlook Integration Concepts The following segments explain the business logic and internal processes Prophet 21 uses. While none of these sections will tell you how to perform tasks, they will deepen your understanding of system behavior. Server Jobs and Sharing Flags When you create a task in Prophet 21, you can set it to share this information with Exchange. Similarly, tasks in your email client can be set to share with Prophet 21. The integration of Prophet 21 and Exchange tasks sets up a server job that combs both systems at regular increments. When it does, it looks for tasks set to share, pulls them from one application and copies them to the other, creating new records for those that don't exist in both places, and updating the information for those that have changed between copy periods. Important! This copy procedure favors Prophet 21. This is important to remember when considering that changes made to a task only copy to the other application when the server job next runs. Therefore, if a task is edited both in your email client and Prophet 21 between updates, the changes made in Prophet 21 supercede those made in email client. If at any point you choose to stop sharing information between the two applications for a particular task, it remains in place in both systems, but the server job no longer copies information from one system to the other. - 16 - 4 Task Integration Microsoft Outlook Integration Walkthroughs This section shows you how to accomplish tasks, and provides explanations of the various areas of the system involved. Setting a Prophet 21 Task to Synch with Outlook To set a Prophet 21 task to synch with outlook, you must activate a check box called Synch to Outlook. You can toggle this setting in two places in the system; changes to one area copy to the other. Important! If you disable the Outlook synch for a task that was originally synched, the task remains in Outlook but no longer receives updates from Prophet 21. This means that unless you manually adjust the record in both places they will cease to match one another, leading to data discrepancies. Set for One Task If you want to adjust the synch setting for a single task, you can do so in either the Edit Task window (for existing tasks) or the Schedule Task window (for tasks you are creating new). These windows contains a Synch to Outlook check box. Set for Multiple Tasks - 17 - 4 Task Integration Microsoft Outlook Integration Navigation Path: Setup > CRM > Maintenance > Contact Fast Edit > Task Creation Tab You can change the synch settings for whole batches of tasks in the Task Creation tab in Contact Fast Edit. Here, make sure you select the Synch to Outlook setting to display on the tab when you first open it. Prophet 21 applies the changes to this setting when you save the window. Assign as Task or Appointment Each Prophet 21 task synched with Outlook can carry over as a task or as a calendar appointment. Determine which on a case-by-case basis by making the appropriate menu selection. - 18 - 4 Task Integration Microsoft Outlook Integration Secondary Assignees on Tasks Prophet 21 can assign a single task to multiple people, with one person as the primary and an unlimited number of auxiliary assignees. Outlook tasks are structured to be individual assignments, not shared with anyone else. Therefore, tasks created in Prophet 21 that you wish to synch to Outlook have auxiliary assignees, but they will only synch to the primary assignee's Outlook account; there will be no copies made for anyone on the task as an auxiliary. Multiple Assignees on Appointments When you save a Prophet 21 task as an appointment in Outlook, you can create the appointment for multiple people. Anyone you add to the Assigned To tab receives the task as an appointment in their Outlook calendar. Note: This only works when saving Prophet 21 tasks to the Outlook calendar. It does not apply when synching Outlook calendar events to Prophet 21. Modifying Task Contacts If you assign contacts to a task in Prophet 21 and subsequently change them in Outlook, the Prophet 21 task retains the original contacts (marked as deleted) plus the new contacts.A contact must have an email address entered in the Phone/Email tab in Contact Maintenance in order for it to successfully copy between the applications. Setting an Outlook Task to Synch with Prophet 21 To share a task created in Outlook with Prophet 21, set the Outlook label to the appropriate type to flag it as a hard touch or non-hard touch item. See Set Sharing Flags on page 25 for more information on assigning Outlook labels as application sharing flags. To do this, open the Schedule pane and select the New option. This brings up the New Job Schedule window. - 19 - 4 Task Integration Microsoft Outlook Integration Make all your scheduling adjustments here, then click OK to save the changes. Viewing Synch Timestamps Navigation Path: Setup > CRM > Maintenance > Task Fast Edit > General Tab You can review the last time Prophet 21 synched a task with Outlook in the General tab of Task Fast Edit. Here, the Date Last Synched column displays the timestamp of when the last data transfer occurred. - 20 - 4 Task Integration Microsoft Outlook Integration - 21 - 4 Task Integration Microsoft Outlook Integration Setup Prior to synching tasks, contacts, and your calendar through your sites Microsoft Exchange Server to your email client, you must complete the setup procedures described in this chapter. Setup is required on the Exchange Server, on the Prophet 21 database server, and within the Prophet 21 system settings and user settings. After you complete the setup, test the communication with the server before synching information to or from Prophet 21 to your email client. Software Requirements Before setting up Microsoft Exchange Server Integration, ensure that the following software is installed in the appropriate location and the appropriate access rights are assigned. Note: Please make sure you have the correct version based on your operating system (32bit vs 64bit). On the Exchange server: l l Microsoft Exchange Server 2007 SP2 From http://www.microsoft.com/downloads, search for "Exchange Server 2007 SP2." Ensure that you have the security rights that allow you to access the command line shell for Exchange. Having Windows shell access is not enough. If you do not have the appropriate access, someone, such as a system administrator who does have access can complete the setup requirements on the Exchange server for you. On the Prophet 21 database server: l l l l l SQL Server 2005 or higher Exchange Web Services Managed API From http://www. microsoft.com/downloads, search for "EWS Managed API." Microsoft .NET Framework 2.0 Microsoft .NET Framework 3.5 Web access is up and running On the client PCs: l l Microsoft Office 2007 is recommended, however, any email client capable of creating categories and synching with Exchange should work. The client must be able to communicate with the Exchange server. Exchange Server Setup - 22 - 4 Task Integration Microsoft Outlook Integration To establish the connection between your Exchange server and Prophet 21, you must create a user profile on the Exchange server that has impersonation permissions. Impersonation permissions enable Prophet 21 to impersonate a given user account and to perform operations by using the permissions associated with the impersonated account. Important! Impersonation permissions allow anyone who knows the password to the email account to send emails that appear to come from someone else on the system. Note: This integration is available for Microsoft Exchange 2007, 2010, and 2013. The setup procedure is the same regardless of version, but you must make sure all files and setting match the version of Exchange you are using. In the instructions below, X is the version of Exchange you are running. Setting up impersonation permissions requires an Exchange administrator to run one or more procedures documented in the following article through the Exchange shell console: 1. From http://msdn.microsoft.com/en-us/library, search for "impersonation ews X". 2. Click the Configuring Exchange Impersonation link to display the Configuring Exchange Impersonation page. 3. From the Other Versions list at the top of the page, select Exchange Server X. You can also find the page by manually typing the following link in your web browser's address field: http://msdn.microsoft.com/en-us/library/bb204095%28EXCHG.80%29.aspx Follow the procedure that best fits your Exchange server setup. Ensure that the email account you are using for impersonation is for a user that is not in a message group that does not allow impersonation by default. - 23 - 4 Task Integration Microsoft Outlook Integration Establishing System Settings Navigation Path: Setup > System Setup > System > System Settings > CRM > Exchange Integration There are a number of system settings that control the default behavior of Prophet 21 in its task sharing with Outlook. They are all located under the path shown above. Activate the Feature Enable the master setting. Enter Activity Types All Prophet 21 tasks have an activity type. This is a general category of action that you assign to the task for organizational purposes, and can be anything that fits your business needs since activity types are user-defined. When integrating tasks with Outlook, Prophet 21 automatically assigns any task created in Outlook and brought into Prophet 21 its own activity type. This helps keep track of which application was used to generate a task. - 24 - 4 Task Integration Microsoft Outlook Integration Outlook tasks and calendar events can be converted to Prophet 21 tasks. However, none of them use activity IDs such as those that appear in Prophet 21. The integration assigns a Prophet 21 activity ID to each record brought over from Outlook, the default values of which are defined in these fields. Set Sharing Flags Outlook has no way of tracking hard touches for its tasks. To work around this limitation, this integration designates two Outlook categories and uses them for hard touch flags instead. - 25 - 4 Task Integration Microsoft Outlook Integration These flags not only denote whether a task is a hard touch, but serve as the sharing flag. When the server job scans the exchange server looking for shared items, it specifically looks for records with these two categories. While it will pull over a record with either category type, the specific category determines if the newly created Prophet 21 task will be hard touch. Assign one Outlook category type to each of these. Determine Task Detail You have the option of sending additional task information from Prophet 21 to Outlook. When enabled the following information appears in a header in the notes section of the Outlook task. This information appears under a header that identifies the task. l l l l l l l Customer Name and Number Contact Name and Number for all contacts Phone Numbers Address Email Address Activity Type Who Assigned the task - 26 - 4 Task Integration Microsoft Outlook Integration Create Server Job Account The way information is shared between Outlook and Prophet 21 is by a server job accessing the database of both applications and copying appropriately flagged records from one to the other. In order for this job, which resides on the Prophet 21 side, to function, it needs access to Outlook's data. Thus, you need to create a user account for this job with the proper permissions. Do this in Outlook, as if setting up any other user. Once you have a user account for the task integration, you must provide that information to Prophet 21 so that it can log in with the proper credentials and access the needed data. - 27 - 4 Task Integration Microsoft Outlook Integration The Server Version version identifies what version of Exchange you are running. The Server URL and Domain fields point Prophet 21 to your Exchange server so it knows where to look for flagged records to copy its own. For these fields, enter the address of your Exchange Web Services and the domain of your Exchange server respectively. The Username and Password fields are the login credentials that Prophet 21 uses when accessing Outlook's database. These should match the user profile created in Exchange for use with this feature. Integration DLL Paths These are described under Prophet 21 Database Server Setup on page 31. - 28 - 4 Task Integration Microsoft Outlook Integration Establishing User Settings Each user must go through a setup procedure in both Prophet 21 and each user's email client to synch tasks, contacts, and calendar information. Set up one user for testing purposes and refer to these instructions for future user setup. Prophet 21 Navigation Path: Setup > System Setup > System > User Maintenance > Task Options Tab Whether tasks generated in Prophet 21 copy to Exchange is determined by a task setting that can be adjusted for each task individually (see Walkthroughs on page 17 for more information). However, you can set a default behavior for each Prophet 21 user individually. This is done in the user's record. Option: Description: Enable Synch and Default Sets all new tasks assigned to this user to synch with Outlook by default. Enable Synch New tasks assigned to the user will not synch to Outlook by default, but may be set to do so. Disable Synch Tasks assigned to this user may not be set to synch with Outlook. E-Mail Client Each Outlook user must create a pair of labels for tasks and calendar events so that he can flag them to share with Prophet 21. One label corresponds to hard touch tasks, the other to non-hard touch tasks. - 29 - 4 Task Integration Microsoft Outlook Integration These labels must match the entries made in Prophet 21 exactly. If there is any discrepancy between the two, tasks and calendar events will not be transferred to Prophet 21. For more information on how this works and why these labels must match, see Server Jobs and Sharing Flags on page 16. Important! Sharing flags are case sensitive. - 30 - 4 Task Integration Microsoft Outlook Integration Prophet 21 Database Server Setup The server job discussed in Server Jobs and Sharing Flags on page 16 is the component that drives the bulk of the functionality of this feature. Before you can automatically share information between Outlook and Prophet 21, you must set this job up. Enable Exchange Web Service Enable Exchange Web Service. Create an Integration Account As described in Concepts on page 16, this server job needs access to your Exchange server in order to facilitate record transfers between systems. The way you grant access to this server job is to sync will apply. For information on how to do this, please see the following article: http://msdn.microsoft.com/enus/library/bb204095%28EXCHG.80%29.aspx Gather File Locations Locate the following four files and make note of where they reside; you'll need them in the next step. 1. Microsoft.Exchange.WebServices.dll This comes from the Microsoft Exchange Web Service Managed API 2. System.DirectoryServices.dll Can usually be found in C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ 3. System.Core Can usually be found in C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\system.core.dll 4. Microsoft.Exchange.WebServices.xml This comes from the Microsoft Exchange Web Service Managed API Run Scripts Enter the file paths in the appropriate fields in System Settings. - 31 - 4 Task Integration Microsoft Outlook Integration Open the RMB menu on each in turn and select Deploy Exchange Integration. This automatically runs the setup stored procedure on the database to deploy the integration. The system issues a warning before beginning the process, and displays a message when it is complete. Important! This process must be run while you are logged in as a system administrator with the option to bypass application role security enabled. If you attempt this step without meeting these criteria, Prophet 21 issues a warning and cancels the process. Manual Database Server Setup Note: This is a manual version of the procedure described above. If you used the RMB option Deploy Exchange Integration, you can skip this process. However, if you ran into any troubles with that step, you can perform the manual setup using the steps detailed below instead. On your Prophet 21 database server, locate the following files and make note of their location. You can use the Windows search feature to locate each file. The default installation directory for each file is listed below. l Microsoft.Exchange.WebServices.dll C:\Program Files\Windows\Exchange\Web Services\1.0 1.0 could be different depending on which software version you are running. If you have not installed the Microsoft Web Services Managed API listed in the Software Requirements on page 22, your system will not have this file. - 32 - 4 Task Integration l l l Microsoft Outlook Integration System.DirectoryServices.dll C:\Windows\Microsoft.NET\Framework\v2.050727 (if your computer is running 32 bit) C:\Windows\Microsoft.NET\Framework\v4.0.30319 (if your computer is running 64 bit) The version number might differ slightly depending on the build installed. System.Core.dll C:\ProgramFiles\ReferenceAssemblies\Microsoft\Framework\v3.5 System.Web.dll (if your computer is running 64 bit or SQL 2012 or greater) C:\Windows\Microsoft.NET\Framework\v4.0.30319 After you locate the files above, run the EXEC_p21_outlook_integration_setup stored procedure in SQL Server Management Studio. This procedure creates the other stored procedures required for syncing between Prophet 21 and Exchange. Run the procedure with the arguments pointing to the files above. Ensure the file name is not included, each path is separated by a comma, and that the paths are specified in the order they are listed above. Important! Ensure you include the ending back slash in the paths within the argument. The warning message is expected and normal. Troubleshoot any other errors on a caseby-case basis. For example, if your files are in the default installation locations listed above, the procedure you run in SQL Server Management Studio is formatted similar to the following: exec p21_outlook_integration_setup 'C:\Program Files\Windows\Exchange\Web Services 1.0\', 'C:\Windows\Microsoft.NET\Framework\v2.050727\', 'C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\' 'C:\Windows\Microsoft.NET\Framework64\v2.050727\' If you encounter errors, see Troubleshooting on page 59. Testing Server Communication After you have completed setup required on the Exchange server, the Prophet 21 server, set the Prophet 21 system authentication information, and created at least one user in the system, complete the following steps to ensure that the Prophet 21 server and Exchange server are communicating correctly. Note: After you run the stored procedures in the procedure below, check the outlook_ error_log table. Any connection errors are logged in this table if the procedure did not complete successfully. 1. Run the p21_outlook_integration_setup stored procedure in SQL Server Management Studio. 2. Create a task to synch in Prophet 21. 3. Run the p21_sync_task_to_outlook stored procedure in SQL Server Management Studio. - 33 - 4 Task Integration Microsoft Outlook Integration 4. Verify that the task you created in Prophet 21 displays in your email client. You might experience a delay depending on the settings between the Exchange server and the email client. 5. Create a task in your email client to synch to Prophet 21. 6. Run the p21_sync_outlook_task_to_p21 stored procedure in SQL Server Management Studio. 7. Verify that the task displays in Prophet 21. If the test is successful, create a job in Prophet 21 that automates the synching process and determines how often information transfers between Prophet 21 and the Exchange server. Any errors are logged in the outlook_error_log table that you can search using a SQL query. Customizing the Server Job After you complete and test the setup of your Exchange Server and Prophet 21 server, you can customize the server job that completes and automates the synching between the two servers. Note: All of the modifications discussed in this section are performed in SQL Server Management Studio. Locate the Job Navigation Path: Server Containing Prophet 21 Database > SQL Server Agent > Jobs > P21_SyncOutlookWithP21 Before you can do anything to the server job, you have to find it. To do that, connect to the server containing your Prophet 21 database and follow the navigation path shown above to open the Job Properties window for the Outlook integration server job. - 34 - 4 Task Integration Microsoft Outlook Integration Enable the Job Now that you've found the job, you need to turn it on. In the Job Properties window, open the General page and check the Enabled check box. Schedule the Job Scheduling the job is the meat of the setup. This is where you determine how often the job runs. Scheduling includes determining days and times, as well as frequency. To do this, open the Schedule pane and select the New option. This brings up the New Job Schedule window. - 35 - 4 Task Integration Microsoft Outlook Integration Make all your scheduling adjustments here, then click OK to save the changes. Important! This copy procedure favors Prophet 21. This is important to remember when considering that changes made to a task only copy to the other application when the server job next runs. Therefore, if a task is edited both in your email client and Prophet 21 between updates, the changes made in Prophet 21 supersede those made in the email client. - 36 - 5 Calendar Integration Microsoft Outlook Integration 5 Calendar Integration This integration treats events scheduled in Outlook's calendar the same as tasks, and converts them to Prophet 21 tasks. Thus, on the Prophet 21 side there is no difference between a task copied from an Outlook task and one copied from an Outlook calendar event save for one: tasks created from Outlook's calendar events are all stored as historical, completed tasks. This means that there is no back and forth between the programs like there is with task records. Important! While this information sharing enables you to copy Outlook calendar events into Prophet 21 as tasks, it does not allow you to schedule these events in Prophet 21 and transfer them to the Outlook calendar. That functionality remains the sole property of Microsoft Outlook. Because of the similarity between task sharing and calendar integration, the method by which this information is transferred is identical. See Server Jobs and Sharing Flags on page 16 for more information on the back end processes. - 37 - 5 Calendar Integration Microsoft Outlook Integration Concepts The Prophet 21 integration with Outlook's calendar events uses the same server job and logic as described in the task integration chapter. Please see Concepts on page 5 for more information. Note: Remember the one difference between shared tasks and shared calendar events is that calendar events do not continually update. The sharing creates a completed task in Prophet 21, not a live one. - 38 - 5 Calendar Integration Microsoft Outlook Integration Walkthroughs This section shows you how to accomplish tasks, and provides explanations of the various areas of the system involved. Setting Outlook Calendar Events to Synch with Prophet 21 To share an Outlook calendar event with Prophet 21, set the Outlook category to the appropriate type to flag it as a hard touch or non-hard touch item. See Set Sharing Flags on page 25 for more information on assigning Outlook labels as application sharing flags. - 39 - 5 Calendar Integration Microsoft Outlook Integration Setup Setup information for this functionality is the same as described in the Task Integration chapter. Please see Setup on page 22 for more information. - 40 - 6 Contact Integration Microsoft Outlook Integration 6 Contact Integration Contact sharing is a one way exchange that allows you to export your Prophet 21 contacts to your users' Outlook contact list. Unlike sharing tasks, this sharing does not set up a continued exchange of information; changes made to a contact record in one application will not copy to the other, but you can recopy records to update information if necessary. Note: This feature makes use of mailing lists. Please see the Prophet 21 help file for information on the Mailing List Maintenance window and the Mailing List Tab in Contact Maintenance for information on how to set these up. - 41 - 6 Contact Integration Microsoft Outlook Integration How it Works When copying contact files from Prophet 21 to Outlook, the system transfers the following information: From Prophet 21: To Outlook: Contact Name/Address Contact Name/Address Company Phone Number Business Phone Number Direct Phone Number Business 2 Phone Number Cellular Phone Number Mobile Phone Number Contact Email Address E-Mail Address Contact Secondary E-Mail Address E-Mail 2 Address - 42 - 6 Contact Integration Microsoft Outlook Integration Walkthroughs This section shows you how to accomplish tasks, and provides explanations of the various areas of the system involved. Copying Prophet 21 Contacts to Outlook Navigation Path: CRM > CRM > System > Synchronize Contacts with Outlook To copy contacts from Prophet 21 to Outlook, you must assemble a contact list. The system filters the contact records by a series of filters you can enter, though all of them are optional. These filters are cumulative, meaning that any contact appearing here must meet all the criteria entered. The more criteria you enter, the more specific the returned list. Select Salesreps The first set of filters available to you are the salesreps. You can filter contacts based on their ship to and customer salesrep, or both. - 43 - 6 Contact Integration Microsoft Outlook Integration Note: The Customer Salesrep field takes managerial hierarchy into account. Thus if the salesrep entered here manages other reps, all of their contacts appear in the resulting contact list as well. Enter Territories You can also filter contacts by the territories they've been assigned. Filter by territory assignments on the ship to or customer level, or both. If you enable the Group check box, it means the Territory ID you enter refers to a collection of territories. Please see the Prophet 21 help file for more information on territory groups. - 44 - 6 Contact Integration Microsoft Outlook Integration Select Mailing Lists You can also call up contacts in batches, using existing mailing lists. However, this criteria functions differently than any other in this tab. When you enter multiple criteria, a contact must meet all of the entries to appear, except mailing lists. Prophet 21 displays all of the contacts that are part of any of the mailing lists you select, assuming they meet the other criteria as well. - 45 - 6 Contact Integration Microsoft Outlook Integration Select Contact Roles Much like mailing lists, you can filter your contacts by their roles. However, role selection functions like the criteria found elsewhere in this tab. If you select multiple roles, a contact must meet all of them to appear on the retrieved list. - 46 - 6 Contact Integration Microsoft Outlook Integration Create Contact List When you've set all your criteria in place, click the Retrieve Contacts button.The system displays a list of all the contacts that meet your entered criteria at the bottom of the screen. - 47 - 6 Contact Integration Microsoft Outlook Integration Each contact has a Selected check box. If you enable this setting, this contact will be sent to Outlook. By default, every contact retrieved in this process is selected, but you can customize the list by toggling individual lines. Select Recipients Once you've determined which contacts you want to copy, you must then select to whose Outlook accounts they will write. All your Prophet 21 users that have an Outlook email address entered in their user record appear on a list in the Choose Users to Synch To tab. You may select multiple recipients for a single copy job; Prophet 21 will transfer the contact list to each of the selected users. - 48 - 6 Contact Integration Microsoft Outlook Integration Copy Contacts Once you have completed entering the criteria and assembled your contact list, click the Copy to Outlook button to make the transfer. Retrieving Contact Copy Criteria Navigation Path: CRM > CRM > System > Synchronize Contacts with Outlook You can save the criteria you enter when creating a contact list to copy to Outlook. Upon doing so, you can call it back by entering the criteria ID in the appropriate field. Note: After you apply the criteria, you can individually select which contacts are copied to Outlook. However, when you recall a set of criteria using this method, all applicable contacts appear on the returned list. Thus if you used this criteria set, removed some of the contacts from the copy list, and then saved the criteria,Prophet 21 returns all of the applicable contacts when you next use this same criteria set. This prevents a one time edit from creating irregularities in the data retrieval process where a record that meets all the entered criteria is not pulled. - 49 - 6 Contact Integration Microsoft Outlook Integration Setup The following tasks set up the system specifically for use with the functions described in this chapter. Notes: In order to use this functionality, you must activate the task integration system setting. See Establishing System Settings on page 24 for more information. The system requirements for this feature are identical to those listed under task integration. Scheduling Regular Contact Synchronization This procedure sets your system to automatically synchronize your Prophet 21 contacts with Outlook in repeating scheduled increments. To do this, you need the following components: l l l An XML document containing the contact synchronization criteria A batch file to run the Prophet 21 executable Windows Scheduler Customize the Synchronization Criteria File The synchronization criteria file is an XML file that specifies what sat of contact synchronization criteria the system should run as part of the automated process. These criteria are the same as the ones described in Copying Prophet 21 Contacts to Outlook on page 43. This manual provides a sample XML file that contains almost everything you need to make this process automated (find it in Sample Files on page 58). The only thing you need to change about it are the criteria, since your criteria IDs are unique to your system. The criteria for a contact synchronization exists underneath the line “contact_sync_criteria_uid_list,” which is enclosed in <operand></operand> tags. Immediately following this is a set of <value></value> tags containing the criteria ID. - 50 - 6 Contact Integration Microsoft Outlook Integration In order to schedule multiple criteria sets, enter all of the Criteria IDs in the value list, separating each by commas. In the above example, the scheduled criteria are 6 and 3. Customize Batch File The batch file is used by the Windows Scheduler to run Prophet 21 during the contact synchronization process. In order to set it up to run on your system, you must modify it. This is a two step process. Change Executable Path Replace the executable path (highlighted below) with the path to the Prophet 21 executable on your system. Change Storage Path - 51 - 6 Contact Integration Microsoft Outlook Integration Replace the argument containing the path to the XML file (highlighted below) with the path to where you store this file. Set up Windows Scheduler Setting up a recurring contact synchronization is the same as any other scheduled task as far as Windows Scheduler is concerned, but it's a task that makes use of some of the setup steps you've already performed. Start New Task In Scheduled Tasks, click Add Scheduled Task. Find Batch File When the Scheduled Task Wizard appears, click the Browse button. - 52 - 6 Contact Integration Microsoft Outlook Integration Navigate to the location where you saved the batch file created earlier. - 53 - 6 Contact Integration Microsoft Outlook Integration Double-click this file. Set the Time Increment Setting the interval for which Windows should run your contact synchronization is a two step process. In the first popup, select the general time increment. - 54 - 6 Contact Integration Microsoft Outlook Integration Click Next. The next screen contains the specific details of the automated process scheduling. Here, specify the time the synchronization should be run, the date the system should start, and any details regarding the schedule (such as skipping synchronization on weekends). - 55 - 6 Contact Integration Microsoft Outlook Integration Click Next. Enter Login Credentials If the machine that runs this scheduled task needs to supply login credentials, enter them here. Since these are Windows credentials, enter the login information of the machine where the Windows Scheduled task runs. - 56 - 6 Contact Integration Microsoft Outlook Integration Click Next. Confirm Task The wizard displays the full details of the scheduled task for you to review and approve. - 57 - 6 Contact Integration Microsoft Outlook Integration You can change anything about the task by clicking Back and returning to earlier setup windows. When everything is set to your needs, click Finish to save the task. Sample Files This section contains sample files used for setting up the contact synchronization feature to run automatically. Copy these to your local machine and edit them as necessary. Instructions on how to use these are found in Scheduling Regular Contact Synchronization on page XX. Criteria File <?xml version="1.0" encoding="UTF-8" ?> - <instruction_set> <instruction>frame</instruction> - 58 - 7 Troubleshooting Microsoft Outlook Integration <operand>w_contact_frame</operand> <value /> <instruction>open</instruction> <operand>w_contacts_outlook_sync</operand> <value /> <instruction>set</instruction> <operand>contact_sync_criteria_uid_list</operand> <value>X,X</value> <instruction>triggerevent</instruction> <operand>triggerevent</operand> <value>ue_synccontactsfromcriterialist</value> <instruction>triggerevent</instruction> <operand>triggerevent</operand> <value>closeapplication</value> </instruction_set> Batch File start /wait c:\executables\vtrinity\pxxi.exe c:\executables\vtrinity\schedule_criteria\contact_synch_ auto_start.xml 7 Troubleshooting The following sections provide steps to resolve issues you might encounter while setting up and running Microsoft Exchange Server Integration. Could not load file or assembly error During Prophet 21 database server setup, use the steps below to resolve the following error: - 59 - 7 Troubleshooting Microsoft Outlook Integration Could not load file or assembly 'System.Core Version=3.5.0.0 Culture=neutral PublicKeyToken=b77a5c561934e089' or one of its dependencies. Assembly in host store has a different signature than assembly in GAC 1. Open a Run box (Windows+R). 2. Enter C:\windows\assembly\gac_msil. 3. In the Windows Explorer window that opens, locate the System.Core folder. 4. Open that folder, and open the subfolder contained within it. For example, 3.5.xxxx. 5. Click the System.Core.dll file. 6. Copy it and paste it to another folder elsewhere in the system. For example, create a C:\Exchange_Assemblies or something similar for the file. 7. Re-run the setup stored procedure (p21_outlook_integration_setup). However for the argument that is the path to system.core.dll, specify the path where you copied the System.Core.dll file in step 6. - 60 -