Accounting in the 1C:Enterprise system is done by the Charts of accounts and Accounting registers configuration objects. Since these objects are closely connected, this chapter outlines the features they provide.
The subsequent sections discuss the issues of configuring the mentioned objects.
The Designer allows you to organize accounts among several charts of accounts and to build a custom hierarchy of subaccounts for each chart of accounts. Accounting totals are stored separately by the 1C:Enterprise system for each chart of accounts.
Flexible account numbering, using both numbers and letters, is permitted for the charts of accounts.
Analytical accounting is possible for any account or subaccount, using various analytical combinations. 1C:Enterprise system catalog items, documents or random numbers, dates and strings may be objects of analytical accounting.
Configuration tools allow maintaining an unlimited number of accounting types for each chart of accounts. Typical examples of account types are quantitative and foreign currency accounting.
An accounting type is selected during the editing of the chart of accounts. The type of accounting to be maintained can be selected for a particular account.
The Designer provides tools to set up accounting for multiple enterprises in the same infobase. You can derive the information on the final amount for a separate enterprise or for all enterprises collectively. This function may be useful for enterprises with a consolidated balance.
A chart of accounts is one of the basic concepts in accounting. A chart of accounts is a set of synthetic accounts intended for grouping information on the enterprise's commercial operations. Data stored in synthetic accounts enables the user to get a complete picture of the state of enterprise’s funds in monetary terms.
The 1C:Enterprise system provides flexible capabilities for maintaining charts of accounts. In fact, it is by setting the chart of accounts that the required accounting system is organized.
Multiple charts of accounts. The 1C:Enterprise system can have several charts of accounts and books can be kept under all charts of accounts simultaneously. From a technical standpoint, the total number of charts of accounts you can keep in the system is unlimited and defined only by real accounting needs.
For example, this kind of "multi-chart" accounting can be useful for joint enterprises that need to conduct their accounting with two or more accounting standards simultaneously.
Subaccounts. Charts of accounts in 1C:Enterprise support the "account – subaccount" multilevel hierarchy. Each chart of accounts can include an unlimited number of top-level accounts. Each account can also have an unlimited number of subaccounts. Every subaccount, in its turn, has subaccounts of its own – and so on. The number of subaccount levels in the 1C:Enterprise system is unlimited.
The structure of the account code can be specified when a chart of accounts is created in the form of a template consisting of an arbitrary sequence of characters. Technically, the structure of an account code does not affect the hierarchy of accounts, but when creating the structure of accounts, we recommend that you adhere to the code structure.
Separate account editing. Errors in accounting are known to occur often due to the incorrect application of the approved chart of accounts. The most common situation is an absence of analytical accounting in cases where a detailed balance is needed. In such cases, although the accounting is formally correct (everything "fits"), the bottom line results are incorrect. For this reason it is often useful to restrict end users when setting up charts of accounts.
To accomplish this, 1C:Enterprise allows you to divide the editing process up for charts of accounts.
First, the chart of accounts can be edited by the specialist who configures 1C:Enterprise in the Designer.
New charts of accounts can be created in the Designer. The main properties of a chart of accounts are specified during configuration of the given chart of accounts: the account and length of its code; the maximum count of Extra Dimensions an account (subaccount) can have and other properties. Here you can also enter the necessary accounts and subaccounts (predefined accounts) in the chart of accounts, as well as set up the accounting types for the accounts.
Secondly, when operating 1C:Enterprise, the end user can add custom accounts and subaccounts to the charts of accounts, but he/she cannot delete the predefined accounts and subaccounts created in the Designer.
Storing accounting totals. Accounting totals are stored in accounting registers, using the chart of accounts structure. Totals information can be viewed in accounting register forms and can also be derived using the 1C:Enterprise script which has methods for obtaining account turnovers and balances for any type of accounting, both for an account or subaccount as a whole or divided into analytical accounting objects.
Company asset information which is recorded in accounts is often summary-like in nature. For example, a standard chart of accounts contains account 10 called "Materials" and consolidating "general information about availability and movement of raw materials, materials, fuel, spare parts, package materials, etc. possessed by the company". Account 10 may have several subaccounts opened for various kinds of materials. But organized this way, the subaccounts store the total values of materials by type and account 10 stores the total value of all the materials.
To get detailed information on the availability of certain materials, it is necessary to set up analytical accounting for materials. In this case the subaccount totals are split into smaller totals representing the value of specific materials.
A special mechanism called Extra Dimension organizes analytical accounting in 1C:Enterprise.
Notion of Extra Dimensions. An analytical accounting object in 1C:Enterprise is called an Extra Dimension. The term "Extra Dimension" may represent any analytical accounting objects: fixed assets, intangible assets, materials organizations, subordinates, contracts and budgets. The multiplicity of single-type analytical accounting objects is called an Extra Dimension type.
For example, liabilities to customers and clients are necessarily kept according to normative documents, separately for each customer and client. In 1C:Enterprise, the list of customers and clients (assuming they are only entities) is called Organizations extra dimension type and any entity in this list is called Extra Dimension.
The 1C:Enterprise Designer allows the creation of any number of Extra Dimension types to achieve the required completeness in analytical accounting for the company.
As a universal means for describing the properties of analytical accounting objects, the Chart of characteristic types objects are used.
Using primitive types is not recommended for charts of characteristic types used as Extra Dimension types in the chart of accounts. It may have a substantial effect on performance when writing accounting register records. It is recommended to use reference types only.
Setting up analytical accounting. In 1C:Enterprise, analytical accounting can be kept for any account or subaccount. To do this, when editing charts of accounts, an appropriate Extra Dimension type is attached to the required account or subaccount. Several different types of Extra Dimensions can be attached to an account or subaccount (the maximum count is defined in the Maximum number of extra dimensions property), thus allowing analytical accounting to be kept in any necessary combination.
Information about business operations is entered into 1C:Enterprise as accounting register records. Analytical accounting objects should be specified for each corresponding account of the record if analytical accounting is appointed for these accounts.
For example, in industrial companies the following types of Extra Dimensions can be attached to the production cost account: Cost types for types of cost accounting, Goods for types of manufactured goods account (products, services) and Subdivisions for department accounting. Analytical information on costs can be derived from any of these types of Extra Dimensions.
Moreover, the analytical accounting features of 1C:Enterprise allow you to keep a record of the same analytical object in different combinations.
Thus, a single catalog can be appointed to various types of Extra Dimensions. For example, a company buys components from suppliers and sells finished goods to customers. In this case in 1C:Enterprise, the Organizations catalog can be appointed as the Vendors and Buyers Extra Dimension types.
Extra dimensions and subaccounts. Chart of accounts properties in 1C:Enterprise (especially a large number of nested levels of subaccounts or a long subaccount code) still allow you to set up analytical accounting using subaccounts instead of Extra Dimensions. However, the features of analytical accounting using subaccounts and Extra Dimensions are fundamentally different.
Subaccounts have a hierarchical structure subordinate to a specific synthetic account. For example, to record customer debt owed to the enterprise in the customer control account (account 62 in the standard chart of accounts), it is possible to open a separate subaccount for each customer to record their debt. This method allows you to obtain information on the total sum the enterprise owes to a certain customer, as well as the total sum of the liabilities to all customers – derived by adding up all the debt amounts from all the subaccounts.
However, if a buyer organization also becomes a supplier to the enterprise, an account will need to be set up for recording operations with this entity as a supplier. By keeping analytical accounting in subaccounts for this new vendor, it is obviously necessary to open a new subaccount, this time in the account for operations with suppliers (account 60). Now, if you keep the record in this subaccount, you can obtain the information about mutual settlements with this entity as a supplier.
But to obtain information about the general status of mutual settlements with this entity, you need to combine the records on settlements with this entity from two different accounts. To do so, you need to remember which subaccount of the customers' account and which subaccount of the suppliers' account correspond to this specific entity, then retrieve the information on the status of settlements with this entity and process it.
When using Extra Dimensions, one Extra Dimensions list, like Organizations, for example, is attached to all the accounts (subaccounts) for which you need to keep analytical accounting on entities. The record of a specific entity as a supplier is kept in the corresponding control account. If the entity also becomes a buyer, there is no need to create a new entry in the entity list, since it has already been entered as a vendor. 1C:Enterprise combines the information from two control accounts for one entity automatically. In the same way, you can combine data from any accounts recording operations that a specific entity is a part of.
Multi-level analysis. Multi-level analysis allows you to obtain accounting totals with different levels of detail. If you use Extra Dimensions to keep analytical accounting, then to perform a multi-level analysis, appoint a chart of characteristic types as the Extra Dimensions types (see page 1-309). Using Charts of characteristic types objects allows you to keep records with the necessary degree of detail. Using the characteristic value type limits the number of nesting levels (for example, as a value type, any hierarchical catalog can be used and using a composite type is also allowed).
In conducting analytical accounting using subaccounts, multi-level analytical accounting is implemented by using subaccounts of different levels.
As has already been noted, 1C:Enterprise allows you to use an unlimited number of accounting types. Typical examples of accounting types are quantitative and foreign currency accounting.
Using the Designer, an unlimited number of different accounting types can be set up. Accounting types are defined by subordinate Accounting flag objects of the Chart of accounts object.
The main concept in accounting is a business transaction. A transaction is any business action capable of causing a change in the state of the enterprise’s assets.
1C:Enterprise uses documents to enter data on business transactions. A document enables you to enter data on a business transaction into the system and record the transaction date and time as well as its amount and content.
Accounting data on a transaction are automatically generated on the basis of the document (a Document data object) and recorded in accounting registers. The generation procedure is defined in the Designer using the 1C:Enterprise script tools. When transaction data are entered, you can describe how transaction attributes are to be filled with various data from the document that generates the transaction.
In the 1C:Enterprise system, the accounting of a business transaction is always linked to its parent document: if the document must be edited, the transaction data are regenerated when the document is posted; if the document is deleted, the business transaction data are deleted as well.
In general, each business transaction consists of an arbitrary number of postings. In the 1C:Enterprise system, each accounting posting corresponds to an accounting register record and a set of accounting register records is analogous to a business transaction. For a description of the posting procedure see page 1-660.
According to the existing legislation, entities that have departments, including those with a separate balance (affiliated branches, subsidiaries), must maintain accounting for the activities of all of their departments. For these entities, the ability to account for all of their departments in a single infobase and to obtain a consolidated report is very important. In composing accounting reports, it is also advisable to provide separate reports on the departments' main business operations to avoid unnecessary questions from the tax authorities.
The 1C:Enterprise accounting tools allow you to keep accounting records for several enterprises (or departments of one enterprise) in the same infobase simultaneously. The completion of this task consists of creating accounting register dimensions containing references to a department.
The information entered in these dimensions while operating 1C:Enterprise is used as a flag indicating separate totals. 1C:Enterprise automatically sets up a totals storage system, dividing them according to the value of the dimension. Using the 1C:Enterprise script, you can derive information from the totals for a particular company or for all companies.
To manage charts of accounts, 1C:Enterprise uses the Chart of accounts configuration objects. Data objects of this kind are accounts (accounting registers) used for grouping the assets in 1C:Enterprise. The Designer allows you to create virtually an unlimited number of charts of accounts. All charts of accounts created in the Designer can be used simultaneously.
As described earlier, charts of accounts in 1C:Enterprise support the "account – subaccounts" multilevel hierarchy.
Use the editing window (see page 1-59) or the properties palette to edit the Chart of accounts object properties and create subordinate objects. This section contains a description of properties specific to the Chart of accounts configuration object.
Code mask – is used to describe an account and subaccount code structure. A mask string can include the following special characters:
! – transforms any entered character to upper case.
9 – allows to enter any numeric character.
# – allows to enter an arbitrary numeric character, – (minus sign), + (plus sign) or a space character.
N – allows to enter any alphanumeric characters.
U – allows to enter any alphanumeric characters which are automatically converted to uppercase.
X – can be used to enter an arbitrary character.
@ – allows to enter any uppercase alphanumeric character or a space character.
^ – this character may not be entered by the user interactively, it can only be set from the 1C:Enterprise script.
h – can be used to enter characters denoting hexadecimal numbers.
Any special character to be used in the mask must be preceded by \.
If the code mask contains periods or does not contain commas, all periods are automatically replaced by commas when the account code is entered.
Autoorder by code – if this property is defined, then ordering by the Order field is implemented instead of ordering by account code.
Order length – if the length is greater than zero, the Order field is used by default to order the chart of accounts.
The maximum length of such attributes as Code length, Description length and Order length is 628.
Attributes – various descriptions of an account or subaccount are indicated; for example, the name for account 10 is Materials.
Accounting flags – the list of accounting types is defined. Typical examples of accounting types are foreign currency and quantitative accounting. Configuration developers can create as many types of accounting as they need to complete their specific task.
Tabular sections – tabular sections are not used with standard charts of accounts. Setting up simultaneous data accounting in different charts of accounts to provide a detailed account corresponding to multiple charts of accounts is a good example of using the Tabular Sections subordinate objects.
Maximum number of extra dimensions – defines the maximum count of Extra Dimensions (up to 50) used to set up analytical accounting.
Extra dimension types – the Chart of characteristic types object is indicated (see page 1-309).
Extra dimension accounting flags – the list of Extra Dimensions accounting flags is created. In setting up analytical accounting for the accounts, these flags allow you to define the use of an Extra Dimension when forming predefined accounts.
Any number of accounting types can be defined for each chart of accounts.
When creating an account or subaccount, you must indicate a use flag for each type of accounting defined for this account.
Accounts are created as data objects in the Designer.
To create a list of predefined accounts in the Chart of accounts object's properties palette in the Predefined property, click the Open link. The list of accounts window appears.
Fig. 268. Chart of Accounts
The list of accounts is managed using the Actions menu commands.
The account data are formed in the account editing window (see fig. 269).
The Type attribute specifies the type of account: Active, Passive or Active/Passive.
For off-balance accounts, check the Off-balance check box. The totals for offbalance accounts are discarded when totaling the balance.
The Order field is designed for custom accounts ordering. The length of the field is defined in the Order length property. If the length of the field is greater than zero, this field is used by default to order the chart of accounts. If the chart of accounts has the Autoorder by code property set, then ordering by the Order field is used instead of ordering by account code or description. The GetCodeOrder() method that creates an account order string for the account code mask is used to fill the Order field by account code.
Fig. 269. Predefined Account Editing
The first list contains the accounting flags defined for the Chart of accounts object. Select the check box in the Accounted column to indicate that the edited account belongs to a certain accounting type.
For each entry in the lower list, the following parameters are defined. In the Extra dimension type column, one of the predefined characteristic types is selected. If this chart of accounts has subordinate objects defined in the Extra dimension accounting flags branch, the list is appended with columns according to the number of these objects. You should check each Extra Dimension type if analytical accounting is required for this Extra Dimension type.
In the 1C:Enterprise mode, the end user can add custom accounts and subaccounts in the charts of accounts, as well as edit account properties, but he/she cannot delete accounts and subaccounts created in the Designer. In the 1C:Enterprise mode, the following attributes only can be modified for the accounts created in the Designer:
To show accounting information for business transactions, 1C:Enterprise uses the accounting registers described in the Accounting registers branch of the configuration tree.
In its appearance, the accounting register resembles an accumulation register. Editing an accounting register means developing its structure: sets of dimensions, resources and register attributes; screen and print forms to view the register records are also created, if necessary (see page 1-59).
The main feature of the accounting register is that it is connected to the chart of accounts and supports the double-entry system. Every accounting register record always contains the required attributes Account Dr (debit account) and Account Cr (credit account) for the registers supporting correspondence and the Account attribute for those that do not support correspondence.
The Enable totals splitting property enables the totals splitting mechanism that ensures a greater concurrency of writing to the register (for a description of a similar property for accumulation registers see page 1-326).
Such values as UUID, BinaryData, and any unlimited length string cannot serve as the type of accounting register dimensions.
For a business transaction entered by a document to cause changes in the totals, the document must generate accounting register records.
The records from a particular document represent a group (through the recorder document) that always "holds" together when any changes are made to the document attributes or records. The order of record creation is also defined using the 1C:Enterprise script.
The structure of a record is built by 1C:Enterprise dynamically depending on the configuration of various accounting items during the editing of the chart of accounts. For example, a record may contain attributes for entering the corresponding accounts, amounts, analytical accounting objects, quantities, currency types and amounts in foreign currency.
Besides these attributes, you can create additional attributes for the record in the Designer, containing any other necessary information. For example, it can be an attribute for storing comments in the record.
In operating 1C:Enterprise, the user can disable records and then re-enable them. Disabled entries do not affect the account balance or turnovers. Records are enabled and disabled using the Active property.
This feature is useful in accounting for planned business transaction, i.e. those that will occur in the future. Disabling records for such a transaction, you can keep the real totals unchanged. When these transactions take place, it is sufficient to simply re-enable them.
When entering records, 1C:Enterprise performs various predefined operations, making the user's work with the system faster and easier. For example, if analytical accounting is set for a corresponding account, the system automatically opens the list of analytical accounting objects (Extra Dimensions), so that the user can select the required object. Many aspects of 1C:Enterprise behavior can be set up by editing accounting register record properties.