Changes that require modification of configuration and administrative settings



Functionality

After

Before

Result of changes

Data composition system.

Composer of data composition template does not use the presentation expression specified for the calculated field upon generating an expression of group and total records for calculated fields being resources. Thus, the presentation expression for calculated fields being resources will be displayed in the report in detailed records only. This change is not implemented in version 8.3.14 compatibility mode.

Composer of data composition template used an expression of the calculated field presentation being a resource in detailed, group, and total records.

Behavior of composer of data composition template is the same for calculated fields, data set fields, and calculated resource fields.

Queries.
Data composition system.

Right joins are not replaced automatically with similar left joins upon processing query text with the query constructor, query scheme, data composition system, and report builder. This change is not implemented in version 8.3.14 compatibility mode.

Right joins were replaced automatically with similar left joins upon processing query text with the query constructor, data composition system, and report builder. If conversion failed to be performed, the connection was removed from the query.

Eliminated system behavior which could lead to an incorrect query.

File operations.
Web client.

Implemented the BeginGetFileFromServer() and BeginGetFilesFromServer() global context methods. In the interactive mode, methods do not require installing a file system extension on web client. New feature: you can get several files from the server as an archive. The BeginRequestingUserPermission() method allows you to request user permission for new methods. The GetFile(), BeginGettingFiles(), and RequestUserPermission() methods are deprecated and supported for compatibility purposes. It is recommended that you use new methods in the application.

Current methods of receiving files from the server were not logical. Method of receiving several files from the server (BeginGettingFiles()) in the web client required a file system extension.

Getting files from the server is now more transparent and convenient. Now a file system extension is no longer required to use the web client in the interactive mode.

File operations.
Web client.

Implemented the BeginPutFileToServer() and BeginPutFilesToServer() global context methods. In the interactive mode, the methods do not require installation of a file system extension on web client. New feature: displayed progress of placing a file to the server. New feature: cancel placing a file to the server. New feature: simultaneous transfer of several files from a client computer to the server. Files being transferred are specified using the file search string.

The BeginRequestingUserPermission() method allows you to request user permission for new methods.

The BeginPutFile(), BeginPuttingFiles(), and RequestUserPermission() methods are deprecated and supported for compatibility purposes.

It is recommended that you use new methods in the application.

Existing methods of transferring files to the server (BeginPutFile(), BeginPuttingFiles()) did not allow to cancel placing files during transfer and display the transfer progress.

Putting files to the server is now more transparent and convenient. Now a file system extension is no longer required to use the web client in the interactive mode.

Database operations.
Common attributes / Data separation.
1C:Enterprise script.

Method FindMarkedForDeletion() will search all available objects of the current data area only if the Undefined value is passed as a value of the first and the second method parameters. This change is not implemented in version 8.3.14 compatibility mode.

Method FindMarkedForDeletion() searched all available objects of the current data area only if the Undefined value was passed as a value of the first method parameter only.

Unified set of parameters and behavior of methods with similar actions.

Queries.

Query language behavior changes if: query is a merge of several queries, which are applied to a unified query and each merge query uses the TOP keyword. In this case, each query in the merge turns into a nested query with ordering. If any of the nested query does not have the TOP keyword, subquery is not built by ordering. It is recommended that you analyze when queries that meet these conditions are used. When the compatibility mode is disabled, performance result of such queries can be different from the performance result of this query in compatibility mode. This change is not implemented in version 8.3.14 compatibility mode.

Query language behavior if: query was a merge of several queries, which were applied to a unified query and each merge query used the TOP keyword, depended on the infobase option:

  • For file mode: first ordering, then selection of top records.
  • For client/server mode: first selection of the top ones (for each simple query). Ordering was not executed for simple queries. Ordering was executed only for merge result. Result repeatability was not guaranteed as the top items were selected from the query without ordering.

Implemented similar behavior of a query containing merge, ordering, and the TOP keyword in various infobase mode options.

Server clusters.

Upon editing a server cluster resource consumption counter, the counter is reset only if the Group property is changed.

Implemented reset of a resource consumption counter instance:

  • The Delete command is implemented for a resource consumption counter instance.
  • The clear command is implemented for the rac counter command.
  • The IAgentAdminConnection.clearAccumulatedValues() method is implemented for Java interface of server cluster administration.
  • The AdministrationResourceConsumptionCounter.ClearAccumulatedValues() method is implemented in 1C:Enterprise language.

Now you can get a list of resource consumption counter values:

  • The accumalated-values command is implemented for the rac counter command.
  • The IAgentAdminConnection.getAccumulatedResourceConsumptionCounterValues() method is implemented for Java interface of server cluster administration.
  • The AdministrationResourceConsumptionCounter.GetAccumulatedValues() method is implemented in 1C:Enterprise language.

For a resource consumption counter instance, a field containing measurement time is implemented. To get measurement time:

  • The time property is implemented in the rac counter command output.
  • The IresourceConsumptionCounterValue.getTime() method is implemented for Java interface of server cluster administration.
  • The AdministrationResourceConsumptionCounter.Time property is implemented in 1C:Enterprise language.

Upon editing a server cluster resource consumption counter, the counter was reset if any of its properties were changed.

Other features were not provided.

Improved administration of server cluster resource consumption. Simplified setting of counters and resource consumption restrictions. Now you can analyze changes of accumulated data.

Data composition system.
Functional options.

In the data composition system, for the field separated by dot from the temporary table field or nested query, availability check includes checking that the field is not disabled with a functional option. This change is not implemented in version 8.3.14 compatibility mode.

In the data composition system, for the field separated by dot from the temporary table field or nested query, availability check did not include checking that the field is not disabled with a functional option. If a temporary table field or a nested query field was available, it was considered that all fields available via "." (dot) would also be available.

Eliminated unexpected system behavior.

Data composition system.
Charts of characteristic types.

In the data composition system, a characteristic value type is considered upon getting a characteristic value (for any purpose, for example, sorting or filtering by it). If a value, which does not match the used characteristic value type, is written in the infobase, then NULL will be used instead. It is recommended that you analyze additional characteristics in the data composition system and make sure that the actual characteristic value type matches the type. This change is not implemented in version 8.3.14 compatibility mode.

In the data composition system, a characteristic value type is not considered upon getting a characteristic value (for any purpose, for example, sorting or filtering by it). Even if a value, which does not match the used characteristic value type, is written in the infobase, it will be used.

Improved performance of the data composition system with additional characteristics (charts of characteristic types) by reducing the number of tables used in queries.

Server clusters.

Changed rules and settings of 1C:Enterprise server cluster monitoring system. Optimized use of server RAM. In particular, both working process parameters and cluster manager parameters are used when determining the amount of used memory.

New feature: server cluster setting, which allows you to specify whether a process dump is to be created when critical memory amount is exceeded.

New feature: working server properties that describe a temporarily allowable amount of process memory, a time interval that describes exceeding time of a temporarily allowable amount of process memory, and a critical memory amount.

The following settings are removed from the cluster properties:

  • Allowed total memory.
  • Period of exceeding the memory threshold.
  • Threshold of server error variation.

Settings that describe the amount of working process memory up to which server performance is considered to be sufficient, and the maximum working process memory are removed from the working process properties.

However, the removed parameters will be saved in the cluster settings and used in a previous version of 1C:Enterprise.

If you create a new cluster, some parameters will have the following default values:

  • Force close corrupted processes – enabled.
  • Close corrupted processes in 60 seconds.

Upon creating a new working server, 256 connections per process will be established by default.

If the removed parameters are changed in the cluster settings, it is recommended that you review the cluster settings and adjust them if necessary.

Implemented the following objects:

  • AdministrationCluster.WriteDumpWhenTerminatingByMemoryLimit property.
  • TemporaryAllowedProcessesTotalMemory property for CriticalProcessesTotalMemory object, and TemporaryAllowedProcessesTotalMemoryExcessTimeLimit property for the AdministrationWorkServer object.
  • IClusterInfo.KillByMemoryWithDump property.
  • CriticalProcessesTotalMemory, TemporaryAllowedProcessesTotalMemory, and TemporaryAllowedProcessesTotalMemoryTimeLimit properties for the IWorkingServerInfo object.

The following Java-based tools are implemented in the administration server interface:

  • IsClusterRecyclingKillByMemoryWithDump() and setClusterRecyclingKillByMemoryWithDump() methods of the IClusterInfo interface.
  • GetCriticalProcessesTotalMemory(), setCriticalProcessesTotalMemory(), getTemporaryAllowedProcessesTotalMemory(), setTemporaryAllowedProcessesTotalMemory(), getTemporaryAllowedProcessesTotalMemoryTimeLimit(), and setTemporaryAllowedProcessesTotalMemoryTimeLimit() methods of the IWorkingServerInfo interface.

For the cluster service command-line utility (rac):

  • Implemented the kill-by-memory-with-dump field for the cluster info command output.
  • Implemented the kill-by-memory-with-dump parameter for the following commands: cluster update and cluster insert.
  • Implemented the following command-line parameters for server insert and server update commands: critical-total-memory, temporary-allowed-total-memory, and temporary-allowed-total-memory-time-limit.

The following properties are deprecated and supported for compatibility and interaction with previous cluster versions:

  • ProcessMemoryLimit, MaxMemoryTimeLimit, and ProcessErrorCountLimit properties of the AdministrationCluster object.
  • MaxMemorySize, MaxMemoryTimeLimit, and ErrorsCountThreshold properties of the IClusterInfo object.

Server cluster monitoring logic was different. Only working process parameters were used when determining the amount of used RAM. Maximum 128 connections per process were offered by default.

Optimized use of RAM by a server cluster.

Server clusters.

Upgrade: load balancing upon creating a new connection to the server cluster is updated. Upgrade: the algorithm to assess working process performance is updated.

Load balancing mechanism did not process some situations well enough. In particular, there was non-optimal working process load and load redistribution took a long time.

New connections will use available resources more evenly. Load redistribution among server clusters will be faster. Improved load balancing upon mass connections and disconnections of users to/from the server cluster.

Data history.

The version difference form contains information on moved rows in object tabular sections. A row number before and after movement is shown. After calling the GetVersionDifference() method, the following information will be available for the moved row:

  • Property LineNumberAfterVersionChange is a new row number (after movement).
  • Property LineNumberBeforeVersionChange is an old row number (before movement).

In the version difference form, the row number after change was adjusted considering actions performed between the first movement and the second movement, and the row number before change contained the row number in the version after change.

Eliminated unexpected system behavior.

Data history.

Upon using data history, now you can perform actions once a data version is written. New object manager module event (for objects that support data history): AfterWriteDataHistoryVersionsProcessing. New property available for objects that support data history: WriteDataHistory.AfterWriteDataHistoryProcessing. Use it to manage the need to call the AfterWriteDataHistoryVersionsProcessing event handler. Objects that require processing after writing data history are stored in a special queue. New method available for deleting objects from this queue: DataHistory.DeleteFromAfterWriteVersionsProcessing(). New configuration object property: ExecuteAfterWriteDataHistoryVersionProcessing. Now you can update data history once an object is written. History will be updated by a background job once an object write transaction is complete. New property: WriteDataHistory.UpdateHistoryImmediatelyAfterWrite. New configuration object property: UpdateDataHistoryImmediatelyAfterWrite. New data history manager method: ExecuteAfterWriteVersionsProcessing(). Now you can add new fields and tabular sections to a data history record. Tabular sections can be added only to those objects where metadata has tabular sections. New property: WriteDataHistory.AdditionalData. The GetMetadata() method (by a data version) of the data history manager returns information considering added properties and tabular sections. New methods for the WriteDataHistory object: AddAdditionalData() and AddAdditionalDataFieldPresentation(). Now you can cancel a data history record. New property: WriteDataHistoryParameters.Cancel. Implemented the WriteDataHistory.VersionComment property for a version comment record. The following methods of objects that support data history are deprecated and supported for compatibility purposes only: SetDataHistoryVersionComment() and GetDataHistoryVersionComment(). New parameters available for the UpdateHistory() method (in all syntax options) of the data history manager: ExecuteAfterWriteVersionsProcessing and AutoDeleteFromAfterWriteVersionsProcessing. Implemented manager module for constants. New system background jobs for processing after recording versions and for updating data history after recording.

These features were not provided.

Extended data history features.

Queries.
Data composition system.

If the LIKE operation is used in the query language (also upon calculating a function in the TOTALS sentence) or the data composition system expression language in the infobase file mode, a special character specified inside the brackets using the ESCAPE keyword, works correctly.

This change is not implemented in version 8.3.14 compatibility mode.

If the LIKE operation was used in the query language (also upon calculating a function in the TOTALS sentence) or the data composition system expression language in the infobase file mode, a special character specified using the ESCAPE keyword did not function inside the brackets.

Eliminated unexpected system behavior.

File infobase Queries.

In the file infobase, an addition operation and a subtraction operation of the query language are changed. Upon calculating length and precision of an operation type, preference is given to length rather than precision if the total length of 38 characters is exceeded.

Therefore, if two numeric fields, the first of which has 20 characters and 0 precision and the second of which has 30 characters and 20 precision, are added together or subtracted, the resulting length will be 38 and the precision will be 18. If the second field contains a number with the last precision digits, the number will be cut by precision digits.

Example:

  • If you add 1,000,000,000,000,000,000 and 0.00000000000000000001, you get 1,000,000,000,000,000,000.
  • If you add 1 and 0.00000000000000000001, you get 1.
  • If you subtract 0.99999999999999999999 from 2,000,000,000,000,000,000, you get 1,999,999,999,999,999,999.

This change is not implemented in version 8.3.14 compatibility mode.

Upon calculating length and precision of an operation type, preference was given to precision rather than length if the total length of 38 characters was exceeded.

Therefore, if two numeric fields, the first of which had 20 characters and 0 precision and the second of which had 30 characters and 20 precision, were added together or subtracted, the resulting length would be 38 and the precision would be 20. Because of that, if the first number contained 20 characters in the integral part, a digit overflow error occurred as a result. This would be expressed by a number containing 9 in all parts.

Example:

  • If you add 1,000,000,000,000,000,000 and 0.00000000000000000001, you get 999,999,999,999,999,999.99999999999999999999.
  • If you add 1 and 0.00000000000000000001, you get 1.00000000000000000001.
  • If you subtract 0.99999999999999999999 from 2,000,000,000,000,000,000 you get 999,999,999,999,999,999.99999999999999999999.

Eliminated unexpected system behavior.

Collaboration system.

New feature: now you can register (and unregister) an infobase in the collaboration system on 1C:Enterprise server.

New methods for the collaboration system manager: ExecuteInfoBaseRegistration() and CancelInfoBaseRegistration().

Earlier, you could register and unregister an infobase in the collaboration system on 1C:Enterprise client only.

Extended administrative actions in the collaboration system.

Managed forms.
Data composition system.

Upon opening conditional appearance settings (saved in previous platform versions) with disabled compatibility mode, the following conditional appearance parameters of a form or a report will be set to default values:

  • Conditional appearance items of a form (the DataCompositionParameterValue object): Line, Color, and Font.
  • Conditional appearance items of a report (the DataCompositionAppearance object collection): Line, Color, Font, VerticalAlign, HorizontalAlign, Placement, TextPositionRelativeToPicture, and PictureSize.

Changes are applied if values of these conditional appearance parameters are specified as a string and not values of a particular type.

We recommend that you analyze where the above mentioned conditional appearance parameters are used and eliminate places where the parameters are set as a string.

This change is not implemented in version 8.3.14 compatibility mode.

For some form or report conditional appearance parameters (the DataCompositionAppearance object collection), you could specify values (the DataCompositionParameterValue object) not only as values of particular types but also as a string. These parameters were the following:

  • Conditional appearance items of a form: Line, Color, and Font.
  • Conditional appearance items of a report: Line, Color, Font, VerticalAlign, HorizontalAlign, Placement, TextPositionRelativeToPicture, and PictureSize.

You could see the following behavior:

  • In conditional appearance of reports and upon reading parameter values from XML, a string was converted to a value matching the parameter type. Parameters were used with the values resulted from the conversion.
  • In conditional appearance of dynamic lists, a string was not converted to a value. Default parameter values were used.
  • In conditional appearance of forms (in thin client), a string was converted to a value. Parameters were used with the values resulted from the conversion.
  • In conditional appearance of forms (in thin client), a string was not converted to a value. Default parameter values were used. In version 8.3.14, an error occurred in that case.

Eliminated unexpected system behavior.

Data composition system.

Upon calculating values of the data composition system fields listed below, the principle is applied: a if value of the resource, from which this field is received, is equal to 0 in the current grouping, the field value is also 0. These fields are the following:

  • % total
  • % in grouping
  • % in hierarchy group
  • % in row or series
  • % in column or point
  • % in row or series grouping
  • % in column or point grouping
  • % in row or series group
  • % in column or point hierarchy group

This change is not implemented in version 8.3.14 compatibility mode.

Upon calculating values of the following data composition system fields:

  • % total
  • % in grouping
  • % in hierarchy group
  • % in row or series
  • % in column or point
  • % in row or series grouping
  • % in column or point grouping
  • % in row or series group
  • % in column or point hierarchy group

you could see the following behavior: values were always divided by a parent grouping value or grand total, except for cases when the resource value in the grouping was equal to NULL. As a result, an exception could be thrown due to division by 0.

Eliminated unexpected system behavior.

Charts.

Upon assigning a new value to the Chart.DataSource property, first, the existing points and series are deleted, and then the new ones are created according to the new data source. After a new value is assigned, the current selection is cleared.

We recommend that you remember the current selection before setting new data and restore it if necessary.

This change is not implemented in version 8.3.14 compatibility mode.

Upon assigning a new value to the Chart.DataSource property, the existing points and series were not deleted and the selection was not cleared.

Eliminated unexpected system behavior.


Next page: Mobile version of 1C:Enterprise