1 / 92

Integrate, Extend, or Migrate IBM Lotus Notes

Agenda. OverviewIntroduction To CASAHLMicrosoft For Lotus Notes UsersAnalyzing Lotus Notes ApplicationsIntegrating Notes Applications With Microsoft Platform using ecKnowledgeLab 1 SharePointLab 2 ASP.NET and InfoPath, Data Transformations, Managing ecKnowledgeLab 3 Certification Exerc

eadoin
Download Presentation

Integrate, Extend, or Migrate IBM Lotus Notes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Integrate, Extend, or Migrate IBM Lotus Notes/Domino Applications to SharePoint, InfoPath, SQL Server, and VS.NET Sudeep Trivedi Chief Technology Officer CASAHL Technology, Inc.

    2. Agenda Overview Introduction To CASAHL Microsoft® For Lotus Notes Users Analyzing Lotus Notes Applications Integrating Notes Applications With Microsoft Platform using ecKnowledge Lab 1 – SharePoint Lab 2 – ASP.NET and InfoPath, Data Transformations, Managing ecKnowledge Lab 3 – Certification Exercises Summary

    3. CASAHL Background Founded In 1993 Started out by licensing NotesSQL ODBC driver to Lotus Singularly focused on enhancing the collaboration platforms Products to integrate, extend, and/or migrate collaborative applications Over 1,000 customers worldwide CASAHL products have consistently won industry awards for best integration tools The company is founded in 1993. Casahl has developed the first NotesSQL ODBC driver to connect the Lotus world to the rest of the technologies. This driver has since licensed to Lotus and has more than a million users in this community worldwide. In 1995, Casahl launched her first award winning Data Integration product for Lotus Notes, this product allows organization to link the Notes applications to applications residing in other technologies. It has been in the awarding winning list ever since. In 1997, taping on the expertise on both Notes and MS Exchange, Casahl launched yet another award winning Data Integration product to bridge the Microsoft and Lotus world as well as the eBusiness community. We have more than 1000 customers worldwide, including most of the Fortune 500 and Global 1000 companies. And we are continuing to build products based on the experience we gained from these companies. The company is founded in 1993. Casahl has developed the first NotesSQL ODBC driver to connect the Lotus world to the rest of the technologies. This driver has since licensed to Lotus and has more than a million users in this community worldwide. In 1995, Casahl launched her first award winning Data Integration product for Lotus Notes, this product allows organization to link the Notes applications to applications residing in other technologies. It has been in the awarding winning list ever since. In 1997, taping on the expertise on both Notes and MS Exchange, Casahl launched yet another award winning Data Integration product to bridge the Microsoft and Lotus world as well as the eBusiness community. We have more than 1000 customers worldwide, including most of the Fortune 500 and Global 1000 companies. And we are continuing to build products based on the experience we gained from these companies.

    4. CASAHL Background Leader in Lotus Notes integration market since 1995 Leader in integrating Microsoft Exchange public folder applications since 1997 Close partnership with Microsoft on integrating, co-existing, or migrating Lotus Notes applications to Microsoft Exchange, SharePoint, SQL Server, InfoPath, and .NET

    5. CASAHL Products Integrate, Extend, and/or Migrate Collaborative Applications

    6. CASAHL And Microsoft Partnership Toolset Developer of Application Analyzer for Lotus Notes ecKnowledge is Microsoft’s preferred solution for connecting with Lotus Notes Training the partners and Microsoft field on the tools Presenting at the Microsoft conferences and trade shows About to jointly launch GTM campaign

    7. Compelling new collaboration platform in SharePoint® Products and Technologies and Office 2003 Familiar Office rich-client experience Adopt .NET as standards-based application development platform Build portal strategy around SharePoint and .NET Reduce TCO through consolidation of messaging and collaboration platforms Lotus Notes/Domino And Microsoft Platform

    8. Integrate and extend Lotus Notes applications to Microsoft platform Least disruptive way to introduce Microsoft products Immediately start to see the benefits Migrate to Microsoft platform Maximum savings on TCO Requires extensive planning; can be disruptive if a period of coexistence is not offered Approaches For Introducing Microsoft Technologies

    9. Strategies For Integrating, Extending, or Migrating Analyze the existing applications to understand their usage and complexity Always implement a phased approach Take advantage of best-of- breed products from Microsoft Start with the most common, template-based applications first Evaluate the business functions of the most complex applications Coming from IBM perspectives, it is a push factor as IBM is targeting at the Notes user bases to get their customers to migration to WebSphere and J2EE platform. From Microsoft perspectives, this is the first step where Microsoft can move into the IBM dominant market.Coming from IBM perspectives, it is a push factor as IBM is targeting at the Notes user bases to get their customers to migration to WebSphere and J2EE platform. From Microsoft perspectives, this is the first step where Microsoft can move into the IBM dominant market.

    10. Toolset Microsoft Application Analyzer (developed by CASAHL) CASAHL’s ecKnowledge® for data and application coexistence and migration There are two categories of migration toolsets: The Messaging and the Applications. We will not cover Messaging in this lab. But all the information and applications are on the CD that you have, please take your time to go through them and learn how to use them. We will cover the Application Analyzer and ecKnowledge® toolsets for migration and co-existence of the Lotus Notes applications to Microsoft platform.There are two categories of migration toolsets: The Messaging and the Applications. We will not cover Messaging in this lab. But all the information and applications are on the CD that you have, please take your time to go through them and learn how to use them. We will cover the Application Analyzer and ecKnowledge® toolsets for migration and co-existence of the Lotus Notes applications to Microsoft platform.

    11. Application Analyzer Analyzes Lotus Notes and Domino applications for complexity, scale, and usage Collects information about Lotus Notes and Domino applications and generates reports Two program components Data Collector Data Processor

    12. Application Analyzer Collects raw data about Lotus Notes databases in an organization Calculates statistics on size, design elements, usage, etc. Prepares collection of reports offering deep analysis on structure and usage How does Application Analyzer works? //follow the flow// The first component, Data Collector will collect information on the Lotus Notes databases within an organization. The databases can either be residing on a single server or in a server farm depending on the ACL of the person running the application. An encrypted file will be generated from the Data Collector. This encrypted file will be sent to either an MSP or MCS for further processing. The MSP or MCS will use the Data Processor component to decrypt the files and process the information. The Data Processor will generate reports for the migration or co-existing strategy. How does Application Analyzer works? //follow the flow// The first component, Data Collector will collect information on the Lotus Notes databases within an organization. The databases can either be residing on a single server or in a server farm depending on the ACL of the person running the application. An encrypted file will be generated from the Data Collector. This encrypted file will be sent to either an MSP or MCS for further processing. The MSP or MCS will use the Data Processor component to decrypt the files and process the information. The Data Processor will generate reports for the migration or co-existing strategy.

    14. Categorizing Lotus Notes Applications

    15. ecKnowledge® Integrate, extend, and/or migrate Notes Applications to Microsoft platform Wizard-based UI, coupled with enterprise strength server Vast connectivity to Microsoft servers and other enterprise backend systems Helps bring down the total cost of the projects ecKnowledge® also allows you to migrate and co-exist Notes applications with Microsoft best of breed servers. It provides you with easy to use wizard which allows you to create or maintain the migration applications. It is highly scalable and provides seamless integration to enterprise backend systems. ecKnowledge® also allows you to migrate and co-exist Notes applications with Microsoft best of breed servers. It provides you with easy to use wizard which allows you to create or maintain the migration applications. It is highly scalable and provides seamless integration to enterprise backend systems.

    16. Leverage Rich Microsoft Target Set You can now map mission-critical Notes contents to any Microsoft best of breed servers with ecKnowledge® as the bridging tool. Some examples are Microsoft Exchange server, SQL server, SPS/STS servers, Active Directory Site servers, as well as Web Services You can now map mission-critical Notes contents to any Microsoft best of breed servers with ecKnowledge® as the bridging tool. Some examples are Microsoft Exchange server, SQL server, SPS/STS servers, Active Directory Site servers, as well as Web Services

    17. SharePoint Products and Technologies Candidate for most of the common Lotus Notes applications Team room and Discussion Document Library Group/Team Task, To-Do, and Calendar Simple custom applications ecKnowledge provides a connector for easy mapping to SharePoint

    19. SQL Server Most appropriate data store for many transactional, self-service, and LOB Notes applications ecKnowledge provides connectivity to SQL Server with support for: Normalization of Lotus Notes data Creation of table schema Synchronization, with configurable behavior Notes-rich text and attachments

    21. Jump-start application migration to Visual Studio® .NET and InfoPath™ Automatically generates code and .NET application framework Choice of application architecture – ASP.NET/Web Form or Windows Form Resulting code engineered to follow Microsoft best practices Application structure based on Microsoft Pet Store 3.0 application ecKnowledge .NET Application Generation

    23. Application Generation Benefits Cost savings on effort Incorporates architectural best practices in the code Quick and easy way to build proof-of-concept LotusScript and formulas available in the target environment Jump-start to Notes developers

    24. Microsoft Office InfoPath 2003 New product in Office System 2003 RAD environment Easy to add data validation and script events Very compelling to Lotus Notes developers Publish to SharePoint form library for sharing

    26. ecKnowledge Summary Comprehensive environment to manage coexistence and migration from Notes Notes applications can be mapped to entire range of Microsoft servers Brings down the total cost of projects

    28. ecKnowledge Components

    29. Composer App development environment: GUI for creating and modifying ecKnowledge® objects All objects defined through the Composer can be shared among different ecKnowledge® applications and developers

    30. Server Windows Service or Console version Event logging Performance monitoring Load balancing and fail-over

    31. Server Manager Graphical user interface to administer all ecKnowledge® Servers on the network: Remotely execute jobs on an ad- hoc basis Manage multiple Servers and job queues View Server activity and history Configure server

    32. Developing ecKnowledge® Applications Step 1 – Plan the integration solution Determine the data flow points in the business process For each data flow point, determine the meta-data model and schemas Model the mappings between data sources and design any transformations Design the architecture of the application Event-based or scheduled Sequencing or individual work units Number of read/write transactions expected per-hour or per-day

    33. Developing ecKnowledge® Applications Step 2 – Develop, Test, Deploy Create data sources and connections Create a job with appropriate mappings Add optional components, such as data transformations Create event-based invocation scripts, if needed Test the application using subset of production data Perform pilot test with active users Deploy in production

    35. Summary Of Job Creation Demo Source and Target connections and tables/forms Column Mapping One-way or two-way replication Filter conditions, and operations such as Insert, Update, Delete Timestamp or signature Schedule Execution Control Load balancing, job sequencing, logging, error handling Notifications

    36. Summary of Replication Job Demo Source and Target connections and tables/forms Column Mapping One-way or two-way replication Parameters Filter conditions, and operations such as Insert, Update, Delete Advanced parameters for Lotus Notes

    37. Summary of Replication Job Demo Timestamp or signature Schedule Execution Control Load balancing, job sequencing, logging, error handling Notifications

    39. Exercise Scenario Lotus Notes Document Library Goal Transfer and synchronize all documents in Notes document library with WSS Once the documents are available in WSS Check in, Check out Revision history Collaboration

    40. ecKnowledge® Demo Notes Document Library to WSS Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuild using Microsoft technology, such as using Visual.Net and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server. Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuild using Microsoft technology, such as using Visual.Net and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server.

    41. Hands-on Lab Exercise 2a One way migration of Notes document library to WSS *Note* – after Column Mapping, be sure to specify folder to store attachments in ‘Additional Parameters’ section

    42. Exercise Scenario Notes Project Task Application as a collaborative application to track and manage team activities Goal To migrate this application to WSS standard Task list application

    43. ecKnowledge® Demo Notes Project Task Application to WSS Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuilt using Microsoft technology, such as using Visual Studio.NET and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server. Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuilt using Microsoft technology, such as using Visual Studio.NET and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server.

    44. Hands-on Lab Exercise 2b Coexist between Notes Project Task Application and WSS

    45. Exercise Scenario Custom Sales Tracking Application in Lotus Notes Goal To migrate this application to WSS custom list Use FrontPage to further customize the look and feel of the custom list

    46. ecKnowledge® Demo Notes Sales Tracking Application to WSS Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuilt using Microsoft technology, such as using Visual Studio.NET and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server. Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuilt using Microsoft technology, such as using Visual Studio.NET and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server.

    47. Hands-on Lab Exercise 2c Coexist between a Notes Sales Tracking Application and WSS

    48. Exercise Scenario Discussion Team Room application Typical collaborative application in Notes environment Options Exchange Public Folder/Outlook Windows SharePoint Services

    49. ecKnowledge® Demo Notes Discussion Team Room to WSS Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuild using Microsoft technology, such as using Visual.Net and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server. Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuild using Microsoft technology, such as using Visual.Net and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server.

    50. Hands-on Lab Exercise 2d Coexist between Notes Discussion Team Room with WSS

    51. ecKnowledge® Demo Notes Discussion Team Room to Exchange Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuild using Microsoft technology, such as using Visual.Net and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server. Let’s take a look at these ecKnowledge® components in the context of real life migration of a Notes CRM to SQL Server. ecKnowledge® Composer is the application development environment. When you start up the composer, you will see a tree view of different objects and the category of objects in the ecKnowledge® systems. These objects are non-programming objects. You create these by filling out information in the composer wizards and dialog boxes. These objects together, will make up your migration and co-existence applications. ecKnowledge® Server, allows you to manage the server, locally or remotely. It allows you to start and stop the servers, looking at task current activities, histories and monitoring migration jobs. Let’s use these two components to build a real life migration and co-existing example application. WWI uses the Notes Sales Tracking database to keep track of their prospects. The information includes contact information, company profiles and sales goal and strategies. This application, can be rebuild using Microsoft technology, such as using Visual.Net and MS SQL server as the data store for this applicaiton. Let’s take a look at the corresponding table in MS SQL server that represent the forms in Notes application. This AccountProfile table in the SQL server is currently empty. Will use ecKnowledge® components to link up the Lotus Notes account form with the SQL server tables. In the Composer tree-view, there are two main categories. One is called JOBS, these are the objects that can be run by the ecKnowledge® Server, and the COMPONENT OBJECTS, in which you will use it to build the migration or co-existence objects. In this application, you may want to build an REPLICATION JOB in which you will synchronizes the information from Lotus Notes Account Profile form with the Account Profile table in the SQL server You can always right click on the JOB TYPE to start the wizard to create the job, or you can click on the CREATE menu and choose the REPLICATION options to start the wizard. The wizard will guild you step by step to the different options that you need to specify to create this co-existence application. On the first screen, it will allow you to create a connection your source system. In this case, it will be Lotus Notes. If you already have a connection, you can drop down the list and choose the connection. Otherwise, you can click on the CREATE NEW CONNECTION button to create this connection to Lotus Notes. First thing you would do, is give a name to the Connection object. We call it the Training Notes CRM. Then, you drop down the CONNECTION TYPE LIST and choose the type of this connection to your source database. Based on the CONNECTION TYPE selected, the rest of the screen will allow you to enter the information required to make a connection to that system. Remember you would need to have the client software configured in order to allow you to choose the connection type. You can select a Lotus Notes database from the Domino server, or you can select a database local on this computer. Once you specify the information required for the connection, you can hit ok and that connection will be available to you in the source wizard. Once the connection is established, ecKnowledge® will retrieve the meta-data from that system. In case of Lotus Notes It will be the list of the Forms and Views in the database selected in the connection. Will go ahead to use the ACCOUNT PROFILE FORM for this application. The next step would be to specify a similar connection to the Target system. I can go ahead and select the pre-define connection to SQL server. When you click on the Properties of the Connection, you can see how you can configure the name of the SQL server to connect to, and the database which contains the table that we want to integrate with Lotus Notes. Once you select the connection to SQL server, ecKnowledge® will retrieve the list of Tables, Views and Stored Procedure that you can use from the SQL server. In this application, we will use the ACCOUNT PROFILE TABLE on the SQL server. The next step is to specify to ecKnowledge® whether this application is a replication or a synchronization. For replication, chose the One-Way Replication button. For Synchronization between the two systems, choose, the Two-Way Synchronization button. If you are planning for co-existing the Lotus Notes application with SQL server, you might want to use the two way replication option. After you have specify the source and target systems, and choose the tables and forms of interest, you will need to specify mapping between columns and attributes of the fields between these two systems. You can do that by click on the COLUMN MAPPING button. For the column which has same or similar names, ecKnowledge® can automatically match those columns for you. In the following screen, you will see on the Left side, the list of fields from the source system, which is the Lotus Notes ACCOUNT PROFILE form. On the right side, you will see a list of columns from the SQL server dbo.AccountProfile table. In the middle, you will see a list of columns that have been mapped between these two systems by ecKnowledge®. For columns with dissimilar names, you can select the column from the left list from the Lotus Notes application, and you can select corresponding column from SQL server can click on the Add button. As you can see, once you click on a column, ecKnowledge® will display the attributes of the field such as name, data type and length for your information. Let’s go ahead and map the rest of the columns between these two systems. After you have done mapping the columns between the two systems, you would need to specify one or more column as the key to uniquely identify the records on the target system. You can choose single unique key or compound keys. So far, we have specify the connection to the two systems and the column mapping between the two systems. The rest of the screens will have an option to fine tune the behavior of this replication task and to specify any additional parameters. For example, you can choose whether you would like to replicate Insert of the new data, Update or Delete made on the Lotus Notes applications to the SQL server. You can also filter the data coming thru by specifying a filter condition. The syntax of the filter conditions depend on the system specify as a source or target. In this case, since Lotus Notes is the source, the filter condition for source should be specify in Lotus Notes formula syntax. For the target systems, which is SQL server, it would be in the SQL WHERE clause syntax. For example, I could specify COMPANY OWNERSHIP = ‘PUBLIC’ to filter the record for only the publicly listed companies. ecKnowledge® can also use a TimeStamp column to perform a very efficient replication of the information. With this timestamp, it can detect just the changes made to the systems so that only those changes are brought over to the target system. If you do not have a timestamp column such as LastModify, $Modify, you could also use a signature base algorithm to detect the changes. We have specified all the required parameters for this application job. For the rest of the screen, you could leave the default parameters and click NEXT. On the EXECUTION CONTROL screen, an important parameter to note is the COMPUTER NAME field on the top. If you specify a computer name, then only the ecKnowledge® Server installed on that computer will execute this particular job. If you leave the field blank, any ecKnowledge® Server which is least loaded will pick up this particular job. You are also able to sequence different ecKnowledge® activities one after the other based on a successful execution or on error execution. The replication task that we have created can be specified on a scheduled basis or you can invoke this job from your application using the ecKnowledge® COM or XML interface. You can always invoke this job ad-hoc basis from Composer or ecKnowledge® Server Manager. This screen allows you to specify any administrative notification that ecKnowledge® should send out on the successful execution of this job or in case of error. Finally, you need to enter an unique name for this job and optionally give a category. When you click FINISH, this replication object is saved within ecKnowledge® system. If you want to make any modification to the job, you can double click on the name of the job and it will open up the properties sheet view which will let you specify any additional parameters. We are now ready to run this application using the exKnowledge Server. To run this application on ad-hoc basis, you could right-click on the job name in the tree, and click on the SUBMIT JOB button or you could also go to the Server Manager program to initial this job. This job has now been submitted to the ecKnowledge® Server for processing. You can always go to the Server Manager component to look at the current activities of the server, or you could also look at the activities history which will show you the execution of this particular task. When you double click on the task, you can look at the details of this activity, and you can see right here that this replication has migrated 47 records from Lotus Notes forms to the SQL Server tables. Let’s examine the SQL Server and look at the content brought over. As you can see, the information in the Lotus Notes form has been translated to the SQL table. Now we have a basic application which integration Lotus Notes CRM application to SQL server.

    53. Visual Studio.NET Application Generation Quick and easy jumpstart into creating new applications Fully automated point-and-click way to recreate framework of Notes forms using VS.NET / InfoPath and SQL Server In addition the Notes data will be integrated with SQL Server, providing a two way co-existence between Notes app and the new app to develop test and deploy the new application. The functionality will be a great way to jumpstart Notes developers to VS. NET for consultants to create a framework of Microsoft platform based apps quickly and to bring down the overall cost of the conversion process. …Getting into complex area, only provides a basis of new app In addition the Notes data will be integrated with SQL Server, providing a two way co-existence between Notes app and the new app to develop test and deploy the new application. The functionality will be a great way to jumpstart Notes developers to VS. NET for consultants to create a framework of Microsoft platform based apps quickly and to bring down the overall cost of the conversion process. …Getting into complex area, only provides a basis of new app

    54. Visual Studio.NET Application Generation Choice of Windows Form, Web Form (ASP.NET), or InfoPath as target form Choice of C# and VB.NET Resulting application is “live”, i.e. bound to SQL and fully functional

    55. Visual Studio.NET Application Generation Resulting code engineered to follow Microsoft best practices Code structure based on Microsoft Pet Store 3.0 application

    56. Exercise Scenario IT Service Request tracking application in Notes Goal Transfer the Notes data to SQL Server Create the new ASP.NET application using ecKnowledge code generator

    57. Hands-on Lab Exercise 3 Convert a Lotus Notes application to VS.NET Web Application using SQL Server

    58. Microsoft Office InfoPath New product in Office 2003 RAD environment Can connect to various data sources including SQL Server, XML, Web Services, and Access Easy to add data validation and script events Can publish to SharePoint form library

    59. Exercise Scenario Lotus Notes Employee Performance Evaluation application Goal To migrate this application to the Microsoft Office InfoPath 2003, using SQL Server data store

    61. ecKnowledge Components Connection Provides the information to connect to a system, such as server, database, login Data Transformation Used to change data to correspond to the target environment

    62. Component Objects Action Trigger events when the record being exchanged contains data that meets a specified set of conditions Rule Perform integrity checking, permitting only those records that satisfy the specified rule to be included in the data transfer

    63. Component Objects Event Set a condition to determine when an ecKnowledge® job runs Error handler Handle non-critical errors using VBScript Send email messages Write error message to source system

    64. ecKnowledge® Component Data Transformation

    65. Transforming Data Using ecKnowledge® Components Rich Set Of Transformation Primitives Using VBScript, COM, JavaScript, and Notes formula language Mapping table for simple value transformations Lookup external table

    66. Adding Data Transformation Steps To Transform Data Create Data Transformation object Data transformation is always associated with the source (not target) connection In scripts, use field names from Source Do not change data type Specify The Transformation In Column Mapping Remove mapping and Add with Data Transformation Transformation Table External Table Lookup Symmetrical Transformation For Coexistence

    67. ecKnowledge® Demo Notes Service Request to SQL Server Replication Adding Data Transformation Let’s use Data Transformation feature in our CRM application scenario. If you look at this Account Profile data, in the Company Ownership field on the right, the Company Ownership is specify as a string which is Private or Public. Let’s say the DBA of SQL server would rather have this field specify as a 4 letter code. Let’s use ecKnowledge® to transform this value which is a string of public and private into 4 letter code PUBL and PRIV when it comes over to SQL server. We will be using Data Transformation Component object within ecKnowledge® Composer for this purpose. The Data Transformation object can be specified as a script or a Transformation Table, or by doing a lookup on a External Table. We have a simple VB script here, which looks up on the Company Ownership value and translate it base on the criteria SQL server expects. From within the VB script, you can also invoke external COM objects to perform more complex processing. For simple cases, you could transform one set of value to the other set of values by entering those values right here in the Transformation Table. You could also asked ecKnowledge® to lookup an external table to translate the value to a new set of codes. Once you have created the transformation, the next step would be for you to use it within the ecKnowledge® application. Let’s go ahead and modify the Notes CRM application to make use of this Data Transformation object. You would do that using the Column Mapping screen. The Company Ownership field now has a direct mapping between Lotus Notes form and SQL tables. Let’s remove this mapping for a moment and we will add it back again, this time, thru a Data Transformation object. As you can see now, as the Company Ownership data moves from Notes application to SQL Server, it is going to first execute the Company Ownership Data Transformation. Let’s go ahead to resave this job, and submit it to the ecKnowledge® Server. Let’s examine the Account Profile table in SQL server, and as you can see, now the Company Ownership field now has the new 4 letter code PRIV and PUBL as required by the SQL DBA.Let’s use Data Transformation feature in our CRM application scenario. If you look at this Account Profile data, in the Company Ownership field on the right, the Company Ownership is specify as a string which is Private or Public. Let’s say the DBA of SQL server would rather have this field specify as a 4 letter code. Let’s use ecKnowledge® to transform this value which is a string of public and private into 4 letter code PUBL and PRIV when it comes over to SQL server. We will be using Data Transformation Component object within ecKnowledge® Composer for this purpose. The Data Transformation object can be specified as a script or a Transformation Table, or by doing a lookup on a External Table. We have a simple VB script here, which looks up on the Company Ownership value and translate it base on the criteria SQL server expects. From within the VB script, you can also invoke external COM objects to perform more complex processing. For simple cases, you could transform one set of value to the other set of values by entering those values right here in the Transformation Table. You could also asked ecKnowledge® to lookup an external table to translate the value to a new set of codes. Once you have created the transformation, the next step would be for you to use it within the ecKnowledge® application. Let’s go ahead and modify the Notes CRM application to make use of this Data Transformation object. You would do that using the Column Mapping screen. The Company Ownership field now has a direct mapping between Lotus Notes form and SQL tables. Let’s remove this mapping for a moment and we will add it back again, this time, thru a Data Transformation object. As you can see now, as the Company Ownership data moves from Notes application to SQL Server, it is going to first execute the Company Ownership Data Transformation. Let’s go ahead to resave this job, and submit it to the ecKnowledge® Server. Let’s examine the Account Profile table in SQL server, and as you can see, now the Company Ownership field now has the new 4 letter code PRIV and PUBL as required by the SQL DBA.

    68. Exercise Scenario In the IT Service Request application, convert Priority field to “low” where Priority is null Create a data transformation using ServiceRequestWebForm table Add this Data Transformation to Priority using Column Mapping Run the application again

    69. Hands-on Lab Exercise 5a - Adding Data Transformation

    70. ecKnowledge® Component Action

    71. Actions Trigger Workflows Based On Events VBScript/JavaScript Allows You To Invoke External Business Logic In COM Or Other Components Send e-mail Perform Row/Document Level Manipulations As opposed to field/column-level manipulation using Data Transformation Another ecKnowledge® feature, which is especially useful for Collaborative application, is what is call as Workflow Actions. The Workflow Actions allow you to trigger workflow based on different events such as insert, update or delete a data in a system. The action allows you to invoke a workflow through VB Scripts or a Java script which allows you to even invoke external business logic in COM or other objects. You can also send email notification, perform row or document level manipulationsAnother ecKnowledge® feature, which is especially useful for Collaborative application, is what is call as Workflow Actions. The Workflow Actions allow you to trigger workflow based on different events such as insert, update or delete a data in a system. The action allows you to invoke a workflow through VB Scripts or a Java script which allows you to even invoke external business logic in COM or other objects. You can also send email notification, perform row or document level manipulations

    72. Actions Examples: Credit Limit Action: If a customer has exceeded the credit limit, the information is sent to the credit department’s customer tracking for processing Concatenation Action: First Name and Last Name fields to Full Name Splitting Action: Full Name field to First Name and Last Name Actions are always specific to a job

    73. Types of Actions Send e-mail Notifications Execute VBScript Or JavaScript Execute data source native scripts, such as Lotus Notes formula Execute a stored procedure on DBMS with input/output parameters Execute a Lotus Notes agent Attach files to message/document

    74. Exercise Scenario SQL DBA would like the Department Code to be translated from “HR” in Lotus Notes to “Human Resources” to run on insert and updates of records in Lotus Notes to SQL Server

    75. ecKnowledge® Demo Actions Let’s take a quick look at the Workflow Actions and other ways to specify business rules and to handle error within the ecKnowledge® process. In this Lotus Notes CRM co-existence application, we can use the Action object to notify SQL server users anytime a Lotus Notes user modifies the contact information in Lotus Notes. You can right click on Action component in the tree to create an Action. First thing you would do is give it a name. Next, you specify the job context, this would be the co-existence application that we just created. Will choose Update event to send this notification, another word, anytime dbo.AccountProfile table is updated because of a change in Lotus Notes system, we can send an email. When you click on the SendMail tab, using VB script, you can specify the recipients of this email and the content. So, anytime a Lotus Notes user updates the Contact information using Account Profile form, ecKnowledge® will automatically send a notification with the subject of the email as we constructed using VB script. Another ecKnowledge® component object that is useful for co-existence application is what’s call as the Rule object. It let’s you specify business rules to be checked before ecKnowledge® inserts or updates any information to the target systems. You can do that by creating a VB script. You can also use the Error Handler component object to take care of such business exceptions. You may notify the administrators or automatically fix the error conditions using VB scripts.Let’s take a quick look at the Workflow Actions and other ways to specify business rules and to handle error within the ecKnowledge® process. In this Lotus Notes CRM co-existence application, we can use the Action object to notify SQL server users anytime a Lotus Notes user modifies the contact information in Lotus Notes. You can right click on Action component in the tree to create an Action. First thing you would do is give it a name. Next, you specify the job context, this would be the co-existence application that we just created. Will choose Update event to send this notification, another word, anytime dbo.AccountProfile table is updated because of a change in Lotus Notes system, we can send an email. When you click on the SendMail tab, using VB script, you can specify the recipients of this email and the content. So, anytime a Lotus Notes user updates the Contact information using Account Profile form, ecKnowledge® will automatically send a notification with the subject of the email as we constructed using VB script. Another ecKnowledge® component object that is useful for co-existence application is what’s call as the Rule object. It let’s you specify business rules to be checked before ecKnowledge® inserts or updates any information to the target systems. You can do that by creating a VB script. You can also use the Error Handler component object to take care of such business exceptions. You may notify the administrators or automatically fix the error conditions using VB scripts.

    76. Hands-on Lab Exercise 5b – Action for record-level data manipulation

    77. Lotus Notes Multi-value list Collapse/expand when mapped to SQL Normalize the data to flat rows in SQL Replicated as a list to Outlook/Exchange Semi-colon separated text for other cases

    78. Lotus Notes File Attachments Map to SharePoint document library or as an attachment to other item (e.g. discussion) Map to Outlook/Exchange as an attachment Map to SQL Image columns as binary stream using Column Mapping Extract to file system

    79. Lotus Notes Rich Text SharePoint Converted to HTML WSS has limited support for HTML SQL Converted to Microsoft RTF or HTML when mapped to SQL Server “Text” column Text value extracted out in all other cases Exchange/Outlook Microsoft RTF

    80. Lotus Notes Rich Text DocLinks converted to HTTP URL on Domino Server OLE Embedded Objects are transferred as pictures and file attachments There will be some loss of formatting No other system supports as rich content structures as Notes does Some constructs do not have equivalent

    81. Security ecKnowledge enforces the security constructs on all the systems Does not convert Notes security to Microsoft security model Allows you to extracts Notes ACL to be able to write custom code to enforce security Tool for converting to WSS site permissions System integrators need to design and plan the security architecture

    82. Offline Storage Simple cases Offline features in Office 2003 More complex offline applications Custom applications based on MSDE/SQL Server Groove Networks ecKnowledge can use Web services to integrate Notes applications with Groove

    83. Workflow Exchange emails based on application events SQL Server notification service Custom .NET code BizTalk 2004 Human Workflow Services SourceCode, K2.NET, and Ascentn workflow engines ecKnowledge code generator is architected to leverage these products

    84. ecKnowledge Benefits Summary Coexistence leading to migration Rich data integration options Application generation Quick ROI and low operating costs Vast connectivity Rapid application development environment Non-intrusive to existing infrastructure

    85. Installation Hardware Requirements Intel P3 550 MHZ or above processor 256 MB RAM 50 MB disk space Software Requirements Windows NT/2000/XP/2003 Client Software for your data sources /put in your notes.///put in your notes.//

    86. System Requirements For Notes integration Notes client, with DLLs in System PATH ID file must have required access to databases Configure connection to target platform SQL Server, ShaerPoint, or other server Install using administrative login Request Activation Site Key after install Send Site Code using Key Editor to: key@casahl.com Finally, let’s look at the installation and system requirements of ecKnowledge®. In order to integrate with Lotus Notes, you need a Lotus Notes client on the computer, make sure the LN dll is specified in the system path environment variables. You must also configure the connection to the target systems such as SQL, Exchange or any other Microsoft servers. It is recommended that you install ecKnowledge® using NT administrative login Finally, let’s look at the installation and system requirements of ecKnowledge®. In order to integrate with Lotus Notes, you need a Lotus Notes client on the computer, make sure the LN dll is specified in the system path environment variables. You must also configure the connection to the target systems such as SQL, Exchange or any other Microsoft servers. It is recommended that you install ecKnowledge® using NT administrative login

    87. Key Editor Used to activate or maintain ecKnowledge license on the computer License is specific to a computer Site Code Send the Site Code and CRC to CASAHL to get an activation key Key Editor shows you the connectors you are licensed to and the license validity period

    88. ecKnowledge® System Databases ecKnowledge® relies on two internal databases System Catalog – repository for all object definitions Log – The file that records ecKnowledge® events

    89. Configuring System Catalog and Log Composer & Server should be configured to use the same system catalog Servers should share the catalog for load balancing Use SQL Server for large projects System catalog conversion tool can convert from one store to another Log database can be configured in Server Manager

    90. Server Administration Server Manager can be used to work with all the servers on the network Need administrative privileges on the server computer Configure number of threads depending on the hardware and the system load Options for shutdown for backup, scheduler, and port number

    91. ecKnowledge Summary Comprehensive environment to integrate, extend, and/or migrate Notes Applications to Microsoft platform Wizard-based UI Enterprise strength server Allows you to scale Full support for the best-of-breed products in the Microsoft platform Helps bring down the total cost of the projects ecKnowledge® also allows you to migrate and co-exist Notes applications with Microsoft best of breed servers. It provides you with easy to use wizard which allows you to create or maintain the migration applications. It is highly scalable and provides seamless integration to enterprise backend systems. ecKnowledge® also allows you to migrate and co-exist Notes applications with Microsoft best of breed servers. It provides you with easy to use wizard which allows you to create or maintain the migration applications. It is highly scalable and provides seamless integration to enterprise backend systems.

    92. Next Steps Huge opportunities for SIs to build solutions around CASAHL offering Join CASAHL Partner Program to jointly pursue the opportunities Try out ecKnowledge in your own environment Download from http://www.casahl.com Email to info@casahl.com to discuss your project requirements

More Related