Applications
Using Asset Management applications, you can automatically perform other custom automated actions when you run certain commands on objects.
If you are a member of the Administrators or Application Administrators group, you can manage applications in the WebApp - Administration - Applications.
Application Programming
The prerequisite for creating an application is a good knowledge of C# programming,
Alvao.API and Alvao database.
Database transactions
If you need to perform Alvao operations in your application, we recommend that you preferably use the prepared Alvao.API methods to do so,
which means you don't have to deal with database connections and transactions.
If you need to access the Alvao database directly in your application, use the ConnectionScope to connect to the database,
which you get by calling the AlvaoContext.GetConnectionScope() method.
The LegacyConnection and LegacyTransaction properties contain a connection and possibly an open transaction that you can use, for example, in an object of class SqlCommand.
You can find an example use case in the CostsCalculation application template.
Note:
Most application methods also accept a database connection and an open transaction as their input parameters, e.g.
ITicketAutoAction.OnticketChanged.
In that case, you can also use the values of these parameters. However, we recommend that you prefer to access them via the
ConnectionScope class.
If an application method is running in an external open transaction and the method ends in an exception, the transaction is automatically canceled.
You can also start your own transaction in the application by calling the ConnectionScope.BeginTransaction() method.
We do not recommend calling Service Desk WebService API methods in ongoing transactions,
as these always create their own connection and transaction. This can easily cause timeouts due to accessing locked parts of the database from a currently running application transaction (deadlock).
Did not find what you were looking for? Ask our technical support team.