Information sharing: Object Specifications, Object Limitations, and Operational Limits for Business Central Online

Dynamics 365 Business Central

Hi, Readers.
The other day I was asked, what is the maximum number of characters in a text or code field for Business Central, and where to find this information.

So in this post, I would like to summarize some information about Object Specifications, Object Limitations, and Operational Limits for Business Central Online.

The following is extracted from Microsoft Docs (2021/08/27):

Object Specifications and Limitations

Specifications for the Database:

The following characteristics are based on maximum capacity specifications for SQL Server 2017. Please visit the link below to see specifications for previous versions of SQL Server.

FeatureCharacteristic
Maximum number of physical disk files32,767
Database file size524,272 terabytes
Maximum number of objects in a database2,147,483,647
Maximum number of characters in application object names30
Maximum number of characters in a Database Authentication password80

Specifications for Tables:

The following characteristics are based on maximum capacity specifications for SQL Server 2017. Please visit the link below to see specifications for previous versions of SQL Server.

FeatureCharacteristic
Range for table object ID numbers1 – 999,999,999 1
Maximum number of characters in a table name30
Maximum table sizeDepends on available storage
Maximum number of records in a tableDepends on available storage
Maximum record size8060 bytes2
Maximum number of fields in a record500
Range for field numbers1 – 999,999,999
Maximum number of keys for a table40
Maximum size of a Business Central key900 bytes
Maximum number of distinct fields per key16
Maximum size of an (non-key) index1700 bytes
Maximum number of SumIndexFields per key20
Maximum number of characters in a text or code field2048
Maximum size of a BLOB field2 GB
Maximum number of characters in a field name30

Specifications for Pages and Reports:

FeatureCharacteristic
Range for page or report object ID numbers1 – 999,999,999 1
Maximum number of characters in a caption1024
Maximum bitmap size in bitmap property32500 bytes

Specifications for Codeunits:

FeatureCharacteristic
Range for table object ID numbers1 – 999,999,999 1
Maximum number of characters in variable names30
Maximum number of dimensions in array variables10
Maximum number of elements in an array variable1,000,000
Maximum physical size of a codeunit2 GB
Lower bound of index in an array1

Specifications for variables:

FeatureCharacteristic
Maximum number of characters in text variables20483
Maximum number of characters in code variables2048

Specifications for text constants:

FeatureCharacteristic
Maximum number of characters2048

Note:

1. All application objects are identified by an ID number. There are restrictions, however, on the numbers you can use when you create your own application objects. Review your Partner License Agreement for more information.

2. Each variable-length text field accounts for 26 bytes in the record.

3. If no length is specified for text variables, the length is unlimited.

Operational Limits

To ensure the availability and quality of Business Central services, there are limits on certain operations. This article describes the limits and, in some cases, the strategy behind them.

Client connection limits:

SettingDescriptionLimit
Reconnect periodThe time during which a client can reconnect to the service after being disconnected.10 minutes

Data handling limits:

SettingDescriptionLimit
Max items in object graphThe maximum number of objects to serialize or deserialize.10,000
Max file sizeThe maximum size of files that can be uploaded to or downloaded from the service.350 MB
Maximum stream read sizeThe maximum number of bytes that can be read from a stream (InStream object) in a single AL read operation. Examples include READ or InStream.READTEXT method calls. This setting pertains to UTF-8 and UTF-16 text encoding; not MS-DOS encoding.1,000,000 bytes

Database limits:

SettingDescriptionValue
Search timeoutThe time (in seconds) that a search operation on lists in the client continues before it’s stopped. When the limit is reached, the following message displays in the client: Searching for rows is taking too long. Try to search or filter using different criteria.10 seconds
SQL command timeoutThe contextual time-out for a SQL command.30 minutes
SQL connection idle timeoutThe time that a SQL connection can remain idle before being closed.5 minutes
SQL connection timeoutThe time to wait for the service to connect to the database. When the time is exceeded, the attempt is canceled and an error occurs. This setting also applies to begin, rollback, and commit of transactions.1.5 minutes
Long running SQL query thresholdThe amount of time that an SQL query can run before a warning telemetry event occurs. If this threshold is exceeded, the following event is logged: Action completed successfully, but it took longer than the given threshold.1000 ms

Asynchronous task limits:

SettingDescriptionLimit
ChildSessionsMaxConcurrencyThe maximum number of child sessions that can run concurrently per parent session. When the value is exceeded, additional child sessions will be queued and run when a slot becomes available as other child sessions are finished.5
ChildSessionsMaxQueueLengthThe maximum number of child sessions that can be queued per parent session. If the value is exceeded, an error occurs.100
Maximum concurrent running scheduled tasksThe maximum number of tasks that can run simultaneously for an environment.

If there are many jobs running at the same time, you might experience that the response time for clients gets slower. If the value is too low, it might take longer for scheduled tasks to process.
3
MaximumSessionRecursionDepthThe maximum number of nested sessions that can be created before reaching infinite recursion. If the limit is exceeded, a runtime error occurs with the message: Excessive recursive session creation detected, original session ID: [id], current session ID: [id].14
Page background task default timeoutThe default amount of time that page background tasks can run before being canceled. Page background tasks can be also given a timeout value when enqueued at runtime. This limit is used when no timeout is provided when the page background task is enqueued.2 minutes
Page background task max timeoutThe maximum amount of time that page background tasks can run before being canceled. Page background tasks can be also given a timeout value when enqueued at runtime. If a page background task is enqueued with a timeout greater than this limit, this limit is ignored.10 minutes

Report limits:

SettingDescriptionLimit
Default max documentsThe maximum number of documents that can be merged in a report using a Word layout. Users can override this setting on a report-basis from the report request page. If exceeded, the report will be canceled.

Developers can override this setting by using MaximumDocumentCount property of a report. Client users can do the same when running a report from the report request page
200
Max documentsThe maximum number of documents that can be merged in a report using a Word layout. If exceeded, the report will be canceled.500
Default max execution timeoutThe maximum execution time that it can take to generate a report by default. Users can override this setting on a report-basis from the report request page. If exceeded, the report will be canceled.

Developers can override this setting by using the ExecutionTimeout property of a report. Client users can do the same when running a report from the report request page.
6 hours
Max execution timeoutThe maximum execution time that it can take to generate a report. If exceeded, the report will be canceled.12 hours
Default max rowsThe maximum number of rows that can be processed in a report by default. Users can override this setting on a report-basis from the report request page. If exceeded, the report will be canceled.

Developers can override this setting by using the MaximumDataSetSize property of a report. Client users can do the same when running a report from the report request page.
500,000
Max rowsThe maximum number of rows that can be processed in a report. If exceeded, the report will be canceled by the server.1,000,000

Query limits:

SettingDescriptionLimit
Max execution timeoutThe maximum execution time that it can take to generate a query. If exceeded, the query will be canceled.30 minutes
Max rowsThe maximum number of rows that can be processed in a query. If exceeded, the query will be canceled.1,000,000

OData request limits (per environment):

SettingDescriptionLimit
Max concurrent requestsThe maximum number of OData V4 requests the server instance can actively process at the same time. Requests that exceed the limit will wait in the queue until a time slot becomes available.5
Max connectionsThe maximum number of simultaneous OData requests on the server instance, including concurrent and queued requests. When the limit is exceeded, a 429 (Too Many Requests) error occurs.100
Max page sizeThe maximum number of entities returned per page of OData results.20,000 entities per page
Max batch sizeThe maximum number of operations in a batch call.100 operations per batch
Max request queue sizeThe maximum number of pending OData V4 requests waiting to be processed. When the limit is exceeded, a 429 (Too Many Requests) error occurs.95
RateThe number of OData requests per minute that are allowed. An HTTP response code 429 - Too Many Requests is returned if limits are exceeded.Sandbox:
300 requests/minute

Production
– 600 requests/minute
Operation timeoutThe maximum amount of time that the service gives a single OData request. When the limit is exceeded, an HTTP response code 408 - Request Timeout is returned.

After 8 minutes, the session is canceled.
8 minutes

SOAP request limits (per environment):

SettingDescriptionLimit
Max concurrent requestsThe maximum number of SOAP requests the server instance can actively process at the same time. Requests that exceed the limit will wait in the queue until a time slot becomes available.5
Max connectionsThe maximum number of simultaneous SOAP requests on the server instance, including concurrent and queued requests. When the limit is exceeded, a 429 (Too Many Requests) error occurs.100
Max message sizeThe maximum permitted size of a SOAP web service requests65,536 KB
Max request queue sizeThe maximum number of pending SOAP requests waiting to be processed. When the limit is exceeded, a 429 (Too Many Requests) error occurs.95
RateSpecifies how many SOAP requests per minute are allowed. An HTTP response code 429 - Too Many Requests is returned if limits are exceeded.Sandbox:
300 requests/minute

Production:
600 requests/minute
Operation timeoutThe maximum amount of time that the service gives to a single SOAP request. When the limit is exceeded, HTTP response code 408 - Request Timeout is returned.8 minutes

Databases and backups:

Databases are protected by automatic backups that are kept for 28 days. The backup includes data from any production and sandbox environments that the database contains. Administrators of a Business Central tenant can’t directly access or manage these backups because they’re managed automatically by Microsoft. But admins can restore their environments to a specific point in time in the past using the Business Central admin center. For more information, see Restoring an environment and Automated backups – Azure SQL Database.

Each environment is limited to 10 exports per month. This environment has 10 exports remaining for this month.

Each environment is limited to 10 restores per month. This environment has 10 restores remaining for this month.

Number of environments:

Every Business Central customer with Business Central Premium or Essential subscriptions can use one production environment and three sandbox environments, at no extra charge.

Customers can also choose to purchase any number of additional production environments via their CSP partner. Each additionally purchased production environment comes with three additional sandbox environments.

Production and sandbox environments can be created and used in any country where Business Central service is available, also in the country where the default Business Central environments are located. Additional environments can be created by customers, administrators, and partners by using the Business Central administration center.

Storage:

By default, Business Central customers can use up to 80 GB of database storage capacity across all their environments (production and sandbox). This limit means the sum of database capacity usage of all of their environments must not exceed 80 GB.

Apart from the default storage capacity, the customer is entitled to additional storage capacity based on the number of Business Central licenses they own:

License typeAdditional storage (per each license)
Premium3 GB
Essential2 GB
Device1 GB

Some businesses have unique scenarios that may require additional storage. For those organizations that need more space, there’s an option to purchase extra database capacity as an add-on to their existing Business Central subscriptions through their reselling CSP partner. Both 1-GB and 100-GB add-ons are available.

Every additional production environment purchased by the customer also increases tenant-wide database capacity quota by 4 GB.

Software Lifecycle Policy and Dynamics 365 Business Central On-Premises Updates

Modern Lifecycle Policy:

Dynamics 365 Business Central (on-premises) 2019 release wave 2 and later updates are covered by the Modern Lifecycle Policy. The Modern Lifecycle Policy offers support and servicing, including bug fixes, new features, and latest tax updates.

The customer is in full control of its on-premises deployments and must follow this policy. The customer is in control of installing updates in its on-premises environments. Microsoft will support the Dynamics 365 Business Central (on-premises) software as indicated on the Microsoft Lifecycle Policy for Business Central on-premises page, but only if the customer keeps the deployed software current according to this policy. By keeping current, you’re getting all the latest feature and bug fixes.

The following image illustrates the update schedule for Dynamics 365 Business Central.

Fixed Lifecycle Policy:

Dynamics 365 Business Central (on-premises) October’18 and April ’19 Update software is covered by the Fixed Lifecycle Policy.

Licensed customers must stay current with updates to the Dynamics 365 Business Central on-premises software in accordance with the following servicing and system requirements. This policy requires the customer to maintain an Enhancement Plan and deploy updates as noted later in this article.

ReleaseVersionBuild numberAvailabilityMainstream support ends
Dynamics 365 Business Central (on-premises)October’18 Update (version 13.x)24630November 1, 2018**
Dynamics 365 Business Central (on-premises)April ’19 Update (version 14.x)29537April 1, 2019October 10, 2023

** In order to obtain mainstream support after April 14, 2020, customers must update to the April 2019 release or a later update for the April 2019 version

Find more details from Microsoft Document:

Country/regional availability and supported languages

System Requirements for Dynamics 365 Business Central 2021 Release Wave 1

Object Specifications and Limitations

Operational Limits for Business Central Online

Dynamics 365 Licensing guide

END

Hope this will help.

Thanks for reading.

ZHU

コメント

タイトルとURLをコピーしました