====== ibmanager variables ====== The **ibmanager** program stores and provides variables for both reading and writing. These variables can be used by control logics or made available to the user for reading or writing through the [[en:ibmanager:ibmanager-communication|communication interface]]. ===== Built-in Variables ===== In addition to variables related to logics, the **ibmanager** program provides variables: * **ibmanager.version** - (R) the version of the **ibmanager** program. * **ibmanager.ctrl.cycles** - (R) the number of logic handling cycles (a cycle is considered after handling each of the instances of each of the logics). * **ibmanager.dt.tz.offset** - (R) the time zone offset relative to GMT time. This value is taken from the system during the application start-up and it does not change. * **ibmanager.ext.time** - (RW) [0..1] this flag informs whether **ibmanager** should write the system date (0) to the date/time variables described below (**.dt.**, except for **ibmanager.dt.tz.offset**, which is always based on system settings), or should not handle these variables (1). In the second case, these values can be set by another logic or through the [[en:ibmanager:ibmanager-communication|communication interface]]. Manual manipulation of date/time is useful during testing of logic behavior. * **ibmanager.dt.isdst** - (RW) [-1..1] this flag indicates whether the current time is daylight saving time (1) or standard time (0). If external date/time setting is selected, this flag can take the value -1. In such a case, other logics may assume that the given time is simply local time, respectively winter time in the winter season and summer time in the summer season. * **ibmanager.dt.gmt.offset** - (RW) the current offset of local time relative to **Greenwich Mean Time**. * **ibmanager.dt.mday** - (RW) [1..31] the current day of the month. * **ibmanager.dt.hour** - (RW) [0..23] the current hour in local time. * **ibmanager.dt.minute** - (RW) [0..59] the current minute in local time. * **ibmanager.dt.second** - (RW) [0..59] the current second in local time. * **ibmanager.dt.month** - (RW) [0..11] the current month in local time. 0 – January, …, 11 - December. * **ibmanager.dt.wday** - (RW) [0..6] the current day of the week in local time. 0 – Sunday, …, 6 - Saturday. * **ibmanager.dt.yday** - (RW) [0..366] the current day of the year in local time. * **ibmanager.dt.year** - (RW) [0..99] the current year in local time. * **ibmanager.loc.denominator** - (R) this is the divisor of the given latitude and longitude. Determined based on the attributes of the [[en:ibmanager:ibmanager-config#|]] element in the configuration file. * **ibmanager.loc.latitude** - (R) this is the multiplier of geographic latitude. It is determined based on the **Latitude** attribute of the [[en:ibmanager:ibmanager-config#|]] element in the configuration file. The correct geographic latitude is obtained by dividing this value by the value of the variable **ibmanager.loc.denominator**. * **ibmanager.loc.longitude** - (R) this is the multiplier of geographic longitude. It is determined based on the **Longitude** attribute of the [[en:ibmanager:ibmanager-config#|]] element in the configuration file. The correct geographic longitude is obtained by dividing this value by the value of the variable **ibmanager.loc.denominator**. * **ibmanager.id.name** - (R) the application's name based on the **Name** attribute of the [[en:ibmanager:ibmanager-config#|]] element in the configuration file. * **ibmanager.id.version** - (R) the application's version based on the **Version** attribute of the [[en:ibmanager:ibmanager-config#|]] element in the configuration file. * **ibmanager.id.instance** - (R) the application's instance name based on the **Instance** attribute of the [[en:ibmanager:ibmanager-config#|]] element in the configuration file. * **ibmanager.worktime** - (R) the operation time of the **ibmanager** program from its startup expressed in minutes. * **ibmanager.avg.cycle.time** - (R) the average cycle handling time (for all instances of logics) expressed in milliseconds. * **ibmanager.log.level** - (RW) this is the logging level of the **ibmanager** program. At the **ibmanager** startup, this variable assumes the numeric value of the **Level** attribute of the [[en:ibmanager:ibmanager-config#Log|Log]] element in the configuration file, where **0** indicates **TraceLo** and **10** indicates **Critical**. * **ibmanager.dump.var.states** - (RW) this variable serves as a trigger. If set to 1, it will result in writing detailed diagnostic information about each variable in the **ibmanager** program to the log file. * **ibmanager.virtual.memory** - (R) this is a measure of the amount of memory the **ibmanager** program is currently using. It represents the size of virtual memory that is occupied by the **ibmanager** process. * **ibmanager.dump.vars** - (RW) this variable serves as a trigger. If set to 1, it will result in the creation of an archival file-based data storage in the **archive** subdirectory located in the directory indicated by the **DirPath** attribute of the [[en:ibmanager:ibmanager-config#Storage|Storage]] element in the configuration file. In the course of creating the variable archive, all files in this directory are checked for correctness, and their maximum number is controlled. Also, in the case of the Linux system, the file system is synchronized (the **sync** command). * **ibmanager.ibgui.project.url** - (R) this is the url path to the project package of [[en:ibgui:start|ibgui]] associated with the current application. This value is taken from the **Url** attribute of the [[en:ibmanager:ibmanager-config#IbGUI|Project]] element in the configuration file. * **ibmanager.id.serial** - (R) serial number based on the license. * **ibpackage.license.category** - (R) the category of the license. * **ibpackage.license.type** - (R) the type of license. **(R)** indicates a read-only variable. **(RW)** indicates a read and write variable. Values in square brackets indicate the possible range of variable values. ===== License Server Variables ===== The **ibmanager** program provides variables associated with the license server: * **ibserver.lic.app.run.dt** - (R) This variable contains the date/time of the last successful communication from the license server with the **ibmanager** program. * **ibserver.lic.app.can.run** - (R) [0..1] This variable informs whether the **ibmanager** program has the right to operate based on the assigned license. * **ibserver.lic.app.process.id** - (R) The process identifier of the **ibmanager** program, assigned by the operating system. * **ibserver.lic.app.host.name** - (R) The identifier of the machine on which the **ibmanager** was launched. * **ibserver.lic.ibpackage.is.revoked** - (R) This variable informs whether the license on which the **ibmanager** program operates has been blocked - for example, the license terms have been violated. If this variable has a non-zero value, it means that the license is blocked. In such a case, the programs that are covered by the license will respond appropriately to this situation. * **ibserver.lic.ibpackage.registration.dt** - (R) The registration (activation) date/time of the **ibmanager** program in the "YYYY-DD-MM HH:MI:SS" format or "not-adate-time" if it has not yet been activated. * **ibserver.lic.ibpackage.expiration.dt** - (R) The technical support and remote access expiration date/time in the "YYYY-DD-MM HH:MI:SS" format or "not-a-date-time" if the program has not yet been activated. * **ibserver.lic.ibpackage.registered** - (RW) [0..1]. The value of the variable informs whether the **ibmanager** program has been registered on the license server. If the variable value is "0", then after changing this variable to "1", software registration will occur if possible. **(R)** indicates a read-only variable. **(RW)** indicates a read and write variable. Values in square brackets indicate the possible range of variable values.