1
The system of programs
The business applications
1C:Enterprise 8 Framework
New in 1C:Enterprise 8.2 Managed Application
New in 1C:Enterprise 8.2.14
Common framework mechanisms
Interface mechanisms in 1C:Enterprise 8.2 Managed Application
1C:Enterprise Database
Development with 1C:Enterprise 8.2
Scalability
Databases and Operation Modes
Client-server interaction model
Server cluster support
Geographically distributed databases
Thin client
Thick client
Web-client
Full-text data search
Administration tools
Localization support
Distribution and support of applied solutions
System Requirements
Used terms
Localization issues
On-line demo version
Geography of Solutions
Licensing policy
Partnership
Getting support
Partner area entry
About 1C

Development Tools

The framework development tools are aimed equally at the development of solutions and at their customization for a particular deployment. On the one hand, the development tools themselves provide solutions aimed specifically at the possibility of efficient application modification during deployment, and on the other hand, the very architecture used to build the application makes customization possible.

The development tools are supplied with almost every 1C:Enterprise kit and are used both for minor changes such as the print template and for substantial modification of applications, including the data structure and business logic, etc.

It also means that any 1C:Enterprise 8 user receives the same tool that is used by 1C developers for development of applied solutions. Considering that all 1C standard applications have open business logic, it opens wide possibilities for anyone using 1C:Enterprise 8.

The Designer

The main development means existing in 1C:Enterprise 8 framework are implemented in a tool called 'Designer'. It is a special 1C:Enterprise 8 operation mode that allows to modify existing applied solutions, develop new solutions and to administer information bases.

The Designer can be started from 1C:Enterprise 8 startup dialog:

1C:Enterprise 8 Startup dialog

The Designer is a powerful visual integrated development environment (IDE).

The Designer tool provides business application developers with all necessary toolkit for visual creation of a business application’s structure, data structure, to build business reports and output document forms, create command interface, specify access rights, create and edit modules in the embedded script language to handle various events and input/output data, also to specify special interaction algorithms, debug and profile a solution, etc.

General view of the Designer window (example)

These development tools are intended to be used not only by professional programmers, but also by a wider group of users. Particular attention in these tools was paid to make them user-friendly. Experience has shown, for example, that an experienced accountant is perfectly capable of modifying certain parts of the accounting business application unassisted.

Another function of 1C:Enterprise Designer is creation and editing of distributive packages of business applications. Developers have a possibility to compose a distributive package without the need to use special 3rd parties’ products.

There is a possibility of creating a distribution package description, as well. The description is used for composing required distribution packages. It also helps to manage the generation process of the packages. Additionally it is possible to include other files to a distribution package, which are relevant to the solution supplied.

The distributive package includes a setup program and a number of archived files. User just runs 'Setup.exe' installation program on his PC (or 'Autorun' starts automatically from a CD) and follows the instructions on the screen. The installation program offers a standard user interface.

The Configuration Tree Window

A configuration is represented in the Designer as a tree-like structure, where each branch describes a certain configuration component. The root branches of the tree unite some configuration objects logically relating to each other and having a common purpose.

The root node of the tree is named according to the configuration name.

Configuration objects in the window are represented by their names. For example, the 'Documents' branch includes all document objects which are used in the configuration, and 'Purchase Order' branch describes the 'purchase order' document object's properties.

Composition of every configuration object is also represented as a tree-like structure containing subordinated configuration objects.

Functionality of the Configuration Tree Window

The configuration window allows to:

  • Create new configuration objects.
  • Edit existing configuration objects.
  • Remove configuration objects, with control for existing references to the object being removed.
  • Sort configuration objects at will, within their group.
  • Locate an object whose data are being edited (in other windows, for example in the object edit window, or in the module editor)
  • Sort configuration objects subordinated to one configuration object, by name, synonym or comment.
  • Find references to/from a selected object from/to other objects.
  • Select configuration objects by subsystems that they belong to.
  • Start wizards relating to a selected configuration object.

 

 

 

 

Subsystems

All configuration's applied objects (catalogs, documents, reports, etc) are associated with the configuration's subsystems. This binding is a necessary stage in developing a managed application. Earlier in 1C:Enterprise 8.1 and 8.0 the subsystems' structure was used to divide a configuration into sections mainly for development purposes. Now, in managed application a subsystems' hierarchy should represent a functionality structure how it will be represented to users.

Then this information (structure and binding) is used by the managed application to automatically build user's command interface.

However, a developer can change the command interface view, generated by the system, changing the command order, visibility, etc.). There is a 'command interface fragment' editor for this (Pic. 25). The editor can be called for a specific subsystem, as well as for all subsystems.

demo fragment
Command interface fragment editor

The commands (open catalogs, new object entry, open reports, etc.) are provided by the system automatically. However, a developer can create his own commands to be included into command interface. For this, applied metadata objects a special property – Commands.

object command
Metadata object implements a command, created by a developer

The Window of Configuration Object Properties

The configuration object properties window is intended for editing properties of configuration objects, managing the composition of subordinated objects and definition of interaction between objects.

Example of the object editing window

The properties are distributed across several tabs; each of them contains some attributes of a certain type for an object's properties setup. There are 'Back' and 'Next' buttons to navigate through the tabs, or one can select a desired tab directly.

The set of the tabs and the composition of controls may differ in various objects, depending on a particular configuration object type.

The window of configuration properties allows to –

  • Edit configuration objects' properties, in consecutive order, first defining some properties that can be used later.
  • Edit configuration objects' properties, in random order, moving directly to a desired property type.
  • Edit predefined elements of a configuration object (should such supported by the object).
  • Open and edit forms, associated with an object.
  • Create new subordinated objects (resources, attributes, dimensions, forms, templates, etc.)
  • Delete subordinated objects, checking for existing references to the object being deleted.
  • Search for references to the given object at other objects.
  • Search for references to other objects at the given object.
  • Start wizards associated with the given object.

The Properties Window

The properties window is intended for editing of configuration objects. It contains an object's properties. The composition of properties depends on the object type being edited. All properties are grouped by logical categories.

The Configuration Properties Window (in list view and with tabs)

Developers can modify the view of the window selecting list view or properties grouped in tabs.

The properties window allows to:

  • Edit a configuration object's properties.
  • Sort properties alphabetically or by categories.
  • Show only important elements (properties).

Common Pictures and Templates

1C:Enterprise 8 system allows for configurations to contain pictures. Developers can use pictures to put them to control elements, forms, templates or access them from the script language.

The Designer provides developers with convenient tools to operate with a library of pictures. Besides, it contains a picture editor to create new and modify existing pictures.

Templates are configuration objects containing various data .

Wizards

There are 13 wizards in the system:

  1. Query wizard

This wizard helps developers build a query text with only visual tools. Using "Next' and 'Back' buttons in the wizard window one can move through the tabs, specifying data to be present in the desired query, how they should be interrelated, grouped, totals to be calculated, etc.

Query builder window

As a result, developer gets the query text, which can be inserted into a module text, or copied to clipboard.

Thereby, developers can build correct database queries even not knowing their syntax.

  1. Output form wizard

This wizard helps developers to create reports and display data in a convenient tabular or graphical view.

output form wizard
Output form wizard window

The wizard includes entire query builder's functionality plus it allows creating and adjusting a form that will be used to display results to users.

Various forms of displaying results are supported:

  • Spreadsheet document
  • Pivot table – multidimensional table with interactive composition support
  • Chart – supports several types of diagrams (linear, pie, block diagram, etc.)
  • Pivot chart – a diagram with interactive composition support.
  • At that, these elements can be mixed in one report.
  • For more information see reports section.
  1. Register records wizard

The wizard helps developers to create a procedure in the script language that is called at document posting. This procedure makes corresponding records in the applied solution's registers.

Register Records wizard

It's used only for documents and helps create a procedure of posting documents, in the embedded script language.

Example of the code generated by the wizard
  1. Print design wizard

The wizard helps to create a print form template for an applied solution object and a printing procedure, in the script language.

Print design window

The wizard works with catalogs, documents, document journals and registers.

  1. 'Create Based On' wizard

This wizard helps to create a procedure in the script language, that will be called when a new applied solution object is created basing on the data contained by other (often – current) object (document, catalog, etc.). This functionality is useful when, for example, a Delivery document should be created basing on a Sales Order document with the same attributes.

The wizard can be called from an object editing window.

'Create based on' wizard
  1. Object form wizard

Many objects of an applied solution may have various forms to display the objects' data. This wizard helps developers to create ready forms of such objects. It is automatically summoned upon creation of a new form (for example, from a catalog properties window).

Object form wizard

The wizard allows, using visual means, to describe a set of the form attributes and choose location for the command bar.

Result of the wizard is a ready form.

Ready form - result of the object form wizard operation
  1. Menu designer

The menu designer is intended to help developers to create a set of commands that users of the application will operate with, i.e. user interface*.

The designer is started automatically in the Designer tool upon adding a new interface applied object.

Menu designer

Result of the designer's work is a ready user interface. If necessary, developer can keep on editing it manually, using the user interface editor.

User interface editor window, with interface items generated by the menu designer
  1. Format string designer

It helps to compose a format string text. The string is used in the script language constructions to convert a value into a user-friendly representation.

Format string designer

Result of the work of the designer is a string corresponding to the rules of format strings composition, reflected in the bottom section of the window.

  1. Data composition scheme wizard

This wizard helps developers to create a composition schema that is a basis of reports using the data composition system.

Data composition schema wizard

Result of the wizard is a data composition schema fully describing a report. Thereby, a developer can create a full-functioning report without programming and not creating a single form.

  1. Data composition settings wizard

This wizard helps to quickly customize a report created with the data composition system.

Data composition settings wizard

It allows to describe, step by step, a desired report, for example select some fields to be displayed in the report, other fields – by which data grouping will be performed, defined the data order display, etc.

  1. Data composition template designer

This designer allows editing the design of a report being created with the data composition system (See Pic. 41, 'Templates' tab).

The result of the wizard is a data composition design template describing predefined template areas of a future report.

  1. Template wizard

The template wizard is the simplest of all wizards. It creates a 'draft' template of a certain type.

The wizard is called automatically upon creation of a new template.

Template wizard window

  1. Aggregates wizard

The aggregates wizard allows to create and adjust aggregates that an accumulation register will be using.

Aggregates wizard window

The wizard can be called from an accumulation register window.

Editors

The system includes six specialized editors:

  1. Form designer

This editor allows designing forms used in the system running in standard (non-managed) mode.

Any such form consists of three components:

  • Form dialog – i.e. a window that is displayed to users.
  • Form module – script language module, responsible for operation of the form elements and event handling.
  • Form attributes – a set of objects belonging to the form; it uses the attributes' data for its operation.

The designer provides editing of all three components.

Form designer window
  1. Text and module editor

It provides all major functions for editing both simple texts and scripts (when used as a part of the form designer).

Module editor window
  1. Spreadsheet document editor

This editor provides designing functionality for spreadsheet documents, that are used in 1C:Enterprise 8 system as a basis for creation of various print forms.

Spreadsheet document editor window
  1. Hypertext document editor

In 1C:Enterprise 8 the HTML editor is used for creation of application description as designed html-documents. The editor window contains three tabs – for designing, coding (in the html format) and previewing the document being created.

HTML editor
  1. Interface editor

It allows editing of user interfaces contained in an applied solution.

See 'Menu Designer' section for more information.

  1. Picture editor

It allows creating and editing of pictures to be used for a configuration designing purpose (command bar icons, buttons, splash pictures, etc.).

Debugger

The Designer includes an internal debugging tool. The main features are:

  • Debugging of applications being executed in remote workstations, accessible over TCP/IP protocol.
  • Debugging the code executed by a server cluster's working process; at that, it supports the through call stack for client and server, also step-by-step debugging for both sides.
  • Debugging the code executed in COM-connections, background tasks and WS-connections.

The Debugger supports conditional or unconditional breakpoints in module code. There is a breakpoints window, for convenient browsing across many breakpoints.

There is a possibility for step-by-step code execution. At that, one can watch variables' values as the code is being executed. Script language object properties are represented in a tree-view. For strings, arrays and collections one can open a separate window.

One can open an Immediate Window for calculation of results to be displayed during execution of a certain part of module.

The Debugger allows using a call stack displaying a sequence of calls and functions resulted at the line of the module being debugged.

Other standard functionality of debuggers is also supported (e.g. breakpoints, step-by-step execution, etc).

Other Development Tools

  1. Configuration report

The report provides developers with a textual description of configuration. The report may be generated for a whole configuration or only for some selected parts of it. It is saved as a text file.

This is very useful when developing some scaled configurations, or to keep history of modifications done.

  1. Syntax-assistant

It provides in-line help for developers, when programming in the embedded script language.

It also includes a help system on the script language objects, their properties, methods and associated events.

Syntax assistant window

Full-text search also operates here, to simplify the search for required functionality.

  1. Global search and replace

This functionality allows to search (search and replace) a certain string in all elements of an applied solution which may contain strings, such as modules, dialogs, spreadsheets, configuration descriptions and external files.

The search dialog includes many configuration options, including both search options and search scope defining a set of configuration elements to search in.

Global Text Search dialog window

The search result is open in a special window, with a list of entries. A click on an entry opens a corresponding configuration object and the item found in it.

  1. Text templates

1C:Enterprise 8 Designer supports the possibility to create, store and use quick text templates. Developers can use a special window for quick text insert.

Text Templates window

All templates are stored in files, and developers can create new template file, add or modify existing ones.

Each template may include static and dynamic texts. Static texts are displayed as defined in a template, while dynamic part depends on a usage context.

  1. External data processors and reports

Use of external data processors and reports helps to speed up the development process, since such reports and processors are stored outside of applied solutions, and therefore can be used in various solutions without changing them.

Any processor or report contained in a configuration can be converted into external, and vice versa. Besides, external processors can be added to a configuration structure, as new objects.

The Designer also provides the possibility to compare and merge built-in and external processors or reports.

  1. Compare and merge configurations

This mechanism allows to compare two configurations and merge entirely or partly (selectively) by comparison results. In particular, it allows one to incorporate elements of other configurations into an application being developed with ease and precision, to ensure synchronization of solutions being developed, etc.

This possibility is used when a configuration is developed by several independent developers, or when it is necessary to load some modifications to a configuration.

This mechanism considers not only properties of configuration objects, but also their attributes, tabular parts and forms (including text in modules of the script language, description texts and templates).

  1. Saving and restoring configurations

The system allows writing and loading an applied solution configuration as a file.

It can be used, for example, to start a new configuration from an existing one as a basis.

  1. Creation of application distribution package

It is also one of the Designer's functions for creation of a configuration distribution package.

The package includes 'setup' utility and a set of installation files, zipped in an archive.

The installation program has standard user interface and guides users through the whole setup process.

Developers have a possibility to create and modify distribution package description, which is further used as basis to create distribution packages.

 

Distribution package descriptions are stored in external files, so they are independent on configurations.

  1. The configuration check

This mechanism allows checking configurations for errors that are not critical for the application functioning, but which could affect application performance or result in errors when running in some special modes.

It allows doing the following checks:

  • Standard check for configuration logical integrity.
  • Detection of incorrect references in all objects, forms, templates, etc.
  • Syntax check in various operation modes, including server operation emulation and external connection.
  • Detection of unused procedures and functions.
  • Detection of existing handlers assigned.
  • Detection of empty handlers.

This mechanism can be used, for example, before delivering a configuration to customers, building a distribution kit, etc.

  1. Dumping / loading configuration files

This functionality provides dumping/loading of configuration properties to files, at that it is possible to make it for selected configuration objects only.

Dump configuration files dialog

Dumping of configuration properties to files is performed according to properties' types.

  1. Performance metering

1C:Enterprise 8 Designer allows to estimate performance for a configuration as a whole or only for a part of it. This helps developers to optimize implementation of algorithms in the script language and to find ways to improve general performance.

Team Development of Configurations

The Designer's mechanisms allow establishing team development of an applied solution. At that, access rights for modification of every applied solution’s object are specified, so required modifications are performed simultaneously, not one after another. There are also visual tools for versioning control, keeping history of versions, modifications done, etc.

 

* - Here the classic user interface is meant, not the managed one.


Next
Previous
   © 1C LLC

Your proposals on site send to:webmaster@1c.ru