There are 3 basic high-level scenarios in which e-Synergy can be used:
This document gives an overview of the applications and tools in e-Synergy that were especially developed for use in the third scenario, the ASP model.
1. Creation of a customer database
A new database for a specific customer, can be created directly from the account card in e-Synergy, by going to edit mode, and pressing the "New" link in the database section. This will lead to the "New database" screen (see below), with some customer-specific data for the new database filled in. Important: When the customer database has been created, the e-Synergy web site for this database must still be created by hand in the Internet Services Manager. Of course, this only needs to be done, if the customer needs to have direct access to his own database over the Internet.When a customer database has been created already, in some other way, the server, database and Web site, can be entered afterwards in the customer card in e-Synergy. It is important that all this information is correct, because all other e-Synergy applications for the ASP model rely on this information.
2. Starting Globe 2000 on a customer's database, directly from e-Synergy
When the database and server name for a customer has been entered in e-Synergy, Globe 2000 can be started on this database directly from e-Synergy, by pressing the hyperlink on the database name in the customer's card in e-Synergy. This will only work, if the user has a local installation of Exact Globe 2000 on his own machine, and has access over the local network to the specified database and server.
3. Updating all customer databases
When the e-Synergy software is updated, first the central database needs to be updated, by going into this database using e-Synergy, and pressing the Update button in the Update screen that you will see. After that, all the customers' databases need to be updated. This can be done by going into the Synergy environments for all these database,s or starting Globe 2000 on these databases, and updating them one by one. Another option is to use the UpdateAccountDatabases tool. This tool will do the following:
It can be started in the following way:
d:\synergy\bin\UpdateAccountDatabases.exe /S:CentralServer /D:CentralDatabase [/AC1:AccountCodeFrom] [/AC2:AccountCodeTo] [/LIC:LicenseFile]
It should be started from the installed e-Synergy environment. If it is started from another location, the /I parameter should be added, pointing to the e-Synergy environment, for example:
c:\UpdateAccountDatabases.exe /S:CentralServer /D:CentralDatabase /I:d:\synergy
The AC1 and AC2 parameter can be used to select a range of account codes to update, for example to run multiple instances of UpdateAccountDatabases.exe simultaneously, each on a separate range.
Example:
c:\UpdateAccountDatabases.exe /S:CentralServer /D:CentralDatabase /I:d:\synergy /AC1:1000 /AC2:2000
You should not run 2 (or more) instances of UpdateAccountDatabases simultaneously on the same, opr overlapping, range of account codes.
To automatically update the licenses in all customer databases, you can also supply the license file. After a customer's database has been updated, the new license file will be applied to the database. Example:
c:\UpdateAccountDatabases.exe /S:CentralServer /D:CentralDatabase /I:d:\synergy /LIC:d:\data\license.elc
Of course, if all database are already at the correct batch, you can use this to simply update the license in all databases, without any batch update.
4. Running e-Synergy background processes on customer databases
e-Synergy contains many background processes that perform important tasks in the e-Synergy database, such as creating full-text indexes, updating user accounts, updating projects, etc. Usually, for every database and every process a seperate Scheduled Task in Windows, or job in SQL Server is created, to run this process on a regular basis. However, if you have a lot of customer databases, you would have to create a lot of tasks or jobs to schedule all processes for all databases. To solve this problem, we have created a so-called meta-job, that can run any process you want, for all customer databases. This meta-process is called AccountJobs, and can be scheduled with a command-line like the following:
d:\synergy\bin\AccountJobs.exe /S:CentralServer /D:CentralDatabase /P:ExactFullText.exe
where the /P parameter contains the EXE name of the process that should be run for all customer databases. The AccountJobs process will then start the specified process on every customer database, one by one. This will be done sequentially, i.e. the AccountJobs will wait until the process for one customer has finfished, until starting the process for another customer. This is to avoid server overload, which might happen if thousands of processes would be launched simultaneously.
5. XML replication to a customer database
The e-Synergy background process XMLReplicator can replicate data to any customer's database. Any data that is defined as one of the e-Synergy XML "topics" can be replicated. These XMl topics can be seen in e-Synergy in "System | XML | Topics".
To set up the replication, first, you must first define a replication "source", where the data comes from. In many cases this will be the central e-Synergy database itself, but this can also be a separate "model" database. You define this source in e-Synergy in "System | XML | Replication - Sources". The source database must have it's own web site.
After this, you can define which topic is replicated to which customer, in "System | XML | Replication - Targets". Important: Both the replication source and target definitions must be made in the central e-Synergy database.
Finally, you must schedule the XMLReplicator process to run at regular times (or you can, of course, run this process from the command line). It has the following command line:
d:\synergy\bin\XMLReplicator.exe /S:CentralServer /D:CentralDatabase [/TOPIC:TopicName] [/ACCOUNTCODE:AccountCode]
The TOPIC and ACCOUNTCODE are non-mandatory arguments which you can use if only specific topics, or specific customers should be replicated.