• “1C” offers the EnterpriseData format for exchanging business data. Exchange via a universal format General module of the “exchange manager via a universal format”

    Automated control systems in most cases consist of separate databases and often have a geographically distributed structure. At the same time, correctly implemented data exchange is a necessary condition for the effective operation of such systems.

    The initial setup of the exchange may require a number of actions, not only in terms of programming, but also consulting, even if we are dealing with homogeneous sources, as is the case with products on the 1C:Enterprise platform. Why setting up 1C exchange (or, as it is also called, data synchronization in 1C 8.3) can become the most time-consuming and expensive task of an integration project, we will look at in this article.

    Data exchange in the 1C environment allows you to:

    • Eliminate double entry of documents;
    • Automate related business processes;
    • Optimize interaction between distributed departments;
    • Promptly update data for the work of specialists from different departments;
    • “Differentiate” between different types of accounting.*

    *In cases where the data of one type of accounting differ significantly from another, it is necessary to ensure the confidentiality of information and “delimit” information flows. For example, data exchange between 1C UT and 1C Accounting does not require uploading management data into the regulatory accounting database, i.e. synchronization in 1C will be incomplete here.

    If we imagine the standard process for implementing primary data exchange, when at least one of its objects is a 1C product, then we can distinguish the following stages:

    • Coordination of the composition of the exchange;
    • Definition of transport (exchange protocols);
    • Setting rules;
    • Scheduling.

    Identification of the composition of 1C exchange

    Objects of exchange can be divided into “source” and “receiver”. At the same time, they can perform two roles at the same time, which will be called a two-way exchange. The source and destination are determined logically depending on the need or the functionality of the system.*

    *For example, when integrating “WA: Financier” - a solution for maintaining financial accounting and managing treasury processes, developed on the basis of “1C:Enterprise”, WiseAdvice experts recommend it as a master system. This is due to the presence of control tools to comply with the rules of the application policy, and, accordingly, to ensure the effectiveness of the solution.

    Next, based on the received and recorded requirements from users, a list of data for exchange is created, its volume, requirements for the frequency of exchange are determined, and the process of working with errors and handling exceptional situations (collisions) is prescribed.

    At the same stage, depending on the fleet of existing systems and the structure of the enterprise, the exchange format is determined:

    Distributed information base

    • RIB implies exchange between identical 1C database configurations, with a clear “master-slave” control structure for each exchange pair. As an element of a technology platform, RIB, in addition to data, can transmit configuration changes and administrative information of the database (but only from master to slave).

    Universal data exchange in 1C

    • A mechanism that allows you to configure the exchange of 1C databases, both with configurations on the 1C:Enterprise platform and with third-party systems. The exchange is carried out by transferring data into a universal xml format in accordance with the “Exchange Plans”.

    EnterpriseData

    • The latest development from 1C, designed to implement data exchange in xml format between products created on the 1C:Enterprise platform with any automation systems. The use of EnterpriseData simplifies the modifications associated with the exchange. Previously, when a new configuration was included in a system, it was necessary to implement a mechanism for importing and exporting data, both for it and for existing systems. Now systems that support EnterpriseData do not need any modifications, having only one entry-exit point.

    Definition of transport (exchange protocols)

    For the system on the 1C:Enterprise 8 platform, a wide range of possibilities is provided for organizing exchange with any information resources using generally accepted universal standards (xml, text files, Excel, ADO connection, etc.). Therefore, when determining the transport for exchange data, you should rely on the database capabilities of the third-party system.

    Synchronization of directories

    The basic principle of effective synchronization of directories is the presence of a single entry point. But if we are talking about working with directories that have historically been filled out according to different rules, it is necessary to clearly define synchronization fields to bring the exchange to a “common denominator.”*

    *At this stage, it may be necessary to carry out work to normalize the reference data on the side of the data source. Depending on the state of the directories and their volume, the process of comparing elements, recognizing, identifying errors and duplicates, as well as filling in missing fields and assigning synchronization fields, may require the work of a whole group of experts, both on the part of the integrator (the owner of the master data normalization technique) and from the customer's side.

    Setting rules

    The ability to display data from source systems in receivers depends on correctly defined exchange rules. The rules, presented in xml format, regulate the correspondence of key details of source-receiver objects. The 1C: Data Conversion solution is designed to automate the creation of rules for implementing both one-time and permanent exchanges.

    Guarantees no data loss during exchange Exchange Plan. This is an integral part of any configuration on the 1C:Enterprise platform, which fully describes the 1C exchange procedure: data composition (documents with “identifying” details) and nodes (receiver-transmitter information bases), as well as activation of RIB for selected exchange directions.

    Any change in the data entered into the Exchange Plan is recorded and receives the “changed” sign. Until the changed data matches each other in the receiver-transmitter nodes, the sign will not be reset, and the system will send control messages to both nodes. After uploading the data and confirming their full compliance in both systems, the sign is reset.

    Exchange schedule in 1C

    To automate regular exchange, the frequency of data uploading is set. The frequency of exchange depends on the need and technical capabilities. Also, configurations on the 1C:Enterprise platform allow you to configure data exchange when an event occurs.

    Having considered the standard process of implementing an exchange, let’s pay attention to factors that will require improvements at different stages:

    • Non-standard, highly modified database configurations;
    • Different versions of the 1C:Enterprise platform;
    • Configuration versions that have not been updated for a long time;
    • Objects of exchange that have previously undergone modifications;
    • The need for non-standard exchange rules;
    • A very different set and composition of details in existing reference books.

    Since even standard actions to implement primary data exchange require expert knowledge, they are recommended to be carried out with the participation of 1C specialists. Only after completing all the steps described above should you proceed to setting up the exchange in the configuration. Let's look at the integration of databases using the example of 1C:UPP and 1C:Retail (exchange with 1C:UT is set up using the same scheme). Also included in standard synchronization is the SCP-SCP exchange, which is typical for large-scale automation systems at the largest industrial enterprises.

    In the “Service” submenu, select “Data exchange with products on the platform...” (selecting direct exchange with “Retail” often results in errors at the COM object level). Please note the service message “This feature is not available.”


    To resolve this issue, you need to select "Configure Communications"


    ...and check the box. Next, ignore the error message.


    In the data synchronization settings, select “Create an exchange with “Retail”...



    Before configuring connection settings through a local or network directory, you should make sure that there is space on the disk for the directory. Although, as a rule, it does not take up more than 30-50 MB, in exceptional cases it may require up to 600 MB. You can create the required directory directly from the configurator.



    When connecting via a network directory, we ignore the offer to configure the connection via an FTP address and by email by clicking “Next”.


    In the settings, we manually enter prefixes - symbols of the databases (usually BP, UPP, RO), set the rules and the start date for data upload. The prefix will be indicated in the name of the documents to indicate the database in which they were created. If the upload rules are not edited, the data will be uploaded by default according to all available parameters.



    We create an exchange settings file for “Retail” so as not to repeat our actions. If you need to immediately send data immediately after setting up synchronization, check the box.


    To automate the exchange process, you need to set up a schedule.


    Menu "Retail".


    Check the box and select “Synchronization”.


    We perform the “reverse” setup by selecting Production Enterprise Management.




    Load the settings file created in UPP.


    We put a tick, the system picks up the address automatically.





    We act in the same way as in UPP.









    Verification data comparison (Manual data comparison is recommended to be done at the preparatory stage, since this work can become the most labor-intensive in the process of implementing the exchange). The comparison window opens by double clicking the mouse.



    In case of an error in synchronization, “Details...” will be replaced with “Never...”.


    “Details...” opens the log with updated information on the exchange.


    Ready.

    Let's look at a simple real life example. Let's say we have a company that is engaged in wholesale and retail trade, and in this company, like in any other, accounting is done. The enterprise has two standard databases, these are UT (trade management) and BP (accounting of the enterprise), respectively, in each of the databases its own records are kept, in UT there is management to reflect all transactions related to trade, in BP there is accounting. In order not to do double work, i.e. do not create the same documents in two databases (after all, movements should be in management and accounting) we will just set up synchronization between these databases.

    We will set up one-way data exchange, from UT ---> BP. It is also possible to set up a two-way exchange, but in practice this is not often required, so we will not consider it in our example.

    Preparatory steps for setting up exchange in BP

    Let's start setting up synchronization, first go to the 1C "Enterprise Accounting 3.0" database (receiver), we need to check whether synchronization is enabled for this database, in order to do this we need to first go to the database. As soon as the database opens, go to the tab "Administration" ---> "Data synchronization settings"

    A new tab opens in front of us; it must be filled out in the same way as in the screenshot below, with the exception of the information base prefix. The prefix must consist of two letters, you can set any, but according to the 1C standard it is better to set the prefix by the name of the configuration, that is, for “Enterprise Accounting” the prefix will be “BP”. If you are setting up complex exchanges and there are several accounting databases, then the prefixes should clearly differ from each other; here you can use the first two letters of the organization’s name as an abbreviation.

    We continue setting up data synchronization in UT

    After we have done all the necessary actions in the receiver database (BP 3.0), to continue setting up data exchange we need to open the source database (UT 11.1). Go to the "Administration" tab, select "Data synchronization settings" in the menu on the left. If synchronization is not enabled, then enable it using the checkbox, and do not forget to specify the source base prefix. Once we have completed all steps 1-4 as shown in the image below, you need to click on the “Data Synchronization” hyperlink (step 5).

    In the new window that appears, you need to click on the green plus sign (Set up data synchronization), in the drop-down menu select the item “Enterprise Accounting 3.0”.

    Setting up important points in data exchange between UT and BP

    Now we see a window with settings for data synchronization in 1C, select “Specify settings manually” and click “Next”.

    We continue to set up data exchange in 1C, on the next tab we need to select the option of connecting to the receiver infobase (direct connection to the program), connection parameters (on this computer or on the local network), the directory where the receiver base is located, as well as the necessary authentication data ( username and password in the database).

    On the next page we must fill in the rules for sending and receiving data from the BP 3.0 (receiver) configuration. Click "change data upload rules".

    The “Rules for sending data” window has opened in front of us, in it we set the following parameters:

    • Which reference data will be sent (in our example, we are only interested in documents and the reference data used in them, so we selected the appropriate item; if you select the first item “Send all”, then all reference books will be reloaded along with the documents, often if the information is not used in the documents then it is useless for the receiver, because it does not affect the accounting in any way)
    • From what date should all information be sent (we will not consider manual synchronization in this article)
    • To which or which organizations to send data (in our example, we chose one organization, IP "Entrepreneur")
    • Rules for forming contracts
    • Generalized warehouse
    • Should I roll up documents by warehouse?

    After we have made the settings, click “Save and close”.

    Since in our example we set up and use one-way exchange, from UT to BP, then the settings for the rules for obtaining data from “Enterprise Accounting 3.0” are not of interest to us, so we click “Next”.

    In a new window, we are asked to configure rules for the receiver base (RB). In point 1, we name our database, give it a prefix. The PREFIX must be the same as we set it in the BP database itself at the beginning of this article; if the prefixes are different, data synchronization in the 1C program will not work. After that, click point 2, and then point 3.

    In point 3, we need to allow documents to be processed when they are loaded into the database. Click "Save and close".

    Now the window should look something like the one shown below, click “Next”.

    This window contains reference information about the synchronization being created in 1C. Just click the "Next" button. If the program generated an error when setting up data synchronization, then you need to contact us so that our 1C specialist can help you right now!

    Next step the program will offer to synchronize immediately after creating the data exchange settings. Let's agree to this and click "Done".

    A window will appear in front of you in which you will see information about how the synchronization is proceeding. If the receiver base is not empty, i.e. records have already been kept in it, then the user in the 1C program will be asked to make a comparison of objects manually. Comparison of objects in 1C when synchronizing data is a comparison of identical objects of the receiver with identical objects in the source.

    Let's look at an example, let's say in UT there is a counterparty with the name "PharmGroup LLC" and TIN 1234567, and in BP there is also a counterparty with TIN 1234567, but the name "PharmGroup", if we do not compare these two objects when comparing data at the synchronization stage, then after synchronization in the receiver (Enterprise Accounting 3.0), we will have two counterparties with TIN 1234567 and two names “PharmGroup LLC” and “PharmGroup”, respectively. In order to avoid such situations, a mechanism for comparing objects was invented.

    In our example, the receiver database is empty, and therefore the object comparison window did not open. But after performing some operations, the system will definitely prompt the user to add some additional data and display the following window. We don’t need to transfer any additional data, we’ve already configured everything we need earlier, so at this step we select “Do not add documents to sending.” Click "Next".

    The final stage of data exchange between 1C

    At the final stage, the program will display the following window, in which the user will be informed that the synchronization was successful, click “Finish”. At this point, synchronization between the databases in a one-way exchange from “Trade Management 11.1” (UT) to “Enterprise Accounting 3.0” (BP) is completed.

    In this article I will describe my, so far small, experience in organizing data exchange through the universal EnterpriseData format.

    In my case, the exchange is configured between the “Trade Management 11.2” (hereinafter UT) and “Enterprise Accounting 3.0.43” (hereinafter BP) configurations. The exchange is one-way, from UT to BP. Before upgrading Trade Management 11.1 to 11.2, data exchange was configured using the Data Conversion 2.0 configuration. However, after switching to “11.2”, errors appeared in “Trade Management” for users. The procedure for updating the exchange rules was carried out, but it did not produce any results. The debugger showed that the problem was in data exchange. It was decided to remove the data exchange setting in both configurations and configure it again.

    Both “Trade Management” and “Enterprise Accounting” work in a client-server version. I started setting up synchronization with UT. I performed it in such a way that the data was uploaded from the UT to a file. That is, synchronization through a network directory. In the BP I configured the exchange in such a way that no data is downloaded from the BP.

    Error when calling context method (Verify): XDTO data validation error:
    The structure of the object "/Counterparty Bank Account/Bank" does not correspond to the type: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)KeyPropertiesBank
    Checking the "BIK" property:
    shape: Element
    name: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)BIK
    type:
    Required property missing
    Object: Contract with Counterparty No. ...

    To analyze the error, I clicked on the “Composition of sent data” icon and in the list of contractor agreements registered for sending, I found the agreement for which the error appeared. I opened the agreement and remembered the counterparty’s bank account specified in the agreement. Then I moved on to the bank accounts registered for shipping. It turned out that the required account was not in the list of registered ones. I redid the problematic bank account and contract. After that, I manually registered the required bank account.

    I tried again to synchronize data from UT. This time the data was successfully uploaded. An XML file was generated in the network folder containing data to be transferred from the UT to the BP.

    The next step is to load the data from the file into the enterprise accounting department. In the "Enterprise Accounting" configuration, I clicked the "Synchronize" button, a processing form opened with the message "Data analysis in progress." A little later the message changed to “Data upload in progress.” At the same time, the indicator and counter showed that more than 80 thousand objects were being unloaded from the power supply unit. This confused me, because I indicated in the settings that nothing should be unloaded from the power supply. The processing took quite a long time and ended with the error:

    Event: Data Exchange
    (GeneralModule.Long-runningOperations.Module(371)): Background job worker process terminated abnormally
    RaiseException(ErrorText);

    To localize the error, I tried changing the synchronization settings and operation options of the power supply base. As a result, when I converted the database to a file version, the system worked adequately: a form for comparing two databases opened. After matching the objects, the initial synchronization was successful. Then I switched the database back to the client-server version.

    With further testing of synchronization, it was necessary to make some changes to the rules for converting objects. It's time to use the Data Conversion 3.0 configuration. The built-in configuration help describes the operating procedure. Articles on the ITS website also helped.

    As a result, I loaded the following data into "Data Conversion 3.0":

    • Texts of the general module "Data Exchange Manager Through a Universal Format" from two databases
    • Layout of both bases
    • Description of the EnterpriseData format (from any one database)
    • Conversion rules

    After downloading, I opened the rules for converting data, objects, and properties in “Data Conversion 3.0”. Made the changes I needed. Then I used the "Unload exchange manager module" button. The module text has been copied to the clipboard. All that remains is to insert it into the configuration.

    Having experimented with setting up the rules in “Data Conversion 3.0”, I concluded for myself that in the case when the changes being made are insignificant, it is easier to set up the rules directly in the UT and BP configurations, in the general module “Data Exchange Manager Through the Universal Format”. If the edits are serious, such as, for example, adding a new object to the exchange, then you should use the configuration " Data conversion 3.0".

    I performed the task of adding the document "Order to supplier" to the exchange plan using " Data conversion 3.0". In the standard version of UT - BP, this document is not included in the exchange plan.

    Let's remember that the rules for registering objects for uploading are still configured in the "Data Conversion 2.0" configuration.

    These are the first impressions of data synchronization through the universal EnterpriseData format.

    P.S. If you have questions or your own observations about data exchange via the Universal Format and Configurations" Data conversion 3.0", write in the comments. We will exchange experiences.

    • Data synchronization
    • Universal EntepriseData Format
    • Data conversion 3.0
    • Data conversion 2.0
    • Trade management
    • Enterprise accounting

    1C presented the first version of the new business data exchange format EnterpriseData, which is based on XML and, as conceived by its authors, is intended not only to unify the interaction of application solutions and their individual components created by the company itself, but also to be used as a universal information integration mechanism any business applications on any software platforms, including, of course, 1C:Enterprise.

    The company has long been practicing the creation and use of open standards for information interaction of its applications with software from independent developers, but until now this has only concerned certain specialized subject areas. This is exactly what the CommerceML format, created almost fifteen years ago, is for solving the problem of e-commerce, as well as “Client-Bank” and DirectBank for communicating between 1C applications and external banking systems. EnterpriseData, on the other hand, is a universal mechanism that can cover all areas of an enterprise’s activities - finance, production, purchasing and sales, warehouse operations, etc. The first version of the format includes a description of 94 types of documents from various areas of business. 1C plans to add new documents to it and detail existing ones.

    As 1C representatives explain, the emergence of EnterpriseData is explained by the need not only to integrate the company's applications into software from other developers, but also - perhaps even primarily - to create a unified mechanism for information communication within the 1C:Enterprise software family. Until recently, a wide range of solutions were used to solve these problems, often created on a case-by-case basis. The transition of 1C products to EnterpriseData has already begun; it is used in all the latest versions of its key applications (“1C: ERP Enterprise Management 2.0”, “1C: Accounting 8” 3.0, “1C: Accounting 8 KORP” 3.0, “1C: Retail” "2.0, "1C: Trade Management" 11). At the same time, replacing already used standards (CommerceML, working with banks) with EnterpriseData is not expected, since time-tested specialized algorithms work more efficiently than universal tools.

    1C believes that the new format will find wide use among independent developers creating applications on the 1C:Enterprise platform; ready-made software components are offered for them as part of the Library of Standard Subsystems (something like the SDK for 1C:Enterprise).

    When using the EnterpriseData standard, data between applications is transferred in the form of an XML file using appropriate XML schemas, while the physical transfer of information can be performed using various mechanisms: web services, file sharing through a directory, FTP and email. An important point is that the interaction algorithm implies the ability for the recipient to confirm the fact of receiving and processing the data sent to him. The XML file itself is physically supplied in compressed form (ZIP), which often allows you to reduce information traffic significantly.

    1C promises further development of the EnterpriseData format and its support in an increasing number of its applications. This standard will be managed by the company itself; its creators do not yet have any plans to transform it into an independent industry standard.

    And we show you how to use it to GREATLY simplify solving your problems.

    Today we will look at how to set up and make a simple transfer of directories and initial balances in just 10-15 minutes.

    And this is mass and regular task, which is almost inevitable for most new configurations launched.

    Therefore, call your colleagues, it will also be very useful for them.

    Especially if they have already seen CD 3 and managed to get scared :)

    Yes, when you see her for the first time, it’s not clear at all.

    But in reality, everything is VERY simple. So simple that you will even be bored later :)

    What exactly is in today's videos

    These are 4 videos on data exchange via universal EnterpriseData exchange format.

    In addition, we will show an example improvements to standard exchange rules in 1C:Data Conversion 3.0

    Total duration – 34 minutes. Content:

    • Setting up exchange using the example of 1C:Accounting 8 and 1C:ERP
    • How to download standard rules and a universal exchange format in Data Conversion 3.0
    • Transferring the metadata structure to CD 3.0
    • How to perform your first data exchange
    • Finalization of the rules conversion
    • How to load new rules without changing the configuration ( without removal from support)

    Please note, that when solving this problem, the loading rules change only in the receiving configuration. And the source configuration works according to standard rules.

    If a similar problem were solved in Data Conversion 2.0, then changes would have to be made to the rules of both the source and the destination.

    These video tutorials are relevant for BSP edition 2.3.2(for any build older than 2.3.2.43).

    If you are using an older version of BSP,0, make an “adjustment” for the changed interface and expanded functionality. To do this, repeat the example from the video yourself.

    Video 1:
    Loading exchange rules between standard configurations into Data Conversion 3.0

    In this lesson, we will perform preparatory steps when making changes to the rules of exchange between standard configurations:

    • Loading the exchange format structure into the CD (
    • Creating a conversion
    • Uploading rule files from a standard configuration
    • Unloading the exchange manager module

    Video 2:
    Refinement of exchange rules in CD 3.0

    In this lesson we will show how to fill in object details when loading data.

    The problem will be solved - when loading objects from the source configuration, set the comment “Loaded from BP 3.0”.

    To solve the problem you will need to enter changes in object conversion rules, in the “Before recording received data” event.

    The developed rules will be saved as external processing for further use.

    Video 3:
    Setting up universal exchange between standard configurations

    In this tutorial we will show you how to set up a new exchange between standard ones.

    The settings will be made in the source configuration and then loaded into the destination configuration.

    Also in this video we will show how without changing the configuration upload new exchange rules.

    Video 4:
    Transferring opening balances using exchange rules

    In this lesson we will show a typical functionality for transferring initial balances.

    P.S.

    Yes, exchanges via txt / dbf / ole, etc. have the right to exist. In some special cases, such as connecting to a web server or transferring an external application from a ready-made format.

    However, for standard exchanges – standard methods are both faster and much simpler.

    And if someone reinvents the wheel when there is a ready-made universal solution - it’s like writing on your forehead “I don’t know the instrument, I don’t want to study it, I’ll build crutches for your money” .

    P.P.S.

    We want to show that Data Conversion 3.0 is not difficult.

    Unusual - yes. Not everything is immediately clear - yes. There are very controversial moments - yes.

    But with the help of ready-made instructions and videos, you can master it in literally 1-2 weeks.