Integration Bus | 1C: Through the Looking Glass

20.03.2020

This text is an announcement of recent performance.
It isn’t advisable to make use of the content material of this text to grasp the brand new performance.
A full description of the brand new performance shall be supplied within the documentation for the corresponding model.
A whole checklist of adjustments within the new model is supplied within the v8Update.htm file.

As a part of the 1C: Enterprise platform, there shall be a brand new product – “Integration bus”. That is software program of the category “Enterprise service bus“(In English terminology – Enterprise Service Bus, ESB), offering knowledge trade between numerous data techniques.

Lots of our purchasers use of their enterprise, along with 1C merchandise, and different data techniques from different producers. It’s fairly pure for such purchasers to make sure environment friendly interplay of those techniques.

Examples of integration eventualities:

  • The workplace sends adjustments within the worth checklist to the shops and to the web site. Purposes serving the workplace, web site and shops could be from 1C, in addition to from different producers.
  • Invoices are despatched from the workplace to shops mechanically as they’re permitted. Within the retailer, invoices can be found to the consumer for work.

Shops-consolidated data on the inventory of products is distributed from the workplace to shops mechanically on schedule or on demand. The identical data is distributed from shops to the workplace for consolidation in response to a request from the workplace for balances mechanically upon receipt of a request.

Integration Bus Product

The Integration Bus product is a server resolution that permits you to combine techniques utilizing the next strategies:

  • Message trade. “Integration bus” could be linked to 1C functions ranging from the model of the 1C: Enterprise platform 8.3.17. Protocol trade can be supported AMQP and it’s attainable to connect with exterior message brokers.
  • Distant API name. It’s attainable to execute HTTP requests to exterior techniques to obtain or ship knowledge, REST API calls or WEB companies.
  • File trade. Messages could be saved within the file system or on an FTP server. Additionally, messages could be generated when altering information within the file system or on FTP sources.

To arrange the interplay of techniques, the next sequence is proposed:

  1. The developer describes the mixing of techniques in a specialised editor utilizing easy graphical notation.
    1. The route of motion of messages is represented by a directional graph that reveals how messages are transferred from sources to locations.
    2. If essential, you possibly can outline a posh message routing algorithm or remodel the message utilizing an embedded language process.
    3. The supply of a message could be a file, the results of an HTTP request, an exterior message dealer, or an exterior system linked to the Integration Bus (such techniques are referred to as interplay contributors).
    4. The ensuing description is saved in a particular object Integration course of.
    5. The parameters of the Integration Course of are decided, the values ​​of which shall be decided at runtime (paths, addresses of companies, and many others.).
  2. Developer-created Integration Processes are deployed on the Integration Bus server.
  3. The server administrator has entry to a graphical interface for managing the Integration Bus, through which:
    1. Values ​​are set for extra parameters of the Integration Course of
    2. The foundations for connecting the Contributors of interplay to the server of the “Integration Bus” and the best way of their participation within the integration processes are decided
    3. Integration processes are launched and begin delivering messages
    4. The mixing processes are stopped
    5. Monitoring knowledge of the Integration Processes is on the market: the variety of processed messages, errors, and many others.

Whereas creating Integration course of the developer doesn’t must know the precise variety of techniques collaborating within the integration. As a substitute, he operates with the idea group of contributors, which unites an arbitrary variety of contributors interacting with the “Integration Bus” in a uniform method. At runtime, the administrator determines which teams a selected member system belongs to, and the mandatory sources are dynamically allotted to this member.

Connecting 1C: Enterprise to the “Integration bus”

To help asynchronous messaging within the 1C: Enterprise platform model 8.3.17, an integration companies mechanism has been added. Messages are exchanged by means of channels organized on the server. A channel is a unidirectional circulation of messages from sender to receiver. Messages within the channel are positioned sequentially by the sender and are sequentially delivered to the recipient. Messages from totally different channels are processed and delivered in parallel. A message is delivered to the bus provided that the transaction through which the message was despatched is dedicated.

  • Messages despatched to 1 channel in a particular sequence shall be obtained in the identical sequence.
  • Any two messages obtained from totally different channels in a sure sequence is not going to essentially be processed in the identical sequence, since messages from totally different channels could be processed at totally different charges.

The mechanism of integration companies in 1C: Enterprise shouldn’t be a substitute for the trade plan mechanisms, since it’s accountable just for transporting messages, and never for producing outgoing messages and deciphering incoming messages.

Interplay with the “Integration Bus” is carried out with assured message supply, which suggests:

  • A message despatched to the “Integration bus” is saved within the infobase till a affirmation is obtained from the “Integration bus” that it has obtained the message.
  • The 1C: Enterprise system will attempt to ship messages to the Integration Bus till affirmation of receipt of the message is obtained or the message expires (the message might have an expiration date).
  • When a message is obtained from the “Integration bus”, this message is saved within the infobase, and solely then is the receipt of the message confirmed to the “Integration bus”.

Pattern Integration State of affairs

The workplace sends adjustments within the worth checklist to the shops and to the web site.

The scheme comprises three teams of contributors: “Places of work”, “StoresSoStarymPO” and “StoresNa1C”. The “StoresNa1C” group brings collectively contributors who use techniques based mostly on the 1C: Enterprise platform to automate. The “StoresSoStarymPO” group contains contributors who use software program from different producers.

When the value checklist adjustments, a message is generated within the workplace containing the present worth checklist within the EnterpriseData format. This message is distributed to the IzOffice channel.

Within the DlyaVsekh node, all messages from the IsOffices channel are routed in three instructions:

  1. To be despatched to shops utilizing previous software program in JSON format. Conversion from the unique XML happens in a node of the “Translator” view named “JsonForStores”. The obtained JSON is distributed to the “ForSoStaryPO” channel.
  2. For transmission to shops utilizing 1C software program, the message in its unique type is distributed to the “ForMagazinovNa1C” channel.
  3. For publication on the positioning. Conversion from the unique XML happens in a node of the “Translator” view named “JsonForSite”. The obtained JSON is distributed to the positioning with an HTTP request within the “NaSite” node.

When organising such an integration course of, the developer does probably not care what number of shops of every kind will take part within the integration.

Advantages of our “Integration Bus”

After acquaintance with the “Integration Bus” a pure query might come up: the marketplace for ESB class software program is kind of in depth, there are lots of worthy merchandise, together with free ones; Why ought to 1C make one other product, are we not reinventing the wheel?

After all, earlier than deciding to develop the “Integration Bus”, we requested the identical query. They usually answered themselves to it like this – sure, it’s price making a product, as a result of:

  1. We’ve tried to make our product as easy and handy to make use of as attainable.
  2. We made the mixing of our product with 1C functions as clean as attainable.
  3. “Integration bus” from 1C is simple to be taught for 1C builders and can permit purchasers in lots of circumstances to handle integration processes utilizing the efforts of present IT specialists (1C accomplice and / or their very own IT division serving the shopper).
  4. Our product will organically match into the 1C ecosystem and can permit our purchasers to unravel their enterprise issues in probably the most environment friendly means.

We plan to develop the product, particularly, to extend the variety of methods to work together with exterior techniques, enhance monitoring instruments, introduce the power so as to add integration companies by means of extensions, set up a connection between integration companies and trade plans.

We’re planning the beta testing section of the “Integration Bus” and shall be glad to obtain assist from companions and clients. To take part in beta testing of the product, click on the inexperienced “Attempt” button initially of the article.

Tags: 1C: Integration bus

Inform pals:

Facebook
Twitter
Pinterest
WhatsApp

Related Articles

Latest Articles