1C:Enterprise 8 database storage structure

Publications: 1C:Enterprise 8 database storage structureThe information contained here is intended solely to understand the location and composition of data use by 1С:Enterprise and is intended for the developers of application solutions and specialists involved in administration of 1С:Enterprise 8 information bases. The below information should not be used to work with these data using any methods not provided by regular mechanisms of 1С:Enterprise 8.
List of tables and objects is relevant for 1С:Enterprise 8.1. For versions 8.2 and 8.3 it is applicable almost entirely, but is not complete.

Information bases, configuration repositories, auxiliary data, temporary data

The subject of this review are only the data that 1С:Enterprise always uses regardless of the actions performed by the specific configurations or actions related to the user choice of specific files. Thus, the files of configurations, data uploading, external data processors and other files external to the 1С:Enterprise 8 will not be considered here.
Data that 1С:Enterprise always uses can be divided into 5 groups according to their purpose and measure of their importance:

  • Information bases. Information bases include the most critical information that includes: configuration, all data on the economic activity of the enterprise as well as administrative information. All data associated with information base are combined in the database. Loss or corruption of any data in the information base can lead to the loss of system availability based on the 1С:Enterprise.
  • Configuration repository contains the current information and history or its development when using in the Designer the tools of team development. When developing configuration, this information is also “essential”.
  • Event log contains a list of operations performed with this information base. This information is not required for system operation based on the 1С:Enterprise, but can be important from an organizational perspective.
  • Auxiliary data. Auxiliary data include those data which serve for the user convenience and do not affect the logic of system operation base on the 1С:Enterprise.
    • Profiles contain information about the location of windows, current positions, state of dialogs and other settings which allow the user to work more comfortably. Different configurations may store in the profiles another information which can be useful, but is not essential.
    • Other auxiliary data. They include the lists of information bases registered on the client or on the server and some other data.
  • Temporary data. These data are used by the 1С:Enterprise 8.1 for service purposes. They are topical only within a single operation session and are destroyed after its completion.

Arrangement of data which belong to different groups is different. Additional variety in the methods of data storage give an opportunity to organize both file and client-server information bases.

Organization of information bases

Data that define the logic of system functioning based on the 1С:Enterprise are related to the information base. Storage of information base is performed in the database in the form of a set of tables for which 1С:Enterprise 8 may use one of the five database management system (DBMS):

  • Integrated in 1С:Enterprise 8 (file variant of information base). In this case, all data of information base are stored in the file with the name 1Cv8.1CD. This file is binary and in fact is a database for DBMS integrated in 1С:Enterprise 8.
  • Microsoft SQL Server (client-server variant of information base). All data of information base are stored in the database Microsoft SQL Server.
  • PostgreSQL (client-server variant of information base). All data of information base are stored in the database PostgreSQL.
  • IBM DB2 (client-server variant of information base). All data of information base are stored in the database IBM DB2.
  • Oracle Database (client-server variant of information base). All data of information base are stored in the database Oracle Database.

At the level of database objects (tables, fields, indexes, etc.) both file and client-server variants of information base have a similar format (which is different in inessential details). Some information about this format is contained below.
The entire information base is presented in the database in the form of a set of tables. There are a few tables among them that are always present in any information base:

  • Config - basic configuration of information base. This configuration corresponds to the real data structure and is used by 1С:Enterprise 8 in the Enterprise mode.
  • ConfigSave - configuration edited by the Designer. Configuration from ConfigSave is rewritten in Config when executing “Update database configuration” in the Designer and vice versa - when executing operation “Configuration - Database configuration - Return to database configuration” in the Designer.
  • Files contains a service information, for example, about operation with configuration repository.
  • Params contains information base parameters. Among them:
    • user list of information base.
    • Localization settings of information base.
    • Table of correspondence between metadata and database objects (tables, fields, indexes).
    • Some other information.
  • _YearOffset - offset of dates in the database. This table is created only when using Microsoft SQL Server.
  • DBSchema contains information about the structure of 1С:Enterprise database and determines other database objects used by this information base.
  • At the startup, 1С:Enterprise check for presence in the information base of listed tables and in case of the absence of any of them the message “information base destroyed” is generated. The absence of all listed tables means that the information base is empty. In the latter case, these tables will be created.

    The list and structure of other database tables is determined by the particular configuration, namely, by the metadata objects defined in it. The name of each table consists of a letter prefix followed by a number. Prefix determines the table purpose and number allows distinguishing the tables of the same purpose that are related to different metadata objects. If IBM DB2 is used as DBMS, then the described structure have not the names of tables, but their aliases.

    If configuration defines at least on exchange plan with enabled flag “Distributed database”, then the following tables will be created:

    • _ConfigChangeRec - table to record the changes of configuration objects.
    • _ConfigChangeRec_ExtProps - table for the names of files of the changed external properties of configuration objects.

    Below different metadata objects are listed to which the specific tables may correspond.

    • Constants
      • _Consts contains the current values of all constants defined in the configuration.
      • _ConstsChangeRec - table to record the changes of constants. Created if at least one constant participates at least in one exchange plan.
    • Exchange plans
      • _Node<n> - table of exchange plan.
      • _Node<n>_VT<k> - table part of exchange plan, created for each table part.
    • Catalogs
      • _Reference<n> - catalog table.
      • _Reference<n>_VT<k> - table part of catalog - for each table part.
      • _ReferenceChangeRec<n> - table to record the catalog changes. Created it catalog participates at least in one exchange plan.
    • Documents
      • _Document<n> - table of documents for each metadata object “document”.
      • _Document<n>_VT<k> - table part of document - for each table part of each document.
      • _DocumentChangeRec<n> - table to record the changes of metadata object with type “document”. Created for each metadata object with type “document”, if it participates at least in one exchange plan.
    • Document sequences
      • _Sequence<n> - table of document registration - for each sequence.
      • _SequenceBoundary<n> - table of sequence bounds - for each sequence.
      • _SequenceChangeRec<n> - table to record the sequence changes. Created for each sequence which participates at least in one exchange plan.
    • Document journals.
      • _DocumentJournal<n> - table of document journal, created for each document journal.
    • Enumerations
      • _Enum<n> - enumeration table - one for each enumeration.
    • Charts of characteristic types
      • _Chrc<n> - basic table of the chart of characteristic types.
      • _Chrc<n>_VT<k> - table part of the chart of characteristic types - for each table part.
      • _ChrcChangeRec<n> - table to record the changes of the chart of characteristic types. Created if the chart of characteristic types participates at least in one exchange plan.
    • Chart of accounts
      • _Acc<n> - basic table of the chart of accounts.
      • _Acc<n>_ExtDim<k> - table of subcount types of the chart of accounts, created for the chart of accounts in case if the maximal number of subcount is more than zero.
      • _Acc<n>_VT<k> - table part of the chart of accounts, created for each table part of the chart of accounts.
      • _AccChangeRec<n> - table to record the changes of the chart of accounts. Created if the chart of accounts participates at least in one exchange plan.
    • Chart of calculation types
      • _CalcKind<n> - basic table of the chart of calculation types.
      • _CalcKind<n>_BaseCK - table of the basic calculation types, created for the chart of calculation types if it property “Dependence from base” has the value different from “Doesn’t depend”.
      • _CalcKind<n>_DisplacedCK - table of displaced calculation types, created for the chart of calculation types in case if it has an enabled flag “Uses validity period”.
      • _CalcKind<n>_LeadingCK - table of leading calculation types - for each chart of calculation types.
      • _CalcKindDN<n> - auxiliary table for displacement order, created if the chart of calculation types has an enabled flag “Uses validity period”.
      • _CalcKind<n>_VT<k> - table part of the chart of calculation types, created for each table part.
      • _CalcKindChangeRec<n> - table to record the changes of the chart of calculation types. Created if the chart of calculation types participates at least in one exchange plan.
    • Information registers
      • _InfoReg<n> - table of the information register records.
      • _InfoRegChangeRec<n> - table to record the changes of information register. Created if the information register participates at least in one exchange plan.
    • Accumulation registers
      • _AccumReg<n> - table of accumulation register records.
      • _AccumRegTotals<n> - table of accumulation register totals, if the register supports the remains.
      • _AccumRegTurnovers<n> - table of accumulation register turnovers, if the register supports the turnovers.
      • _AccumRegChangeRec<n> - table to record the accumulation register changes. Created it the accumulation register participates at least in one exchange plan.
      • _AccumRegOptions - table of options for storing the totals of accumulation registers, one for all accumulation registers.
    • Accounting registers
      • _AccntReg<n> - table of accounting register records.
      • _AccntRegED<n> - table of subcount values of accounting register, created if it refers to the chart of accounts whose maximal number of subcount is more than zero.
      • _AccTtl0<n> - table of totals on the account.
      • _AccTtl<i><n> - where i is from 1 to maximal number of subcount. Table of totals on the account with the number of subcount types equal to i.
      • _AccTtlC<n> - table of totals of the turnovers between the accounts, only for accounting register which supports the correspondence.
      • _AccntRegChangeRec<n> - table to register the accounting register changes. Created if the accounting register participates at least in one exchange plan.
      • _AccntRegOptions - table of options to store the totals, one for all accounting registers.
    • Calculation registers
      • _CalcReg<n> - table of calculation register records.
      • _CalcRegActPer<n> - table of actual validity periods for calculation register, created if the calculation register has an enabled flag “Validity period”.
      • _CalcRegChangeRec<n> - table to record the changes of calculation register. Created for each calculation register that participates at least in one exchange plan.
      • _CalcRegRecalc<n> - recalculation table of calculation register, created for each recalculation.
      • _CalcRegRecalcChangeRec<n> - table to record the recalculation changes. Created if recalculation participates at least in one exchange plan.
    • Business processes
      • _BPRoutePoint<n> - table of business process rout points for each business process.
      • _BusinessProcess<n> - basic table of business process.
      • _BusinessProcess<n>_VT<k> - table part of business process for each table part.
      • _BusinessProcessChangeRec<n> - table to record the changes of business process. Created for each business process which participates at least in one exchange plan.
    • Tasks
      • _Task<n> - basic table of task.
      • _Task<n>_VT<k> - table part of task for each table part.
      • _TaskChangeRec<n> - table to record the changes in the tasks. Created for each metadata object with type “task” which participates at least in one exchange plan.

    When using IBM DB2, the prefixes of table aliases begin not with underline, but with the alphabetic part at once.
    The amount of these tables depends on the configuration functionality and may be quite large. In regular mode 1С:Enterprise does not check their availability as well as integrity and consistency of data contained in them. Therefore, it is important that the database in which the information base of 1С:Enterprise 8 is located was protected from unauthorized access and its modification was performed only using the tools of 1С:Enterprise. For check, it is required to use the function “Administration - Verify and Repair” integrated in the Designer.

    it is also important that the backup and recover of database which stores the information base were performed only entirely. With this purpose, it is recommended to use the tools of database backup integrated in the used DBMS. Backup of the file variant of information base can be done by copying the file 1Cv8.1CD.

    The Designer has a special function: “Administration - Damp infobase”. With its help you can upload in the specified file (upload file) all data related to the information base, and no more. Inverse function “Restore infobase” allows loading in the current information base all data from the upload file instead of existing ones. These functions can be also used to backup the information base data both in file and client-server variant.

    Configuration repository

    Configuration repository is used in the team development of configurations and serves to store the history of configuration versions including the last (current) version. The whole repository is contained in a single file - 1Cv8ddb.1cd which is located in the directory specified as a directory of configuration repository.

    When developing the configurations using the tools of team development, the data stored in this file are essential. Therefore, it is recommended to backup them.

    Event log

    Event log is associated with information base and serves to store information about the events that occur during the work of users with this information base. This information can be important from organizational point of view, but is not required for application solution functioning based on the 1С:Enterprise.

    Event logs are stored in the special directories 1Cv8Log one for each information base. Each directory contains a file 1Cv8.elf and a few files with the names like yyyyMMddhhmmss.log, where yyyy - year number, MM - month number, dd - day number on the month, hh - number of hours, mm - number of minutes, ss - number of seconds. For example, “20070525200000.log”. File 1Cv8.elf contains general information of event log. Each file yyyyMMddhhmmss.log contains a fragment of event log for the corresponding period. The file name is the time of period start. The length of period is determined by the event log option “Divide log storage into the periods”.

    in the file variant of information base event log is located in the directory of information base, the same as the file of information base itself. For example, if the information base is stored in the file C:/EnterpriseInfoBase/1Cv8.1CD, then event log will be located in the directory C:/EnterpriseInfoBase/1Cv8log.

    In the client-server variant of information base event log is located in the subdirectory of cluster working directory. The name of subdirectory is defined by information base identifier. For example: “C:/Program Files/1cv81/server/reg_1541/fb9d9cc4-ccd0-4be7-87e8-c5182945291e/1Cv8Log”.

    Profiles

    Profiles contain information that does not affect the logic of system functioning based on the 1С:Enterprise 8. This information is not necessary, but its storage may improve, for example, the user work comfort. The profiles store the format and location of windows and dialogs, settings of fonts, colours, samplings, etc. The loss of such information cannot lead to the system malfunction.

    The profiles differ by membership of information stored in them. The types of profiles used in 1С:Enterprise 8.1 are presented in the table:

    Data membership Examples of stored data Location
    Client computer - Whether panel is open.
    - Text editor settings.
    <Data of user applications>/1C/1Cv81/1Cv8.pfl, for example:
    C:/Documents and Settings/User/Application Data/1C/1Cv81/1Cv8.pfl
    Information base - Authentication mode at the 1С:Enterprise startup from debugger.
    - Directory of the last configuration repository save in file.
    Table files of database in which the information base is located.
    Information base and user - Settings of dynamic lists.
    - Settings of samplings by event log.
    Table files of database in which the information base is located.
    Computer and information base - Settings of configuration files comparison.
    - Settings of global search in configuration texts.
    <Data of user applications>/1C/1Cv81/<Information base identifier>/1Cv8.pfl, for example:
    C:/Documents and Settings/User/Application Data/1C/1Cv81/ 4129dbdb-b495-41cb-99ea-ef315060a03e/1Cv8.pfl
    Computer, information base and user - Location of syntax assistant window.
    - List of variables for quickview in debugger.
    <Data of user applications>/1C/1Cv81/<Information base identifier>/<User identifier>/1Cv8.pfl, for example:
    C:/Documents and Settings/User/Application Data/1C/1Cv81/ 4129dbdb-b495-41cb-99ea-ef315060a03e/ E8D87DA4-A087-4145-95E7-D613E0F7CB64/1Cv8.pfl
    1С:Enterprise 8.1 in the Designer mode - Location of Designer windows.
    - Colours of module designer in the Designer.
    <Data of user applications>/1C/1Cv81/1Cv8cmn.pfl, for example:
    C:/Documents and Settings/User/Application Data/1C/1Cv81/1Cv8cmn.pfl
    1С:Enterprise 8.1 in the Enterprise mode - Location of Designer windows.
    - Colours of module designer in the Designer.
    <Data of user applications>/1C/1Cv81/<Information base identifier>/<User identifier>/1Cv8cmn.pfl, for example:
    C:/Documents and Settings/User/Application Data/1C/1Cv81/ 4129dbdb-b495-41cb-99ea-ef315060a03e/ E8D87DA4-A087-4145-95E7-D613E0F7CB64/1Cv8cmn.pfl
    1С:Enterprise 8.1 startup dialog - Sizes and position of startup dialog.
    - Options of dialogs for setting the parameters of information bases.
    <Data of user applications>/1C/1Cv81/1Cv8strt.pfl, for example:
    C:/Documents and Settings/User/Application Data/1C/1Cv81/1Cv8strt.pfl

    Data from profiles are read when running 1С:Enterprise 8 and are written during its regular shutdown. For this reason, in case of failure, the user settings can be not saved.

    Other auxiliary data

    Along with profiles, in the directory of application data other files can be contained with information preservation of which makes the user work with 1С:Enterprise 8 more convenient. Among them:

    • def.usr - stored in the directory <Data of user applications>/1C/1Cv8/<Information base identifier> (for example, C:/Documents and Settings/User/Application Data/1C/1Cv81/4129dbdb-b495-41cb-99ea-ef315060a03e/def.usr) and contains the name of last user who opened this information base.
    • ibases.v8i - stored in the directory <Data of user applications>/1C/1Cv81 (for example, C:/Documents and Settings/User/Application Data/1C/1Cv81/ibases.v8i) and contains a list of information bases registered on this client computer. This list is displayed in the dialog “1С:Enterprise startup”.
    • v8cscadr.lst - stored in the directory <Data of user applications>/1C/1Cv81 (for example, C:/Documents and Settings/User/Application Data/1C/1Cv81/v8cscadr.lst) and contains the address of configuration template directory.
    • GenTempl.st - standard file of text templates located in the directory of 1С:Enterprise runtime modules (for example C:/Program Files/1CV81/bin).
    • appsrvrs.lst - stored in the directory <Data of user applications>/1C/1Cv81 (for example, C:/Documents and Settings/User/Local Settings/Application Data/1C/1Cv81/appsrvrs.lst) and contains a list of 1С:Enterprise servers registered in the utility of information base administration in the client-server variant.
    • srvribrg.lst - stored on the central cluster server in the directory <working directory of central server> (for example, C:/Program Files/1cv81/server/srvribrg.lst) and contains a list of clusters registered on this computer of 1С:Enterprise server. The data contained in it are required for normal operation of applications that use this 1С:Enterprise server.
    • Directories DBNameCache, ConfigSave, Config, SICache contain a lot of files that cache the various configuration components. This information is derived from the information base configuration stored in the database and serves to accelerate the launch of client applications and improve their performance. Configuration cache is located in the data directory of current user applications, for example, C:/Documents and Settings/User/Local Settings/Application Data/1C/1Cv81/7b0a6294-d6a3-41c5-a23e-dc9e5301ad22/DBNameCache.
    • Directory 1Cv8FTxt stores data used by the service of full-text search. They are located on the computer of 1С:Enterprise central server in the directory <cluster working directory>/. For example: C:/Program Files/1cv81/server/reg_1541/7eac7609-c0cb-4701-83cf-9ff5f8961de8/1Cv8FTxt.
    • A group of files CACHE/ddb<n>.snp is stored in the configuration repository and serves to cache the requested configuration versions from this repository. The availability of these files is optional and allows accelerating the receipt of configuration versions.

    Temporary data

    Temporary data are required only during several intersecting in time or single session of 1С:Enterprise.

    Several intersecting in time sessions include the sharing data that are related to the file information base as a whole and are required, particularly, to implement the locks of information base data. These data are stored in the same directory as the information base file.

    • File 1Cv8.1cl is a medium of locks for the object of database located in the file 1Cv8.1cd.
    • File 1Cv8Tmp.1cd stores a service session information, particularly, a list of active users.
    • File 1Cv8Tmp.1cl is a medium of locks for data located in the file 1Cv8Tmp.1cd.

    For the configuration repository 1С:Enterprise 8 in the Designer mode creates the temporary files of similar purpose located in the directory of configuration repository:

    • File 1Cv8ddb.1cl is a medium of locks for data from configuration repository.
    • File 1Cv8dtmp.1cd stores a service session information, particularly, a list of configuration repository active users.
    • File 1Cv8dtmp.1cl is a medium of locks for data located in the file 1Cv8ddb.1cd.

    Data use only during a single 1С:Enterprise session are placed in the temporary files created in the directory specified in the Microsoft Windows system as a directory of temporary files. In this case, for the client application the directory of temporary files for current Windows user is used, for example, C:\Documents and Settings\User\Local Settings\Temp. For 1С:Enterprise server either the system directory of temporary files or the data directory of applications is used for the user in the name of which the working processes of 1С:Enterprise server are launched, for example, C:\WINNT\Temp.

    Click to rate this post!
    [Total: 0 Average: 0]

    Leave a Reply

    Your email address will not be published. Required fields are marked *