New Application Development Technology | 1C: Through the Looking Glass


This text is an announcement of latest performance.
It’s not beneficial 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 record of adjustments within the new model is supplied within the v8Update.htm file.

Within the close to future, now we have deliberate the discharge of merchandise “1C: Employee’s Office” and 1C: Bus with customization choices. New know-how “1C: Enterprise.Aspect” shall be used for personalisation. This know-how is designed to increase the boundaries of the 1C: Enterprise technological platform. With its assist, specifically, you possibly can create:

  • Finish-user oriented purposes – client purposes, cupboards, storefronts, and so on.

  • Entrance places of work, B2B and B2C places of work

  • Headless providers

A lot of you might be already acquainted with the language that the brand new know-how makes use of – it’s utilized in 1C: Performer. There are additionally options already utilizing this know-how:

In whole, about 60,000 customers at present work with merchandise utilizing the brand new know-how (most of them work with the 1C: Worker Cupboard software). The know-how will initially be supplied as a software for customizing the merchandise “1C: Worker’s Workplace” and “1C: Bus”, sooner or later we plan to make use of it for different duties as nicely.

Typically, the idea of the brand new know-how corresponds to the overall idea of the 1C: Enterprise platform. Let’s emphasize the details:

  • New consumer interface targeted primarily on the net

  • Dynamically growing embedded language

  • Assist for modular improvement

  • Growth surroundings deployed within the cloud and accessible by means of a browser

  • Specializing in the work of options within the cloud (however there may even be help for the on-premise possibility)

  • Mobility: Apps based mostly on the brand new know-how will work on each cellular units and cellular browsers

Additional – just a little extra element about the details of the brand new know-how.

Constructed-in language

The built-in language used as the appliance improvement language will be discovered within the 1C: Contractor product. We needed (and nonetheless need) to create a brand new, straightforward to be taught and use improvement language with fashionable syntax, with options that enhance developer productiveness.

The language has static typing to enhance developer productiveness. There may be additionally the power to make use of dynamic typing, however this isn’t the primary strategy to improvement.

technique ShrinkTo (String: String, Size: Quantity): String

if String.Size ()> Size

return String.SubstringSStart (Size – 3) + “…”


return String


The developer can outline his personal varieties within the language (whereas these are enumerations, buildings and exceptions).

Utility objects are additionally out there in the usual library – directories, HTTP providers, impartial registers of knowledge. We’re planning so as to add different objects as nicely.

A bit about different options of the language and the usual library provided with it:

  • Generalized (typed) collections

  • Separate varieties for working with date, time, and date-time combos

  • Objects for working with JSON and XML

  • Objects for working with HTTP, SMTP and Interaction system

  • Multiline String and Assortment Literals

// Array

const MONTHS = [

    “Янв”, “Фев”, “Мар”, “Апр”, “Май”, “Июн”,

    “Июл”, “Авг”, “Сен”, “Окт”, “Ноя”, “Дек”


The question language within the new language is similar to the question language used within the platform. A few of its options:

  • Helps momentary tables, batch queries and different acquainted options

  • It’s attainable to make use of collections in reminiscence as a sampling supply (for instance, in a question you possibly can mix a desk in a database and an array in reminiscence)

  • Feedback throughout the request are supported

  • In the intervening time, the question language can work with MS SQL and PostgreSQL DBMS, in addition to with a file database


Introducing modularity into the brand new know-how, we pursued three primary objectives:

  • Dividing massive options into elements for reuse and straightforward improvement

  • Growth of library improvement instruments

  • Mechanism improvement extensions

The brand new know-how is meant to create initiatives of three varieties:

  • Utility – full performance for enterprise automation

  • Library – a solution to separate objects for reuse

  • Extension – a approach so as to add and / or override performance of an software and / or library

Purposes and libraries can use objects from different libraries. On the similar time, objects from different libraries should not embedded within the undertaking utilizing them. As a substitute, the undertaking defines a dependency on a selected model of the library.

As a substitute of enormous monolithic options, builders are anticipated to create loosely coupled blocks. These blocks shall be simpler to develop and preserve, and can be reused throughout options. For this, the know-how will implement visibility scopes, developer-defined interfaces, and different capabilities.

Consumer interface

Most important options of the consumer interface used within the new know-how:

  • Focuses on acquainted internet and cellular use

  • Straightforward to grasp and straightforward to be taught

  • Makes use of fashionable UI / UX approaches for software interfaces

  • Full asynchrony, permitting you to get the utmost “responsiveness” of the interface

An instance of a brand new interface:

As already talked about, the interface is targeted on use within the internet surroundings. Particularly, the mixing with the deal with bar of the browser has been carried out:

There’s a set of normal components for growing internet purposes, for instance, for importing information:

When growing the appliance interface, a part strategy is used:

  • The interface is constructed from parts

  • Part is reusable interface factor

  • Expertise offers commonplace parts

  • Utility (or library) developer can create their very own parts

from the usual ones and use them in several elements of the appliance

Examples of utilized parts:

  • Postal deal with enter part

  • Hyperlinks panel

  • Product card within the on-line retailer

The excessive “dynamism” of the interface is achieved as a result of computed properties of the parts. For instance, you possibly can set the properties of parts in design time by means of any expression of the embedded language:

  • Button Write.Availability: = Kind.DataChanged

  • Avatar.Visibility: = Get CurrentUser ()! = Undefined

On the similar time, at runtime, the setting of the properties of the parts shall be completed fully mechanically; you don’t want to name the code specifically written for this.

“Cloudy out of the field”

Within the new know-how, all instruments for growing purposes and for administering them can be found within the cloud, and you’ll work with them proper within the browser. The cloud through which the instruments are executed is deployed on the premise of a server software, which can also be an integral a part of the brand new know-how (the server runs at 1C amenities); the server can also be out there for on-premise deployment. In each circumstances, administration and software improvement is carried out by means of the identical interface – the Management Panel. The management panel can also be designed with new know-how.

The principle features of the Management Panel:

  • Utility administration

  • consumer administration

  • Launching improvement in a browser

  • Multi-user work with shared entry to purposes and initiatives

  • Bulk software replace

Most important web page of the Management Panel:

Growth surroundings

The event surroundings runs in a browser, doesn’t require set up and configuration, and is seamlessly built-in with the Management Panel. The event surroundings for the chosen software will be launched straight from the Management Panel. The appliance supply code is saved on the server (within the cloud or on-premise).

That is what the event surroundings appears to be like like in a browser:

It’s a full improvement surroundings that runs in a browser. A undertaking navigator is out there, the standard mechanisms for working with code work (contextual assist, code coloring, code validation, module diagram, hyperlink clicks, code refactoring instruments, and so on.).

The properties palette is displayed for the item chosen within the navigator:

There’s a UI part editor with previews:

Debugging of purposes is out there:

Work on cellular units

Out of the field, the online consumer is supported in cellular browsers. Additionally it is attainable to assemble the consumer as a local cellular software. A local cellular software (versus an online consumer) can use the precise capabilities of cellular units – work with a built-in digicam, with a geolocation module, biometrics, notifications, and so on.

Inform associates:


Related Articles

Latest Articles