1. Identification
| Parameter | Value |
|---|---|
| Object Type | Catalog |
| Name | DataAreaMessages |
| Full Name | Catalog.DataAreaMessages / Catalogs.DataAreaMessages |
| Synonym | — (no separate synonym defined; service object) |
| Configuration | Accounting for Kazakhstan, edition 3.0 (version 3.0.74.2) |
| Purpose | Service system catalog for storing messages transmitted between data areas of a distributed information base in a SaaS (service) model. Ensures asynchronous interaction between data areas / nodes of the exchange plan MessageExchange |
Object Characteristic. This is an infrastructural (technological) object of the data exchange subsystem of the Standard Subsystems Library (SSL). It does not belong to the accounting circuit: it does not store primary documents, does not participate in accounting entries, and does not generate tax reporting. Records are created, modified, and deleted programmatically by background exchange mechanisms; the end user does not interact with it directly.
Where to find:
- Interface: section "Service Technology" → "Data Area Messages" (available to the service administrator; usually hidden in the standard client menu).
- Navigation link:
e1cib/list/Catalog.DataAreaMessages
2. Header Attributes and Table Parts
2.1. Header Attributes
| Name | Type | Mandatory | Purpose |
|---|---|---|---|
| MessageBody | ValueStorage (v8:ValueStorage) |
Not checked | Serialized message body — the actual transmitted data. Allows compact storage of arbitrary structure (structures, value tables, binary data) in one field |
| Sender | ExchangePlanRef.MessageExchange (cfg:ExchangePlanRef.MessageExchange) |
Not checked | Reference to the exchange plan node — the source of the message. Identifies from which data area the message was sent |
| Recipient | ExchangePlanRef.MessageExchange (cfg:ExchangePlanRef.MessageExchange) |
Not checked | Reference to the exchange plan node — the recipient of the message. Defines the recipient data area |
| Blocked | Boolean (xs:boolean) |
Not checked | Indicates that the message is blocked for processing (critical error, manual resolution of the problematic situation). Blocked messages are excluded from automatic processing |
| MessageProcessingAttemptsCount | Number (xs:decimal) |
Not checked | Counter of processing attempts. Used by the retry logic: upon reaching the limit, the message is marked as problematic / blocked |
| ErrorDetailView | String (xs:string) |
Not checked | Text of the error from the last unsuccessful processing attempt. Serves for diagnostics and debugging of the exchange |
| ThisIsFastMessage | Boolean (xs:boolean) |
Not checked | Priority indicator. "Fast" messages are processed out of turn for urgent operations |
Additionally, the object has standard catalog attributes: Code, Name, Reference, DeletionMark, Predefined. The name/code are filled in service-wise and do not carry substantive load for the user.
2.2. Table Parts
Table parts in the catalog are absent. All useful message payload is stored in the attribute MessageBody (ValueStorage).
3. Forms
No custom forms for the catalog are defined. The object is service-oriented and does not imply interactive work through the standard interface.
When opened via the navigation link, the platform uses auto-generated forms:
- List Form (auto) — viewing the message queue by the service administrator (sender, recipient, blocking/fast message flags, attempt counter, error text).
- Item Form (auto) — viewing a single message; the
MessageBodyfield as ValueStorage in the form is readably limited, mainly used for diagnostics. - Selection Form (auto) — has no practical application, as the object is not selected by the user in documents.
4. Key Module Procedures
Evidence for modules (BSL) is not attached. Below are typical handlers for an object of this type within the "Message Exchange between Data Areas" subsystem of the SSL. Check specific method names in the object manager module and in the common modules of the subsystem of the specific assembly.
Object Module / Manager Module:
FillProcessing— service initialization of fields when programmatically creating a record (according to the standard, the substantive logic is minimal).BeforeWriting/OnWriting— control of the correctness of fillingSender/Recipient, updating service indicators.
Common modules of the exchange subsystem (typical logic points working with this catalog):
- Recording incoming/outgoing messages — a catalog item is created, the body is serialized into
MessageBody,Sender,Recipient,ThisIsFastMessageflag are set. - Processing the message queue — selection of unblocked records (considering the priority of "fast" ones), deserialization of the body, calling the recipient handler.
- Error handling — upon exception, increment
MessageProcessingAttemptsCount, record text inErrorDetailView; upon reaching the limit of attempts, setBlocked = True. - Deletion of successfully processed messages from the queue.
Requires verification (version-specific): exact names of common modules and methods, as well as the maximum number of processing attempts and the subscription limit detection rule — in this assembly branch, the logic was modified (fix for subscription limit detection from 06.09), so please cross-check with the code of the specific delivery 3.0.74.2.
5. Posting and Movements
The catalog is not posted and does not generate accounting entries or movements in accounting registers. It is a technological object of the exchange mechanism, not a document.
- It does not affect accounting, accumulation, and information registers.
- Planned accounts of the RK (for example, 1210, 1030, 1330, 3310, 3130, 6010, 7010), rates and limits of taxes in Kazakhstan 2026 (VAT 16%, PIT 10%/15%, deduction for PIT 30 MRP/month and no more than 360 MRP/year with MRP = 4,325 ₸, MZP = 85,000 ₸, OPE 10%, OPEP 3.5%, VOSMS 2%, OSMS 3%, CO 5%, social tax 6%) are not applicable to this object — it does not participate in tax and cost calculations.
- "Movement" of data here refers to the transmission of the serialized message body between data areas: recording the catalog item at the sender/recipient and its subsequent processing and deletion by the exchange subsystem. Accounting results (documents, ESF/SNT through IS ESF, entries in tenge) are generated by those recipient objects that process the delivered message, but not by the catalog itself.
6. Related Objects and Input on Basis
- Exchange Plan
MessageExchange— key related object: its nodes serve as values for the attributesSenderandRecipient. - Subsystem "Message Exchange between Data Areas" (SSL) — common modules and scheduled tasks that read/write/process records of the catalog.
- Data Area (SaaS) — context in which messages are created and processed.
Input on basis for this catalog is not provided: it is neither a basis nor a result of input on basis in the user sense. Records are created exclusively programmatically by exchange mechanisms.
7. Extension Points
- Configuration Extension: adding handlers
BeforeWriting/OnWritingin the object module for additional logging or control; adding marker attributes (without changing the basic exchange logic). - Subscriptions to events of object recording/deletion — for auditing the message queue or collecting metrics on problematic messages.
- Overridable modules of the exchange subsystem (
*Overridable) — standard place for embedding application logic for processing the message body without modifying standard modules. - Scheduled tasks for processing the queue — configuring the schedule and parameters for retries.
- Reporting/monitoring: building a service report or dynamic list from
e1cib/list/Catalog.DataAreaMessagesfiltered byBlocked = Trueand highMessageProcessingAttemptsCountfor monitoring "stuck" messages.
When making modifications, do not change the serialization format of
MessageBodyand the semantics ofSender/Recipient— this will disrupt compatibility with the standard exchange mechanism and the updatability of the configuration.
