Improvements a bug fixes

for D2000 V11.0.53.u1 (build 01)

**************** Improvements ******************
************** 27.4.2020 ********************

D2D-5322 KOM
The functionality of the ""Check Receive Length"" parameter for I/O tags reading binary Modbus registers using functions 1 (Read Coils) and 2 (Read Discrete Inputs) has been corrected.

D2D-5487 CNF, KOM
In IEC 62056-21: 2002 Serial protocol, new parameters have been added that allow more flexible configuration of data reading from profiles:
- Profile Read Mode (standard/block reading + variants with sending password P1)
- Profile Read Block Length (block size for block reading)
- Profile Read Formatted Execution (specification of special command)

D2D-4970 ARC
A new configuration parameter OldValIgnoreAge lets you ignore values older than the specified time (in hours). The parameter can be set at runtime with the SET_OPTION command. If the debugging category DBG.ARCHIV.IGNORED_VALUES.OLD is enabled, the information about discarded value is logged in the file.

D2D-5008 KOM
In the KOM process, a modification was made for the OPC UA protocol - after changing the I/O tag configuration, a request for reading the current value is generated.

D2D-4598 KOM
In IEC101 (Master, Client, Balanced) protocols, the ""System Redundancy: Manages A Status Address"" link parameter was added to allow to ignore values from an inactive control system (SystemA or SystemB) on a system-redundant line (SerialOverUDP System&Line Redundant). This parameter copies the behavior of the Telegyr 809 Server protocol parameter with the same name.

D2D-5127 ARC
In the D2000 Archiv process, protection of write actions in the script has been improved (UPDATEARCHVAL, INSERTARCHARR). Correct handling of a case where a user tried to write to a structured archive as if it were unstructured (column and row equal to 0) was implemented. When unhandled, this operation could cause the archive to end with an error.

D2D-5222 KOM
Handling of responses for AT+CSQ command was improved in SMS Gateway protocol. Some modems (e.g. Huawei E3372) sent an unexpected multiline response, which D20000 KOM was unable to process and subsequently SMS messages could not be sent.

D2D-5234 CNF, KOM
In the IEC 870-5-101 Server protocol, the DataClass parameter has been added to control whether the server is sending data as Class1 (default), Class2, Class1/2. Another option is to send replies to commands as Class1 data and all other data as Class2 data.

D2D-5272 ARC
The Tell command REOGANIZE has been enhanced so thatn a tablespace can be specified. Now it is possible to move a table to a specific tablepace on the PostgreSQL platform.

D2D-5332 ARC
The calculation of archive objects for the archive with depositories has been optimized. If an archive object has never had a value, when calculating archive objects which depend on it , the archive will not try to read the value from the depositories, even if they are available.

D2D-5514 KOM
In AMiT ATOUCH32 DB-Net protocol, optimized matrix readings (INT_MX, LONG_MX type variables) were also supported for Di, Dout I/O tags.
If there are multiple configured /O tags (not only Di, Dout, but also Ci, Co, Ai, Ao) with the same WID and Type, and if the ""Enable Matrix Read"" parameter is enabled on the station, they will all be read by one optimized matrix reading.
At the same time, the crash of the KOM process during matrix reading (variables of INT_MX/LONG_MX types) into Di, Dout I/O tags and writing Dout I/O tags into matrix was corrected.

************** 1.7.2020 ******************

D2D-5614 KOM
A new parameter /KKVOE has been added to the KOM process. It will cause the values of the I/O tags not to be invalidated after a communication error.

**************** Bugs **********************
************** 27.4.2020 ********************

D2D-5415 DBM
In the DbManager process, several bugs related to reconnecting to a database after a connection breakdown have been fixed. All errors were related to connections opened by SQL_CONNECT using a connect string (as an alternative to a Database object).

The interface randomly crashed according to the intensity of usage. The error appeared in the interface on 24th of May, 2018 when functions PrintCurrAllocations and EnableMemDebug were implemented. The error is in R39, R60, R61 versions for objapi.dll after 24th of May, 2018 (including).

D2D-4883 ESL, HI
The entry OnLostFocus instead of OnSpin was sent when Windows component of the Text entry type preceded the spin button. The OnSpin entry is sent always now.

D2D-5003 CNF, KOM
In the OPC UA protocol, the KOM process crashed when browsing if there were different CNF/KOM architectures (32-bit CNF and 64-bit KOM or vice versa). Patches for both CNF and KOM process must be applied.

D2D-5016 CNF, KOM
An issue was corrected in the Onesoft Devices protocol for SoftControl devices. The error was in processing of the default values of parameters ""Begin of Write Block"" and ""End of Write Block"".
Workaround was possible - to change the default parameters 157 resp. 284 to 156 resp. 285.

In the cfgsynchro and cfgsynchroauto utilities, a bug was fixed that caused a synchronization error on PostgreSQL platform, if there was a line with ""Local Port"" greater than 32767.

D2D-5094 KOM
In process D2000 KOM, a bug that caused memory leaks when saving lines and stations was fixed.

D2D-5154 CNF, KOM
In the Johnson Controls N2-Bus protocol, the MaxErrors parameter has been added. If the number of errors in one reading cycle reaches MaxErrors, further I/O tags will not be read. The default value of 0 disables this behavior.

D2D-5163 KNL
An error that could lead to application crash (crash of D2000 Server process)  was fixed. This error could be demonstrated by configuring a archive object with publishing value to structure (if instead of publishing value to a specific structure column - e.g. SV.Test [0] ^ Col1 the value was published into the whole structure - e.g. SV.Test).

D2D-5215 GTW
A bug in the Gateway Server process has been fixed. This bug occurred when deleting objects on the D2000 Server to which the Gateway Server was connected.
If an object that was transmitted by the Gateway Server was deleted, the Gateway Server did not close that object. As a result, it remained in the list of deleted objects on the D2000 Server, and it was not possible to recreate the object with the same name.

D2D-5232 KOM
In the IEC101 server/balanced (secondary) protocols, the checking of FCB bit has been added. If it is the same in two messages received in succession, the previous reply should be repeated to the master according to the standard (the message is considered duplicate).
The discarding of redundant data has been added in the IEC101 client protocol. If a correct response has been received and there is still some data after it (e.g. a duplicated response), it is discarded.

D2D-5236 ARC
Functionality of CALCSTATFUNC action when calculating selected statistics for periodic archives was fixed. CALCSTATFUNC gave erroneous results for periodic archives when used to calculate statistics _STAT_F_INTEGRAL, _STAT_F_WGAVG, _STAT_F_GT_TIME, _STAT_F_GE_TIME, _STAT_F_LT_TIME, _STAT_F_LE_TIME, if the end time was in the future. It calculated a result as if  the last valid value of the source periodic archive was valid until the end of the interval. After correction, each value is considered valid only for a period equal to the period of archivation.

D2D-4873 DBM
An error in DbManager when working with DECIMAL and NUMERIC data (eg DECIMAL (20,4)) on MsSql platform has been fixed.
The error caused the insert/update operation to return an error
(HY104)[Microsoft][ODBC SQL Server Driver]Invalid precision value

D2D-5326 DBM
A crash of DbManager process due to calling SQL_BINDIN without previous SQL_PREPARE was fixed.

D2D-5331 KOM
If a structured control object (default value or output control) was configured for I/O tag, it was not functional after the start of the KOM process. Only the change of its value during the running of the KOM process (or saving of the I/O tag) caused the change of the I/O tag value.
Similar problems could be encountered with evaluating of the I/O tag limits if the limits were configured as structure items.

D2D-5428 DBM
An error was fixed in DbManager that caused it to crash when empty operations for PostgreSQL or an unknown database were turned on. At the same time, empty operations for PostgreSQL database were implemented.

D2D-5150 ARC
An error affecting GETARCHVAL action was fixed. This error could cause the GETARCHVAL action to return old values for periodic archives filled from script that have value playback enabled.

D2D-5015 KOM
In the IEC 870-5-104 Sinaut protocol, a new ""Ignore Flagged"" parameter was added. If allows to configure flags (A..H) to cause the value to be discarded. The parameter was required by practice when it was necessary to filter out the values with the ""Non-topical"" flag (mapped into G flag) that came from the communication partner.

D2D-5474 KOM
A bug that led to the KOM process crash has been fixed. The crash occurred after changing the value type of the I/O tag (eg Ci -> Ai), which had the destination structure configured, when a new value arrived.

D2D-5285 KOM
The functionality of the inverted polarity output I/O tag (Dout) has been fixed.
At the same time, the behavior of the output I/O tags in the Modbus Server protocol was corrected. The values of the output I/O tags after the correction correspond to the assigned values and not to the values sent to the communication (these are different if the inverse polarity for Dout is activated or the conversion to technical units for Ao, Co is configured).

D2D-5503 KOM
The following error that occurred on Serial and Moxa IP Serial lines when setting Handhaking = Custom was fixed:
If DTR/DSR handshaking was selected, the DTR setting was dependent not only on the Invert setting but also on whether DTR=0 or DTR=1 (while these settings were disabled in the CNF).
If RTS/CTS handshaking was selected, the RTS setting depended not only on the Invert setting but also on whether RTS=0 or RTS=1 (while these settings were disabled in the CNF).
After correction, the appropriate setting is 1 (ON) or 0 (OFF) if the Invert option is checked.
In practice, these settings were used for older types of converters (eg RS232 / RS485), where the access to the bus was controlled by DTR or RTS signal.

************** 19.5.2020 ********************

D2D-5571 KOM
An error has been fixed in the IEC 62056-21:2002 Serial protocol, which caused the loss of values at the time of the transition from winter time to summer time (e.g 29.3.2020 at 2:00 am).
The error occurred if the electrometer also sent a winter/summer time flag (characters '0' or '1' at the beginning of the date).

************** 1.7.2020 ******************

D2D-5592 KOM
The behavior of the I/O tag with an active default value when switching redundancy has been fixed. The incorrect sending of the last telemetric value was fixed - while in the case of an I/O tag with a default value, it was necessary to send the current value, not the telemetric value.

D2D-5627 KOM
A buffer overflow bug was fixed in the Johnson Controls N2-Bus protocol . This error could lead to a KOM process crash if data longer than 1kB was received.

D2D-5644 ARC
The malfunction of the calculated archive object has been fixed. The malfunction (archive object stopped being calculated) occurred with the following sequence:
- an XML import of the archive object was performed (without changing the configuration, i.e. maintaining the modification time)
- the archive object was subsequently edited or an XML import was performed with a configuration change.
Such an archive object stopped being calculated until the archive was restarted.

Your message was successfully sent.

Thank you for submitting the form.

Image Description

Your message was successfully sent.

Thank you for submitting the form.

Image Description