0. Important Note About Object Type
The object is specified in the task as Document (Documents.PrintFormLanguages). However, the attached evidence, as well as the standard implementation in the "Library of Standard Subsystems" and in "Accounting for Kazakhstan 3.0," clearly describe this object as Reference (hierarchical/linear reference with attributes "Code" and "Name," element form and selection form, without tabular parts and without posting).
The further description is based on the actual structure from the evidence — as for a reference. The navigation link of the form e1cib/list/Document.PrintFormLanguages will not work; the correct link is e1cib/list/Reference.PrintFormLanguages.
Requires verification in your database: the exact name of the object (
Reference.PrintFormLanguages) through the "All Functions" menu → "References." The type "Document" with that name is absent in the standard configuration.
1. Identification
| Parameter | Value |
|---|---|
| Object Type | Reference (incorrectly specified as "Document" in the task) |
| Name | PrintFormLanguages |
| Full Name | Reference.PrintFormLanguages |
| Synonym | Print form languages |
| Configuration | Accounting for Kazakhstan, edition 3.0, version 3.0.74.2 |
| Hierarchy | Flat structure (hierarchy is not used) |
| Main Representation | Name |
Purpose. The reference stores a list of languages in which printed forms of documents (invoices, waybills, acts, electronic invoices (ESF), etc.) and reports can be generated in the configuration. Each record is a print interface language: language code (ru, kk, en) and localized name. The object serves the multilingual print form subsystem: when generating a print form, the system refers to the list of available languages to substitute the necessary layouts and localized strings. The object has no direct relation to accounting, taxes, and cash flows — it is a regulatory reference object for localization.
Where to find. Section "Administration" / "Standard Subsystems" → "Print Form Languages." Direct transition: e1cib/list/Reference.PrintFormLanguages.
2. Attributes and Tabular Parts
2.1. Standard Attributes
| Name | Type | Mandatory | Purpose |
|---|---|---|---|
Code |
String | Yes (standard) | String identifier of the language by standard (e.g., ru, kk, en). Used as a machine-readable key for the language when selecting layouts and localized strings. |
Name |
String | Yes (standard) | Localized name of the language (e.g., "Русский", "Қазақ тілі", "English"). Displayed in language selection lists. |
2.2. Header Attributes
| Name | Type | Mandatory | Purpose |
|---|---|---|---|
AdditionalSortingAttribute |
xs:decimal (Number) |
Not mandatory (DontCheck) |
Controls the order of language display in selection lists regardless of alphabetical/code order. Allows priority languages (e.g., ru, kk) to be displayed at the top of the list. |
2.3. Tabular Parts
None. The reference has a simple flat structure "code + name + order".
3. Forms
| Form | Role | Composition |
|---|---|---|
| ListForm | Main form for the list of print form languages; viewing and managing the list | Table of reference items, commands for creating records and calling help; ~54 control elements. Key form for working with the list. |
| ElementForm | Creating/editing a single record about a language | Input fields "Language" (Name) and "Code". Standard form for editing an element. |
| SelectLanguageFromAvailableList | Adding a language from the set of pre-installed (system-supported) languages | Table with columns "Name" and "Code" of available languages, selection button; ~41 control elements. Does not allow creating a "custom" language — selection is made from the list supported by the platform/configuration. |
4. Key Module Procedures
BSL code in evidence is not attached. Below are typical handlers characteristic of a reference of this structure in BK 3.0 / BSP. Specific lines are clarified in your version.
Object Module (FillProcessing, BeforeWriting, FillCheck)
FillProcessing(FillData, ...)— initial filling when creating (can copy code/name from the selected available language).BeforeWriting(Refusal)— control of the uniqueness of the language code and the correctness of the value ofAdditionalSortingAttribute.FillCheck(...)— checking for non-empty "Code" and "Name".
List Form (ListForm)
OnServerCreation(...)— setting conditional formatting and order (byAdditionalSortingAttribute, then by name).- Handlers for create/select commands that open
ElementFormandSelectLanguageFromAvailableList.
Selection Form (SelectLanguageFromAvailableList)
OnServerCreation(...)— filling the table of available languages (from the configuration language metadata / predefined list of BSP).SelectLanguage(...)— returning the selected language to the calling form and adding it to the reference if it is not already created.
Managerial/general level (multilingual subsystem)
- Functions for obtaining a list of available languages and determining the default print language — usually placed in common modules of the subsystem (e.g., families "DataPrinting"/"Localization"), not in the module of the reference itself.
5. Posting and Movements
The object is not posted and does not generate movements in either accumulation registers or accounting registers. This is a regulatory reference object for localization, it has no posting attribute and no module with the procedure PostingProcessing.
Accordingly, this object is not related to postings of the standard chart of accounts of the RK (1210 "Short-term receivables from buyers," 1030 "Cash in current accounts," 1330 "Goods," 3310 "Payables to suppliers," 3130 "VAT payable," 6010 "Revenue from sales," 7010 "Cost of sales") and tax calculations (VAT 16%, PIT, WPP, WPPR, VOSMS, OMS, social tax). These parameters relate to accounting documents of the configuration, not to the language reference.
The only "effect" of the record of an element is the expansion of the list of languages available in the print mechanism: the selected language becomes available for generating print forms of those documents where multilingual printing is implemented (e.g., ESF and CNT, invoices, waybills).
6. Related Objects and Input Based On
- Printing subsystem (multilingualism). The reference is the source of the list of languages for the mechanisms of generating print forms; the selected language determines which language version of the layout and localized strings is used.
- ESF and CNT printing settings. Electronic documents (IS ESF, CNT) are generated and printed taking into account the selected language; the reference provides a list of permissible languages.
- Forms for selecting the print language in sales/purchase documents and in reports refer to the elements of this reference.
Input based on is not provided for the reference (the "Input Based On" mechanism applies to documents). Filling is done manually through ElementForm or by selection through SelectLanguageFromAvailableList.
7. Extension Points
- Adding a language. Through the selection form
SelectLanguageFromAvailableList— the preferred method (ensures a supported system code). Manual creation of an element — if a non-standard language is needed. - Display order. The attribute
AdditionalSortingAttribute— a standard control point for sorting in selection lists without code modifications. - Configuration extensions (without removing from support). Adding attributes/commands to forms, subscriptions to events
BeforeWriting/OnWritingfor custom validation of language codes. - Integration with print layouts. When adding a new language, it is necessary to ensure the presence of corresponding language versions of layouts and localized strings in printed documents — otherwise, printing in the new language will output strings in the default language.
Requires verification in the specific assembly 3.0.74.2: the list of pre-installed languages in the selection form and which specific subsystem (common module) implements the function of determining the default print language.
