SourceForge.net Logo

openCRX Quick Start

Version 1.4.0

www.opencrx.org

The contents of this file are subject to a BSD license (the "License"); you may not use this file except in compliance with the License.

You may obtain a copy of the License here



Chapter 1. About this Book

This book describes what you need to get started with openCRX and how you configure openCRX.


Who this book is for

The intended audience are openCRX administrators and advanced users.


What do you need to understand this book

This book describes how to install openCRX and how to configure openCRX. If you intend to install openCRX it is a plus if you are comfortable with application servers and database servers (even though the explanations in this guide are rather detailed).


Chapter 2. Prerequisites

In a first step you must decide which database and which application server you are going to use.

As far as the database is concerned, the openCRX FAQ might give you some guidance in making your choice (please note that the Open Source distribution of openCRX includes all the required configuration/deployment files for MySQL, MaxDB, PostgreSQL, MS SQL, and Oracle.

As far as the application server is concerned, your best bet is probably the one you know best as long as it is J2EE-compliant (additional information regarding the choice of an application server is available in the openCRX FAQ). The Open Source distribution of openCRX includes all the required configuration/deployment files for JBoss (which is also Open Source and free), BEA Weblogic, and IBM WebSphere.

Having made your choices regarding database and application server you should get the appropriate openCRX Installation Guides from here. Following those guides you should then install the openCRX database and the application server.

The remainder of this document assumes that you decided for MySQL and JBoss and hence you should have a working installation of

  • the MySQL database (following the openCRX Installation Guide for MySQL) and

  • the JBoss application server (following the openCRX Installation Guide for JBoss)


Chapter 3. Create Logins

For the following steps we assume that the openCRX administrator has configured the users admin-Root, admin-Standard and guest with the appropriate roles on the application server. In the case of JBoss he would have edited the files openCRX.users.properties and openCRX.roles.properties in directory d:/pgm/jboss-3.2.5/server/default/conf as follows and then restarted the application server:

Example 3-1. openCRX.users.properties with user=password syntax.

admin-Root=rootSecret
admin-Standard=adminSecret
guest=guest

Example 3-2. openCRX.roles.properties with user.Roles=role1,role2 syntax.

admin-Root.Roles=OpenCrxRoot
admin-Standard.Roles=OpenCrxAdministrator
guest.Roles=OpenCrxUser

Before a user can login to openCRX you must first create a new login at the application server level. Of course you can automate this process. E.g. on JBoss you can replace the file-based org.jboss.security.auth.spi.UsersRolesLoginModule login module with the database login module org.jboss.security.auth.spi.DatabaseServerLoginModule and configure it to access the openCRX security tables security_Principal and security_Credential. Please refer to the JBoss installation guide if you want to make use of the database login module.

.


Overview

In order to setup openCRX, the following users have to perform various steps:

  • Root (default login is admin-Root)

    • Perform the initial openCRX setup. This initializes the database and loads basic openCRX working data (e.g. code tables). This is a one-time task.

    • Create a new segment. openCRX is multi-entity enabled. Each entity's data is stored in its own data segment. The segmentation of data is a basic and important concept of openCRX. It allows to setup private areas for different user groups, e.g. branches of a company or different small business companies. A user can have multiple logins, whereas a login allows access to exactly one segment. E.g. a user demo can have the logins demo-companyA and demo-companyB which are managed by root in the table security_Principal. If the user logs in as demo-companyA he/she has access to the segment companyA, i.e. he/she can only see data created by users of companyA. This is shown in Figure 3-1. A small to medium setup has typically only 1 data segment named Standard.

  • Administrator. Each data segment has its own administrator. E.g. the administrator for the segment companyA has the login admin-companyA, the administrator for the segment Standard has the login admin-Standard. The administrator is responsible for all administrative tasks of a data segment, e.g. creating users.

  • User: A user is standard openCRX user which manages accounts, products, leads, activities, etc. Each user is assigned to a segment and is member of one or more user groups.

Figure 3-1. Data in the openCRX database can be partitioned into data segments.

All users who access openCRX by the same web application (e.g. opencrx-core-CRX) also share the same customization files (user interface, code tables, basic data). The openCRX/Core README explains how to setup multiple customized web applications.

.

The following sections explain:


Initial Setup

After installing openCRX on the application server and creating the logins you are now ready for the initial setup.

Connect to the openCRX Root login page (e.g. http://localhost:8080/opencrx-core-CRX-Root/Login). Login as admin-Root as shown in Figure 3-2.

Figure 3-2. Initial login as admin-Root

The servlet loads the initial data, e.g. default security policies, subjects and principals, units of measurement, code tables, etc. The output is shown on the application server console as shown below:

Example 3-3. initializing the openCRX Root servlet

17:10:53,662 INFO  [STDOUT] Fri Jan 14 17:10:53 CET 2004: Login: requestURL=http://...
17:10:53,672 INFO  [STDOUT] Fri Jan 14 17:10:53 CET 2004: Login: locale=null
17:14:46,316 INFO  [STDOUT] inspecting /WEB-INF/config/ui/en_US
17:14:46,617 INFO  [STDOUT] inspecting /WEB-INF/config/ui/de_CH
17:14:46,877 INFO  [STDOUT] inspecting /WEB-INF/config/ui/es_MX
17:14:47,137 INFO  [STDOUT] inspecting /WEB-INF/config/ui/zh_CN
17:14:47,979 INFO  [STDOUT] inspecting /WEB-INF/config/ui/sv_SE
17:14:48,229 INFO  [STDOUT] inspecting /WEB-INF/config/ui/tr_TR
17:14:48,489 INFO  [STDOUT] inspecting /WEB-INF/config/ui/fa_IR
17:14:48,760 INFO  [STDOUT] inspecting /WEB-INF/config/ui/fr_FR
17:14:49,030 INFO  [STDOUT] inspecting /WEB-INF/config/ui/ru_RU
17:14:49,301 INFO  [STDOUT] loading /WEB-INF/config/ui/en_US/filter.xml
17:14:49,621 INFO  [STDOUT] loading /WEB-INF/config/ui/en_US/task.xml
17:14:49,631 INFO  [STDOUT] loading /WEB-INF/config/ui/en_US/faxactivity.xml
17:14:49,641 INFO  [STDOUT] loading /WEB-INF/config/ui/en_US/lead.xml
17:14:49,651 INFO  [STDOUT] loading /WEB-INF/config/ui/en_US/budget.xml
...
17:14:54,007 INFO  [STDOUT] loading /WEB-INF/config/ui/ru_RU/security.xml
17:14:54,017 INFO  [STDOUT] loading /WEB-INF/config/ui/ru_RU/building.xml
17:14:58,594 INFO  [STDOUT] storing 1589 ui elements
17:15:04,512 INFO  [STDOUT] done
17:15:06,655 INFO  [STDOUT] loading texts
17:15:06,665 INFO  [STDOUT] loading /WEB-INF/config/texts/en_US/texts.properties
17:15:06,665 INFO  [STDOUT] loading /WEB-INF/config/texts/en_US/opencrx.texts.properties
17:15:06,675 INFO  [STDOUT] loading /WEB-INF/config/texts/de_CH/opencrx.texts.properties
17:15:06,675 INFO  [STDOUT] loading /WEB-INF/config/texts/de_CH/texts.properties
17:15:06,686 INFO  [STDOUT] loading /WEB-INF/config/texts/es_MX/opencrx.texts.properties
17:15:06,686 INFO  [STDOUT] loading /WEB-INF/config/texts/es_MX/texts.properties
17:15:06,696 INFO  [STDOUT] loading /WEB-INF/config/texts/zh_CN/texts.properties
17:15:06,696 INFO  [STDOUT] loading /WEB-INF/config/texts/zh_CN/opencrx.texts.properties
17:15:06,706 INFO  [STDOUT] loading /WEB-INF/config/texts/sv_SE/texts.properties
17:15:06,706 INFO  [STDOUT] loading /WEB-INF/config/texts/sv_SE/opencrx.texts.properties
17:15:06,716 INFO  [STDOUT] loading /WEB-INF/config/texts/tr_TR/opencrx.texts.properties
17:15:06,716 INFO  [STDOUT] loading /WEB-INF/config/texts/tr_TR/texts.properties
17:15:06,716 INFO  [STDOUT] loading /WEB-INF/config/texts/fa_IR/texts.properties
17:15:06,726 INFO  [STDOUT] loading /WEB-INF/config/texts/fa_IR/opencrx.texts.properties
17:15:06,726 INFO  [STDOUT] loading /WEB-INF/config/texts/fr_FR/opencrx.texts.properties
17:15:06,736 INFO  [STDOUT] loading /WEB-INF/config/texts/fr_FR/texts.properties
17:15:06,736 INFO  [STDOUT] loading /WEB-INF/config/texts/ru_RU/opencrx.texts.properties
17:15:06,746 INFO  [STDOUT] loading /WEB-INF/config/texts/ru_RU/texts.properties
17:15:06,846 INFO  [STDOUT] loading codes
17:15:06,856 INFO  [STDOUT] loading /WEB-INF/config/code/en_US/usageaddress_ext_phone.xml
17:15:08,088 INFO  [STDOUT] loading /WEB-INF/config/code/en_US/accounttype.xml
17:15:08,098 INFO  [STDOUT] loading /WEB-INF/config/code/en_US/emailtype.xml
...
17:15:14,236 INFO  [STDOUT] loading /WEB-INF/config/code/ru_RU/emailtype.xml
17:15:14,256 INFO  [STDOUT] loading /WEB-INF/config/code/ru_RU/ratingtype.xml
17:15:14,266 INFO  [STDOUT] loading /WEB-INF/config/code/ru_RU/usageaddress.xml
17:15:14,286 INFO  [STDOUT] loading /WEB-INF/config/code/ru_RU/numberofemployeescategory.xml
17:15:14,316 INFO  [STDOUT] storing 1123 code entries
17:15:42,437 INFO  [STDOUT] done
17:15:42,437 INFO  [STDOUT] inspecting /WEB-INF/config/filters/
17:15:42,527 INFO  [STDOUT] loading /WEB-INF/config/filters/
17:15:44,219 INFO  [STDOUT] filter loaded for references 1747
17:15:44,219 INFO  [STDOUT] loading data
17:15:44,219 INFO  [STDOUT] loading /WEB-INF/config/data/security_subjects.xml
17:15:46,403 INFO  [STDOUT] storing 4 objects
17:15:47,544 INFO  [STDOUT] loading /WEB-INF/config/data/security_policy.xml
17:15:47,614 INFO  [STDOUT] storing 5 objects
17:15:47,684 INFO  [STDOUT] loading /WEB-INF/config/data/uom_SI_and_Paper.xml
17:15:48,796 INFO  [STDOUT] storing 38 objects
17:15:51,981 INFO  [STDOUT] loading /WEB-INF/config/data/security_realms.xml
17:15:52,041 INFO  [STDOUT] storing 4 objects
17:15:52,111 INFO  [STDOUT] done

After the successful startup of the root servlet you see the start screen as shown in Figure 3-3. You should see the root objects openCRX Administration, Codes, UOMs, Security Realms, Security Policies and Security Users / Groups.

Figure 3-3. Initial screen after login as admin-Root

If you started with an empty database (or imported new codes) you MUST SHUT DOWN the servlet or your app server, restart it, and then login as admin-Root again.

You can now navigate through the Codes, UOMs, etc. You should see the data which was initially loaded by the servlet. Verify now whether the principal admin-Root has been created correctly: click Security Realms > select the Default realm. You then see a tab containing the principal admin-Root and the principal group Roots, Administrators, and Users as shown in Figure 3-4.

Figure 3-4. Realm "Default" is created automatically

Next you must set the access levels of all the codes to global (Browse), basic (Update), and basic (Delete). Open the code provider by clicking on Codes. Click the operation expand button [>] and then click the operation tab [Set Access Level]. Set the parameters of this operation as shown in Figure 3-5.

Figure 3-5. admin-Root sets Access Levels of Codes

Finally, you must set the access levels of all the units of measurment to global (Browse), basic (Update), and basic (Delete). Open the UOM provider by clicking on UOMs. Click the operation expand button [>] and then click the operation tab [Set Access Level]. Set the parameters of this operation as shown in Figure 3-6.

Figure 3-6. admin-Root sets Access Levels of Uoms

Congratulations! You have successfully completed the initial setup of openCRX.


Creation of a new data Segment

The operation Create Administrator allows you to create a new segment including an administrator's account which allows you to manage the newly created segment. In the Root GUI click on openCRX Administration and open the operation button Create Administrator. Set the field realm to Default and the segment name to Standard. Set the password to *. This creates a segment with name Standard. This is shown in Figure 3-7.

Figure 3-7. Create a new Segment

After creating the segment, open the tab Security Realms > Default and verify whether the principal admin-Standard has been created as shown in Figure 3-8.

Figure 3-8. Verify creation of new principal admin-Standard

Next you have to open a new browser window and start the standard GUI by entering the URL http://localhost:8080/opencrx-core-CRX/Login. Login as admin-Standard as shown in Figure 3-9.

Figure 3-9. Login as admin-Standard

Before you can login as admin-Standard you must add the login to your application server users list. E.g. in JBoss you must add the user to openCRX.users.properties:

After the first successful login as administrator you have to log out and log in again. This properly initializes the GUI.

Initially, the administrator homepage does not contain any charts. You can activate the charts by clicking Refresh (but do not forget to log out and log in again if it is the first time you logged in as administrator; otherwise the Refresh operation will fail!). Now the administrator homepage should look as shown in Figure 3-10.

Figure 3-10. Homepage of admin-standard (charts initialized)

Verify in Security Users / Groups whether the following entries exist as shown in Figure 3-11:

  • Standard\\admin-Standard

  • Standard\\Administrators

  • Standard\\Unassigned

  • Standard\\Users

These default users and groups were created by the operation Create Administrator you previously executed as Root.

Figure 3-11. Verify Users and User Groups

Congratulations! You have successfully created the new segment Standard.


Create a User

The creation of a new user is performed in two steps:

  • as Root: create a new principal

  • as segment Administrator: create a new user

Open a new browser window, start the Root GUI by entering the URL http://localhost:8080/opencrx-core-CRX-Root/Login and then login as admin-Root. Create a new principal by navigating to Security Realms > Default and then clicking the new Principal button as shown in Figure 3-12.

Figure 3-12. Create a new User by clicking on the button [Principal]

You only have to set the field qualifier at the bottom of the new principal form. Enter the principal name (login name) of the user, e.g. guest as shown in Figure 3-13. The other fields can be left blank. They are set automatically by the operation Create User which is performed by the segment administrator in the next step.

Figure 3-13. Enter Prinicpal name (=Login name) into the field "Qualifier"

Before you can login as guest you must add the login to the application server's users list. E.g. in JBoss you must add the login to the file openCRX.users.properties.

Next you must add the newly created principal to the appropriate principal group. Navigate to the newly created principal (i.e. load it into the inspector) and click on the looking glass in the tab Member of Principal Groups to open the Lookup Inspector:

Figure 3-14. Add Principal to Principal Group - Step 1

The Lookup Inspector lists all the principals and principal groups of the respective realm; principal group entries have a check box:

Figure 3-15. Add Principal to Principal Group - Step 2

Click the check box next to the principal group you want to add the newly created principal to (normal users should be added to the principal group Users, segment administrators should be added to the principal group Administrators). This will automatically close the Lookup Inspector again.

Consult to the openCRX Security Guide for additional/more detailed information on principals and principal groups.

Back in the tab Member of Principal Groups you click the button [+] to add the principal to the principal group selected in the previous step.

Figure 3-16. Add Principal to Principal Group - Step 3

Finally, this principal group should show up in the Grid Member of Principal Groups:

Figure 3-17. Add Principal to Principal Group - Step 4

Now you have to go back to the Standard GUI (the servlet where you are logged in as admin-Standard). As administrator you first you have to create a new contact in Accounts for the new user guest. Enter at least the first name and last name as shown in Figure 3-18.

Figure 3-18. As admin-Standard, create a Contact for the new user "guest"

Click the button [Save] to store the contact.

Then select User Homepages and click on the button Create User. This operation allows you to create and initialize a new user. This operation can also be applied if the data of an existing user is corrupt. Set the fields to the values as shown in Figure 3-19.

Figure 3-19. Operation [Create User]

Set the fields user id and principal name to the login name of the new user, e.g. guest. Set the field realm to Default. Set the field contact to the contact you have created previously (use the lookup inspector which appears if you click the looking glass icon) and set the primary user group to Standard\\Users (also use the lookup Inspector to do this). The password fields can be set to the value *.

Passwords are stored in the table security_Credential. If you do not have the login module of your application server configured to access the table security_Credential then the setting of the passwords in openCRX has no effect.

Click the button [OK] to create the new user. The operation creates a new homepage and links the Principal with the newly created user. You can verify the result of the operation by opening User Homepages segment which shows the newly created homepage.

As root you can also verify whether the creation of the new user was successful. In the Root GUI Security Realms > Default select the principal guest. The fields user and primary user group should be set as shown in Figure 3-20.

Figure 3-20. As root, verify creation of new user "guest"

Congratulations! You have successfully created a new user guest. The new user should now be able to login in the standard GUI.

Once the new user opens a browser window and connects to the standard GUI by entering the URL http://localhost:8080/opencrx-core-CRX/Login he will be able to login as guest as shown in Figure 3-21.

Figure 3-21. The new user "guest" can login in the standard GUI

The new user login must be added to the application server's users list, e.g. in JBoss to openCRX.users.properties:

After the first successful login as guest you have to log out and log in again. This properly initializes the GUI.


Chapter 4. Managing the Provider List

The default installation of openCRX activates all providers that are included in the Open Source distribution. The openCRX administrator may wish to remove certain providers from the provider list. This chapter shows how you can achieve this.

Let us assume that the openCRX administrator decided to hide the provider Forecasts.

Figure 4-1. Provider List

The provider list is contained in the file web.xml which is contained in the file opencrx-core-CRX.war (contained in opencrx-core-CRX-web.ear, both files are archive files that can be opened with a ZIP utility) deployed to your application server. The following discussion assumes that we use the JBoss application server.

In the case of the JBoss application server you should find the file opencrx-core-CRX-web.ear in the directory ./jboss-3.2.5/server/default/deploy. To make changes to files contained in the file opencrx-core-CRX-web.ear you can basically decide between the following two approaches (remember to stop the application server BEFORE you make any changes!):

  • (1) expand/unzip the EAR (2) extract the file to be changed from the WAR (3) change the file (4) add the changed file back to the WAR, and then (5) pack/zip the EAR back together; this process is obviously pretty cumbersome if you intend to make frequent changes

  • you can first extract all the files contained in the EAR file to a directory with the same name as the EAR file, e.g. opencrx-core-CRX-web.ear; you can then extract all the files contained in the WAR file to a directory with the same name as the WAR file, e.g. opencrx-core-CRX.war (to avoid naming conflicts you do this by extracting the files to a temporary directory, delete the WAR file, and then rename the temporary directory to opencrx-core-CRX.war); now you can change files without unzipping/zipping

Let us now proceed. First you need to stop your application server. Then you locate the file web.xml in the directory .\jboss-3.2.5\server\default\deploy\opencrx-core-CRX-web.ear\opencrx-core-CRX.war\WEB-INF. Open it with an editor and locate the following few lines:

Example 4-1. web.xml with the provider declaration for Forecasts

<!-- Forecasts -->
<init-param>
  <param-name>rootObject[9]</param-name>
  <param-value>xri:@openmdx:org.opencrx.kernel.forecast1/provider/CRX/segment/${SEGMENT}</param-value>
</init-param>
<init-param>
  <param-name>rootObjectClass[9]</param-name>
  <param-value>org:opencrx:kernel:forecast1:Segment</param-value>
</init-param>

To hide this provider you can either delete the above lines or comment them out as shown in the following Example:

Example 4-2. web.xml with the Forecasts provider commented out

<!-- Forecasts -->
<!--
<init-param>
  <param-name>rootObject[9]</param-name>
  <param-value>xri:@openmdx:org.opencrx.kernel.forecast1/provider/CRX/segment/${SEGMENT}</param-value>
</init-param>
<init-param>
  <param-name>rootObjectClass[9]</param-name>
  <param-value>org:opencrx:kernel:forecast1:Segment</param-value>
</init-param>
-->

Providers must be numbered with consecutive numbers (i.e. you must not skip numbers!). If you for example decided to hide the Forecasts provider then you must adapt the numbers of the following providers (Workflows, User Homepages, Security/Identity) accordingly.

Save the changed file and restart your application server. The provider list of openCRX will not show "Forecasts" anymore.

To unhide/reactivate these providers, simply uncomment the declarations in the file web.xml.


Chapter 5. Security

We do not recommend learning about security with mission critical data. Backup your data BEFORE you make changes if you are not certain what the consequences are! The default settings should work for virtually all users; the probability of getting yourself into troubles by changing default settings should not be underestimated. Read and understand the openCRX Security Guide BEFORE you make any changes.

Starting with openCRX v1.4.0 access control is activated. Please refer to the openCRX Security Guide for a detailed explanation of role-based security as it is implemented by openCRX. In this chapter we just raise a few issues, including disaster recovery if you locked yourself out and/or screwed up the security settings in a major way.


Security Setting of New Objects

New objects are by default created with the following security settings:

  • Owning User: User who is creating the object

  • Browse Access Level: 3 - deep

  • Update Access Level: 2 - basic

  • Delete Level: 2 - basic

  • Owning Groups: Primary User Group of the user who is creating the object

Please note that a users's primary user group is set by the segment administrator with the operation [Create User]. To change an existing user's primary group, the segment administrator simply executes the operation [Create User] again with a new parameter for primary user group.

If you see N/P in a field instead of a more meaningful value you probably do not have browse access to the respective object (N/P stands for No Permission).


Resetting Security

If you get the setting of Update Access Level wrong you may not be able to change the respective object from the GUI anymore. For example, the only way to recover from setting Update Access Level to N/A for a particular object is to edit the data directly in the database!

If you (or one of your users) managed to screw up the security settings in a major way you may be forced to reset all security settings to a well-defined state. Included in the openCRX distribution are example scripts set-access-level.sql for all supported DBs. Please refer to the openCRX Security Guide for a detailed explanation of security BEFORE you execute any scripts. Consider running the complete script set-access-level.sql as a last resort only! In many cases it you will probably get away with fixing the security settings of a particular object on the DB.


Chapter 6. Importing Data

The task of importing data is handled by importers. In principle, you can import almost anything into openCRX, it's really only a matter of writing an importer. The Open Source distribution of openCRX includes importers for vCard and iCalendar files in addition to the XML importer. This allows you to import data from a large variety of other programs, including Microsoft Outlook. This chapter shows how to import data.


Importing vCard Files

These are the steps to import a vCard file:

  • click on the provider Accounts

  • click on the operations button [Import] to unhide the import dialog

  • select the appropriate language

  • click the Browse button and navigate to the vCard file you want to import

  • click to button [OK] to start the import operation

Figure 6-1. Operation vCard import

The result of the import operation also contains a link to the created/updated contact (only if the import was successful).

Figure 6-2. Result of the vCard import operation


Importing iCalendar Files

These are the steps to import an iCalendar file:

  • click on the provider Activities

  • click on the operations button [Import] to unhide the import dialog

  • select the appropriate language

  • click the Browse button and navigate to the iCalendar file you want to import

  • click to button [OK] to start the import operation

Figure 6-3. Operation iCalendar import

The result of the import operation also contains a link to the created/updated meeting (only if the import was successful).

Figure 6-4. Result of the iCalendar import operation


Importing XML Files

These are the steps to import an XML file:

  • click on the provider My Homepage

  • click on the operations button [Import] to unhide the import dialog

  • select the appropriate language

  • click the Browse button and navigate to the XML file you want to import

  • click to button [OK] to start the import operation

Figure 6-5. Operation Import on UserHome

Please note that only schema-compliant XML files can be imported.


Chapter 7. Exporting Data

The task of exporting data is handled by exporters. In principle, you can export any object from openCRX, it's really only a matter of writing an exporter. The Open Source distribution of openCRX includes exporters for vCard and iCalendar files in addition to XML files. This allows you to export contacts and meetings/sales visits or any other object from openCRX. vCard and iCalendar files can be imported by a large variety of other applications, including Microsoft Outlook. This chapter shows how to export data.


Exporting vCard Files

These are the steps to export a contact to a vCard file:

  • click on the provider Accounts and navigate to the contact you want to export

  • click on the operations button [Export as vCard] to unhide the export dialog

  • select the appropriate language

  • click to button [OK] to start the export operation

Figure 7-1. Operation vCard export

If the export operation was successful the result will contain a link to the vCard file. Click on that link to download the vCard file from the openCRX server.

Figure 7-2. Result of the vCard export operation


Exporting iCalendar Files

These are the steps to export a meeting (or a sales visit) to an iCalendar file:

  • click on the provider Activities and navigate to the meeting (or sales visit) you want to export

  • click on the operations button [Export as iCalendar] to unhide the export dialog

  • select the appropriate language

  • click to button [OK] to start the export operation

Figure 7-3. Operation iCalendar export

If the export operation was successful the result will contain a link to the iCalendar file. Click on that link to download the iCalendar file from the openCRX server.

Figure 7-4. Result of the iCalendar export operation


Exporting XML Files

All objects can be exported as XML files. These are the steps to export (for example) a meeting (or a sales visit) to an XML file:

  • click on the provider Activities and navigate to the meeting (or sales visit) you want to export

  • click on the expand button [>] and then on the operations button [Export XML] to unhide the export dialog

  • click to button [OK] to start the export operation

Figure 7-5. Operation Export XML

The XML file is automatically zipped. You can download this file and save it.


Chapter 8. Next Steps


Appendix A. Appendix


Bibliography

[01] openCRX - the leading open source CRM solution, opencrx.org.

[02] openMDX - The leading open source MDA platform, openmdx.org.

http://www.crixp.com/ http://www.openmdx.org/