In a large number of businesses, information is scattered around many different applications. For example, employee information is stored in multiple systems, each responsible for a part of the process of managing the activities around an employee. An example of this is the information of an applicant. This is usually stored in a recruitment system. However, employee information is stored in a human resource system while payroll information is stored in another separate system. Consequently, when an employee is hired, multiple systems need to be updated.
In this example, there are two possible ways of doing this. The first is a manual process whereby the information of the successful applicant is updated to the human resource and payroll systems manually. The recruitment system will also have to be updated to indicate the status of the applicant. This is not only cumbersome and time consuming but may also give rise to data inconsistencies due to typo error or incomplete updates.
Another way is managing the synchronization via scheduled jobs. For example, every three hours, the system checks for updates and replicates the updated information from one system to another. In practice, this may result in employees waiting for systems to replicate. As a result, processes may be hindered. For example, consider the process where an employee creates a new customer in the CRM system and has to wait for up to three hours before an order can be entered for this account in the back office ERP system.
In order to achieve this, an ideal situation is to have a connectivity layer between your application and other external applications. This layer acts as a bridge between your application and other applications. This allows different external applications to obtain the same data via the connectivity layer. In addition, having a connectivity layer helps to extend the usability of your applications. External applications can connect and use the provided services instead of having to develop or customize your application to cater for these applications.
To cater for this, the connectivity layer should contain a new technology, namely web services.
Web services is a term describing the technology used for transmitting data over the Internet. The service also allows programmatic access to that data. Web services do not have a visual interface. Web services make it possible to perform tasks that can be executed by other applications via the Internet. Examples of tasks that can be performed are:
Web services make it easier for applications to use an exposed task to enhance their own functionalities. Using web services also reduces the need to know how the task works. Offering the required data will result in the web services performing its task and presenting the results.
For example, a sales application provides a web service that calculates the sales commission. Offering this web service allows other applications, located on different computers with internet connections, to utilize this service. A payroll application can now send an employee ID to a web service called “sales commission”. The web service will perform the calculations and send back the calculated commission for that specific employee. The payroll application can now enter this commission into the employee’s monthly salary. Alternatively, a reporting application can also send date(s) values to the “sales commission” web service where it will calculate and provide the relevant sales commission figures. The reporting application can use this data to generate related sales reports.
There are several types of tasks that can be exposed via web services. For example, the “List services” web service gives a list of data and the “Process services” web service allows the processing of specific processes. The web service that is introduced by Exact Synergy Enterprise is the “Entity services” web service. This web service makes it easier for applications to exchange data with Exact Synergy Enterprise.
Exact Synergy Enterprise is extended with a connectivity layer that supports web services and a notification function.
Web service – Entity:
The Entity web service makes it possible to exchange data. As of product update 240, the entities Accounts, Resources, Items, Projects, Requests, and Documents are supported. This means that applications can now create, read, update or delete data in those entities via web services.
The notification functionality offers the possibility of notifying subscribed applications about changes in the source data. Those subscribed applications will automatically be notified; they do not need to poll for changes. The notification functionality works for the entities that are exposed via web services. All changes that are made to those entities will be notified. Those changes can be made by Exact Synergy Enterprise, XML, or web services. In all situations, the subscribers will be notified.
The introduction of the Entity web service in Exact Synergy Enterprise helps your organization to make data more accessible for other applications. At the same time, the notification functionality will ensure that subscribed applications will be updated “automatically” with changes made in Exact Synergy Enterprise. These functionalities will help to provide you with full control over data shared by multiple applications and improve the efficiency of your organization.
Return to Exact Synergy Enterprise Web Services Startpage.