The calendar synchronization allows the dates from the ingenious time recording to be transferred to external systems such as the Microsoft Exchange Server and vice versa. This allows users to view their ingenious times in Outlook and, depending on the configuration, also on the go. This makes it easy to plan appointments in the office and transmit them to the responsible employees / fitters.
The basic configuration of communication with the server takes place under Network and WebServer.
Settings made in the "Calendar synchronization" tab are: which appointments should be synchronized, how they should be displayed externally, whether external appointments should also appear in ingenious and which is the leading system.
Confiuration of the calendar synchronization |
The settings include:
Standard commission | Selection list | Selection to which commission new entries in ingenious are assigned by default. If dates are imported from outside, they are assigned to the standard commission. | ||||||
Commissions to be exported | List + Button | Selection of the commissions to be exported. Time entries assigned to other commissions are not transfered to the external system. The selection of the possible commissions takes place via a separate dialog, which can be opened via the button . | ||||||
Classification | Selection list | Definition of how appointments from ingenious should be classified in the external system - public, private or confidential. This determines the marking of the appointment in the mail client and possible access by third parties. | ||||||
Priority | Selection list | Marking the priority of an appointment from ingenious in the mail client as high, normal or low. | ||||||
Category | text field | Enter a category of the mail client to which the appointemnts from ingenious should be assigned. Can remain empty. | ||||||
Leading system | Selection list |
Selection of which system should be the leading one, i.e. whcih system determines the timelines of the data and overwrites any changes to the other system
| ||||||
Synchronize appointments created in ingenious | Checkbox | Determining whether appointments from ingenious should be transferred to the external system. | ||||||
Create external appointments in ingenious | Checkbox | Determining whether appointments from the external system should be created in inenious. | ||||||
Delete in ingenious | Radio buttons |
Configuration of what should happen to the appointments in ingenious if they have been deleted in the external system:
| ||||||
External deletion | Radio buttons |
Configuration of what should happen to the appointments in ingenious if they have been deleted in the external system:
|
All appointments that correspond to the configuration and that are a maximum of 100 days back and a maximum of 100 days in the future are always taken into account.
Depending of the size of the company and the number of appointments to be synchronized, the synchronization can be started manually or timed.
For manual start, the following script must be created, for example, for execution in the times list.
Within public override Dictionary |
Copy Code |
---|---|
var dict = new Dictionary<string, string>(); dict.Add("calendarReplication", "Replication Calendar"); return dict; |
Within public override void NavBarScript |
Copy Code |
---|---|
if (script == "calendarReplication") { string[] userToReplicate = new string[] { "admin" }; Boolean bError = false; string sResult = ""; string sDescription = ""; ingenious.net.Moduls.CalendarReplication.TimesReplication.Replicate(userToReplicate, out bError, out sResult, out sDescription); if (bError) ingenious.net.Tools.myMessageBox.Show(sResult, ingenious.net.Lang.getString("Error during replication"), MessageBoxButtons.OK, MessageBoxIcon.Error); else ingenious.net.Tools.myMessageBox.Show(sResult, ingenious.net.Lang.getString("Successful replication"), MessageBoxButtons.OK); } |
List script for calendar synchronization |
If the calendars of several users are to be synchronized, the logins of the users must be listed separately with a semicolon:
Aufzählung der Benutzer |
Copy Code |
---|---|
string[] userToReplicate = new string[]{"admin", "admin2"}; |
The synchronization is the started via the script entry in the project times list. A notification of success or errors is issued after completion.
Success message of the synchronization |
The ingenious scheduler, a fee-based additional module, is required for the time-controlled execution of the calendar synchronization.
A script must be created for the scheduler module.
Scheduler script calendar synchronization |
Copy Code |
---|---|
public void Exchange_Sync(out bool bError, out string sResult, out string sDescription) { string[] userToReplicate = new string[]{"admin"}; bError = false; sResult = ""; sDescription = ""; ingenious.net.Moduls.CalendarReplication.TimesReplication.Replicate(userToReplicate, out bError, out sResult, out sDescription); } |
Scheduler script for calendar synchronization |
If the calendars of several users are to be synchronized, the logins of the users must be listed separately with a semicolon:
Enumeration of users |
Copy Code |
---|---|
string[] userToReplicate = new string[]{"admin", "admin2"}; |
An action plan with the desired interval that executes the script must be created in the scheduler.
Scheduler action for calendar synchronization |
Success and error messages are written into the log of the scheduler.
Log of the scheduler |
To use the time-controlled calendar synchronization, an automatic update of 1 or 5 minutes can be set in the calendar settings within the filter block.
Synchronized calendar in ingenious |
Synchronized calendar in Outlook |