Handling ConcourseSuite Data
Users interested in ConcourseSuite CRM are companies that already have a CRM application with lots of valuable Customer data or are companies that have Customer data in various other forms (Excel documents, Custom database etc) and would like to use ConcourseSuite CRM going forward.
To bring in Customer data from various sources and also to move data out of ConcourseSuite, users can leverage some of the existing tools & features which allow the user to import/export data in and out of a ConcourseSuite database.
Contact/Account Importers
The following 3 importers are available for bringing in people and organization information into ConcourseSuite.
- Leads Importer - Allows importing of people as Leads into ConcourseSuite CRM (Available in the Leads module)
- Contacts Importer - Allows importing of people as General Contacts into ConcourseSuite CRM (Available in the Contacts module)
- Account Contacts Importer - Allows importing of people as Account Contacts into ConcourseSuite CRM (Available in the Contacts module)
Note: When importing Contacts using the Account Contacts Importer, if the Company Name is present in the record being imported, then an Account is created and the Contact is associated with the new Account that was created. If the Company Name is NOT present, then the Contact is imported as an Individual Account and you can see an Account as well as a Primary Contact record in ConcourseSuite.
Data Transfer Application
ConcourseSuite CRM has a Data Transfer Application (Reader/Writer) written in Java which can read data from various input formats and write data to various output formats. These applications can interface with files, databases, web services, etc.
To import related data, for example Accounts, Contacts, Opportunities, and Notes, a Reader can be developed and executed.
ConcourseSuite CRM includes a Writer that knows how to write data into ConcourseSuite CRM, and comes with some basic Readers.
Readers are Java programs that send data to a Writer and associates data during the reading/writing process. The reader and writer are configured and executed by the Transfer application.
Some of the Readers available in ConcourseSuite are:
- ImportAccountContacts - Reads from a .CSV file and populates Organization & Contact objects
- ImportAccounts - Reads from a .CSV file and populates Organization objects
- ImportGeneralContacts - Reads from a .CSV file and populates Contact objects
- CFSDatabaseReader - Reads data out of a ConcourseSuite database
Some of the Writers available in ConcourseSuite are:
- TextWriter - Writes to a text file
- Cfshttpxmlwriter - Sends XML packets to a remote ConcourseSuite server (using ConcourseSuite's XML API)
A configuration file of the form shown below is to be used to execute the Transfer Application. The config file needed by the Transfer application, has information about the Reader that needs to be loaded and a Writer that needs to be passed to the Reader to read/write data.
<data-import-config> <description> Copies contacts from an Excel generated CSV file into ConcourseSuite under a new Electronic Import user </description> <reader class="org.aspcfs.apps.transfer.reader.cfs.ImportAccountContacts"> <propertyFile>@PROPERTY.FILE@</propertyFile> <csvFile>@CSV.FILE@</csvFile> </reader> <writer class="org.aspcfs.apps.transfer.writer.cfshttpxmlwriter.CFSHttpXMLWriter"> <url>http://@URL@/ProcessPacket.do</url> <id>@ID@</id> <code>@CODE@
<systemId>@SYSTEM.ID@</systemId>
</writer>
</data-import-config>
</code>
The Readers and Writers exchange Data using a DataRecord object which encapsulates a database record in ConcourseSuite.
Backup & Restore
The Backup & Restore application is built on top of the Data Transfer Application explained above. There a set of Readers and Writers which read from a ConcourseSuite database and store the data is an XML format in a file and then read the data from the XML file and store it in the database using a specialized writer.
Backup Process
The Backup tool is comprised of a Reader/Writer combination and uses the following in ConcourseSuite CRM
CFSDatabaseReader CFSXMLWriter
The CFSDatabaseReader reads all of the database records from any ConcourseSuite CRM database and passes it to a Writer. The CFSXMLWriter is used in the backup process to write the records into an XML file which conforms to a particular Centric Backup File Format.
Restore Process
The Restore tool is comprised of a Reader/Writer combination and uses the following in ConcourseSuite CRM
CFSXMLReader CFSXMLDatabaseWriter
The CFSXMLReader reads all of the records from the backup XML file and passes it on to the CFSXMLDatabaseWriter which stores the records to the database.
Developer Notes
The Backup and Restore application needs to be maintained. The following is a list of items that need to be maintained:
- As new tables and new columns are introduced into the database schema the import-mappings.xml file needs to be updated with mappings to reflect the new columns and new tables
- As new tables are introduced, the existing data reader classes (eg: ImportCommunications.java) need to be updated to read from these new tables.
- If new modules are introduced in CCRM, they might require a new data reader class that reads from all the database tables that were introduced for the new module in the right sequence. The import-mappings.xml should also be updated with the new data reader information.
- The restore application will need to be tested to see if it works with the new modules/tables. The Database Writer used by the restore process might need to be upgraded based on any required functionality
Sign in to add your comment.