Configuration
HAKOM.Config
HAKOM.Config is an XML file, structured hierarchically and is divided into "dbconnections" and "products".
This file has to be placed in the execution folder of the application.
Tag "dbconnections"
On this level data base connections may be configured.
The individual data base connections are listed hierarchically under "dbconnections". The name of a data base connection may be chosen freely.
Below you can find examples for all supported data bases:
<?xml version="1.0" encoding="UTF-8"?>
<HAKOMConfiguration>
<dbconnections>
<OracleManaged>
<cnn>User ID=ZAMS;Data Source=TEST;Persist Security Info=False;Min Pool Size=0;Schema=ZAMS</cnn>
<password>XpwYr2garEE=</password>
<provider>HAKOMOracleManaged</provider>
</OracleManaged>
<SQLServer>
<cnn>User ID=ZAMS;Data Source=TEST;Integrated Security=false;Initial Catalog=ZAMS;Min Pool Size=0;MultipleActiveResultSets=True;CommandTimeout=30</cnn>
<password>XpwYr2garEE=</password>
<provider>SQLDBClient2008</provider>
</SQLServer>
<PostgreSQL>
<cnn>Server=TEST;Port=5432;Database=ZAMS;User Id=ZAMS;Pooling=true;Command Timeout=30</cnn>
<password>XpwYr2garEE=</password>
<provider>HAKOMPostgreSQL</provider>
</PostgreSQL>
</dbconnections>
</HAKOMConfiguration>
Additional Features for Standard Connection Strings
In addition to the standard properties of the connection strings the HAKOM Framework provides useful extensions.
SQL Server
For SQL Server connection strings it is possible to configure a CommandTimeout in order to limit the runtime of individual data base queries. An example can be found above.
If this setting is not configured, the default value will limit the runtime of queries to 30 seconds.
Oracle
For Oracle connection strings it is possible to configure a target scheme for reading and writing data by configuring the property scheme.
If this setting is not configured the target schema corresponds to the scheme of the connecting user.
Connection Pooling
For all three database types, connection pooling should be activated to achieve optimal performance. By default it is activated for Oracle, SQL Server and PostgreSQL.
Tag "products"
Settings regarding the HAKOM products (eg. Framework) can be configured in this section.
Tag "HAKOMFramework"
Tag "settings"
Tag | Description | Default Value | Possible Values | ||||||
---|---|---|---|---|---|---|---|---|---|
<ShowAttributeTimeSlicesInfo> | Displays an info box in the time series search edit tab if attribute time slices are assigned to a time series. | true | |||||||
<TSSearchResultNrDefaultLimit> | Default value for the field "Limit" in the time series search. | 1000 | |||||||
<AssignmentNodeDelimiter> | Separator for displaying the hierarchy of nodes when editing time series. | - | |||||||
<AssemblyCache> | Path to the Assembly Cache. | "HAKOM Framework Assembly Cache"- File in the machines temp-file. | |||||||
<MaxDegreeOfParallelism> | Controls how many "processes" run parallel when reading or writing data. | 10 | |||||||
<EditTimeSeriesID> | Controls if it is possible to manually set time series IDs. | false |
| ||||||
<EvalComponentPath> | If a path is provided, the EvalComponent files will be retrieved from this path; otherwise the default path is used. |
| |||||||
<CompileWarningProtocolConnName> | Configures a data base connection, where the warnings of compilation of formula time series will be written. If no data base is provided no protocol will be created. | ||||||||
<ProtocolConnectionForUnhandledExceptions> | Configures a data base connection, where logs regarding unhandled exceptions will be logged to. If no connection is provided, no protocol will be created. This setting only affects the GUI. | ||||||||
<CompileWarningProtocolPath> | Configures a path, where the warnings of compilation of formula time series will be written. If no path is provided no protocol will be created. | ||||||||
<MaxNumberOfDataItems> | Sets the maximum number of data items an operation may return. The following sub-settings may be configured:
| 500.000 (For both settings) | |||||||
<QuotationDefaultBehavior> | This setting controls the default behavior if no quotation date is provided when reading a quotation time series. This setting can be overridden for individual time series by setting its respective property to the desired value (during master data import or in the master data view in the ZAMS plug-in). It is also possible to modify this setting later on. | 1 |
| ||||||
<TimeSeriesSearchExact> | Controls if time series search strings search for an exact match only. This setting only affects the GUI. | false |
| ||||||
<SqlLikeEscapeCharacter> | Controls which character can be used to escape special characters ("%", "_") in search strings. | \ | |||||||
<DefaultDataTables> | Allows for default names of data tables for various time series types. The following sub-settings may be configured:
| ||||||||
<ShiftManuallyReplacedPriority> | Changes the valence of the flags "valid" and "manually replaced". | false |
| ||||||
<InternalTimeUnit> | Controls which unit is used to handle time. | 0 |
| ||||||
<DecimalPrecision> | Increases accuracy when saving/reading time series data with minimal loss of performance. | true |
| ||||||
<MaxDbConnections> | Limits the number of allowed concurrent database connections. | 2147483647 (unlimited) |