Libraries of standard subsystems of 1C enterprise 8. Library of standard subsystems (BSP Mechanism). Additional reports and processing

Using the example of BSP 2.1.2.34 edition (1C 8.2 platform), I will consider the main functions, subsystems and examples of using this configuration.

The “Standard Subsystems Library” configuration is one of the few configurations from 1C that was created for developers, not users. The configuration itself is a set of subsystems that can be used in any configuration. Also, the BSP includes an entire development technology based on 1C 8.2. A library of standard subsystems allows you to standardize solutions and achieve maximum similarity between different solutions from different developers. All typical 1C 8.2 configurations where they are used managed forms(2.0, BP 3.0, UT 11, UNF), written on the basis of BSP.

BSP subsystems, as a rule, include such functions as database administration, setting data rights, attaching files, object versioning, tasks for employees, email messages, surveys, sending SMS, standard reference Information(organizations, currency classifier, ) and others service functions, which can be included in any configuration based on 1C 8.

The “Standard Subsystems Library” configuration has a special implementation assistant that allows you to significantly reduce labor costs when developing a new configuration. With the help of the assistant, you can step by step specify the required subsystems and receive a blank for the future configuration at the output:

Below I will briefly describe the subsystems of this configuration, their purpose, and how they can be used. There are a total of 52 subsystems in the Standard Subsystem Library. Some are related, some are independent. To review the implementation process for each subsystem, it is best to refer to the configuration documentation.

Get 267 video lessons on 1C for free:

1.Basic functionality

The “Basic functionality” subsystem contains basic functionality, mandatory for all application solutions using the library. The basic functionality includes general-purpose procedures and functions, a subsystem for setting an arbitrary title of the program window, a universal form for selecting metadata objects, a number of universal processing, as well as standard roles: Full Rights, System Administrator, UpdateDatabaseConfiguration,Basic Rights and others. The system contains functionality for setting session parameters.

This subsystem is required to be installed if any other subsystem is used.

2.Working in a service model

The “Work in the Model” subsystem contains basic functionality required for all application solutions designed to work in the service model, as well as a number of subsystems that expand other subsystems to work in the service model (for example, “Currencies in the service model”, etc.) .

3. Address classifier

The subsystem is designed to load, store, and receive address information. Loading occurs from (KLADR). The subsystem is closely related to the “Contact Information” subsystem, but can be implemented independently.

4. Analysis of the log book

Contains a special report for a more informative viewing of log information.

5. Questionnaire

Designed for conducting surveys and analyzing survey results. It is possible to conduct surveys via the Internet using a web client.

6. Banks

The subsystem is designed to load, store, and receive information about banks. The download takes place from the RBC website; it is possible to set up a routine task and manual download.

7. Business processes and tasks

Designed to work with tasks as part of a business process. Tasks can be addressed to a performer or a group of performers either personally (personal addressing) or using the roles of performers (role-based addressing). The subsystem includes five functional blocks: setting up role addressing, creation, execution, control and automatic monitoring of tasks.

8. Currency

The subsystem is designed to load, store, and receive information about currencies and exchange rates. It is possible to select the desired currency from a spreadsheet document. Currency rates are downloaded from the RBC website; it is possible to set up a routine task or manual download.

9. Report options

The subsystem expands user interface report settings.

10. Versioning objects

The subsystem is designed to save and further analyze elements of directories and documents. The subsystem stores each version of the object in the value store and then places it in the information register resource. The subsystem includes special reports that allow you to quickly view the detailed history of the user’s work with the object.

11. Interactions

The “Interactions” subsystem is designed to plan, register, organize interactions and work with the results of interactions. Interactions include email correspondence, call logging, and meeting logging. The subsystem ensures the selection and creation of new interaction contacts.

12.Group modification of objects

The subsystem allows you to make mass changes to data in the database. Reminds me of a similar treatment from 8.1.

13. Dates prohibited from changing

Allows you to set the date until which user work in documents, directories, etc. is blocked. widely used in typical configurations— using it you can close objects from the past period for editing.

14. Additional reports and processing

The “ ” subsystem is an absolute analogue of the old library of standard subsystems; it allows you to connect external processing and printing forms.

15. Shutting down users

The subsystem allows you to terminate existing connections with the infobase (very useful if the session is frozen) and block new connections with the infobase for a certain period of time, for example, during regulatory procedures.

16. User notes

The “User Notes” subsystem is designed for storing personal notes (various unstructured information that is not available to other users information base). Notes can be color coded, placed on your desktop, and grouped.

17. Prohibition of editing object details

Allows you to disable editing of arbitrary object details. This is what was sorely missing in 8.1.

18. Protection of personal data

The “Personal Data Protection” subsystem is designed to comply information system, built on the basis of the configuration, the requirements of Federal Law No. 152-FZ of June 27, 2006 “On Personal Data”.

19. Information center

Essentially it is a connection to the ITS system. Integrating the application with the service solves the problem of quickly moving to other subscriber applications and displaying the application name as specified by the subscriber.

20. Startup information

Displays at system startup HTML pages with various information (for example, advertising). Pages are contained in processing layouts InformationAtLaunch. Each layout contains home page, and may also contain other pages whose links are indicated on the start page.

There is a configuration that makes the developer’s work easier, saving him from such “trivial” work - this is the “Standard Subsystems Library” (BSS), which includes a set of universal functional subsystems and fragments of the “Administration” section, intended for use in application solutions on the platform "1C:Enterprise". The library is not a complete (from a subject point of view) application solution, but the library subsystems can be used in a consumer configuration, both together and separately. And for this purpose, the BSP includes a special implementation assistant, the use of which helps to significantly save time when developing a new configuration.

The assistant itself is made in the form step-by-step wizard, with the help of which the developer specifies the subsystems he needs, and the wizard will create a template with which he can work in the future. In essence, we receive a template for a future configuration.

Let's launch the BSP(we have edition 2.3, version 2.3.3.63), let's go to the section "Developer Tools" U94; "First implementation of BSP":

Here it will be revealed to us "BSP Implementation Assistant". The assistant itself looks like a step-by-step assistant, where at the first stage we select the subsystems that we will need in the configuration being developed. After this, you need to specify the file (in xml format) in which we will save these settings.
Then we move on to the second stage: we indicate additional parameters for each of the selected subsystems.

After selecting all the parameters, the system will check whether everything was selected correctly and offer different options for tracking errors (Subsystem Implementation Table or BSP Implementation Report).

The article briefly describes working with the BSP Implementation Assistant, because this tool is not very popular. More often in practice, developers act according to this scheme: they install the necessary BSP subsystems on an empty configuration (the “BSP Implementation Assistant” can also help here), but usually all subsystems are transferred from the BSP to a new empty configuration.

We have two configurations: the first (main) - with all BSP subsystems, the second (file) - BP.

1. Enable the ability to edit the main configuration.

2. Call up menu Configuration - Compare, merge with configuration from file.

3. Select a file with the extension cf PSU configurations.

4. Answer Yes to the offer of support.

6. Execute Actions - Mark by subsystems.

7. Mark the subsystems that are not in our main configuration - take them from the file, but the subsystems that are not in the configuration from the file must be left in the main configuration (this will be the case by default), then click Install.

8. Mark the properties of the root element for merging: Main Roles, Managed Application Module, Session Module, External Connection Module, Module regular application, Mode of using modality, Mode of using synchronous calls to platform extensions and external components, Interface compatibility mode, Compatibility mode. Click Run.

9. In the window Setting up support rules - OK.

10. Update database configuration (F7).

And similar service messages:

“... (the object is part of a common attribute of the same name)” or “...: Using defined types in the X.H.H. compatibility mode. (for example, the author) and below is unacceptable" ; “General Picture: The name is not unique!”

12. For an object that is part of the general props of the same name - remove from support, delete the object and links to it. Search for links to objects to be deleted – delete links.

13. Change the compatibility mode above X.H.X.

14. Update database configuration (F7). Next, if you return to step 11, complete steps 12 and 13, then 14.

In principle, that’s all – the “automatic” part of the work is finished. The most “interesting” stage of the work begins: if you already thought that the configuration “took off,” then most likely you are very mistaken.

First, check common modules, whether subsystems are included in the command interface, etc. When everything is “sort of ready”, start debugging.

And so you debug until you are sure there are no errors.

Version 1.0.4.5

Version 1.0.5.21

Final version

  • Information N11853 for users and partners 05/14/2010 "On the release of the final version of the 1C: Library of Standard Subsystems 8.2 toolkit"
The 1C company announces the release on May 14, 2010 of the final version of the toolkit for developers of application solutions on the 1C:Enterprise 8.2 platform - 1C: Library of Standard Subsystems 8.2. "...In total, the BSP includes 31 subsystems..."

Version 1.0.6.8

Version 1.0.7.5

  • Release date 2010.08.05
  • release: http://users.v8.1c.ru/SSLTest.aspx
  • Documentation: http://its.1c.ru/db/bspdoc#content:23:1

Examples of using

What is this

The Library of Standard Subsystems (BSS) includes a set of universal functional subsystems that can be used in the developed configuration, both together and separately. Using the BSP, you can quickly create new configurations with ready-made basic functionality, as well as include ready-made functional blocks in existing configurations.

All BSP subsystems can be divided into the following categories:

  • Subsystems that implement “independent” functionality. They are implemented by simply transferring functionality and do not require significant additional settings.
  • Integrated subsystems that implement functionality intended for use in certain consumer configuration objects (“tight” integration). When implementing, it is necessary to determine the composition of consumer configuration objects for which functionality needs to be implemented, and then perform a certain number of additional settings, make changes to the code and forms of the selected objects.

BSP subsystems cover such areas as administration of the information base, administration of system users, maintenance of various regulatory and reference information (address classifier, exchange rates, calendar charts, etc.). The BSP provides user and program interfaces for working with tasks and business processes, attached files, contact information, email messages, etc. The full composition of the trial version subsystems is given in the documentation.

In addition to subsystems, BSP offers separate development methods standard solutions.

Using BSP when developing applications on the 1C:Enterprise 8.2 platform will reduce the time spent on development, improve the quality of application solutions, and also standardize configurations released on the 1C:Enterprise 8.2 platform. Now, in addition to the platform, 1C offers ready-made basic functionality and technology for the development of application solutions, the use of which will reduce the time for studying and implementing application solutions due to their unification according to the set of standard subsystems used. Trial Features

The current version 1.0.4 has a number of limitations:

  • Compatibility of the trial version of the BSP with subsequent versions is not guaranteed.
  • Use of this version in commercial projects is not recommended.
  • The trial version is intended for use with the 1C:Enterprise 8.2 platform version 8.2.9.260.

Preliminary test releases of configurations are provided to 1C partners and users of the 1C:Enterprise software system for testing, preliminary familiarization with new configuration capabilities, bug fixes, and for testing the operation of new releases on real data.

Using a pre-release to automate real-life enterprise tasks can only be done in individual cases at the discretion of the user, in conjunction with the partner supporting the implementation. Messages about errors identified during testing should be sent to the email address [email protected]. This address only registers errors in preliminary test releases of configurations; consultations are not provided.

When sending an error message, be sure to indicate:

  • partner code or user registration number;
  • configuration name;
  • the full release number in which the error was identified;
  • detailed description of the error;
  • the order in which the error is reproduced.
  • indicate the characteristics of the computer;
  • indicate the operating system version;
  • transfer application data (infobases and other data that could help reproduce the error).

A separate letter should be sent for each detected error.

Library Composition

The library "1C:Enterprise 8. Library of standard subsystems 8.2" includes a set of universal functional subsystems intended for use in application solutions on the 1C:Enterprise 8.2 platform. The library is not a complete (from a subject point of view) application solution. Library subsystems can be used in a consumer configuration either together or separately.

All library subsystems can be divided into the following categories:

1. Subsystems that implement independent functionality.

2. Integrated subsystems that implement functionality intended for use in certain consumer configuration objects (tight integration).

Subsystems of different categories differ in the complexity of their implementation in the configuration. Subsystems of the first category are implemented by simply transferring functionality; as a rule, they are displayed in the configuration interface and do not require significant additional settings. Such subsystems may contain user interfaces and provide a programming interface that can be used in the consumer configuration. Updating these subsystems upon exit next version libraries often comes down to simply updating the corresponding configuration objects. Examples of subsystems are “Currencies”, “Termination of users”.

When implementing integrated subsystems after transferring the functionality of the subsystem, it is necessary to determine the composition of the consumer configuration objects for which the functionality needs to be implemented. After this, it is necessary to perform a certain number of additional settings, make changes to the code and forms of the selected objects, i.e., perform close integration of the subsystem into consumer configuration objects. Updating such subsystems when the next version of the library is released also comes down to a simple update of the subsystem and, as a rule, does not require repeated changes to consumer configuration objects.

The library contains only standard subsystems, and also offers some methods for developing standard solutions, for example, a method for setting session parameters.

Description key functions subsystems are given in Table 1.

Table 1. Purpose of library subsystems (the v icon denotes subsystems intended for implementation into supplier configuration objects (tight integration))
Subsystem Key Features
1. Standard subsystems
  • General purpose procedures and functions.
  • Setting the title of the program window.
  • Service capabilities of the system administrator (deleting marked objects, list active users and log book)
2. Address classifier
  • Providing an address classifier (KLADR) for use in application subsystems.
  • Loading the address classifier from the ITS disk, from a file and from the user section of the 1C company website.
  • Periodically checking for updates to the address classifier on the 1C company website
3. Business processes and tasks
  • Informing the user about his current tasks.
  • Interactive task entry.
  • Monitoring and control of task execution by stakeholders - authors and task coordinators.
  • Basic functionality for developing custom business processes in the configuration
4. Currencies
  • Storing and providing access to the list and exchange rates.
  • Downloading currency rates from the rbc.ru website.
  • Selecting currencies from the all-Russian OKV classifier
5. Versioning objects
  • Storing the history of changes to directories and documents (the user who made the changes, the time of the change and the nature of the change, accurate to the details of the object and the details of its tabular parts).
  • Comparison of arbitrary versions of objects.
  • View previously saved versions of an object
6. Shutting down users
  • Setting up blocking of new connections to the infobase.
  • Terminating existing connections to the infobase
7. Prohibition of editing object details
  • Checking the mandatory completion of some object details that determine the nature of the object (conventionally called “key” details).
  • Prohibition of editing key details of recorded objects.
  • Checking the ability to change key details by a user who has rights to do so
8. Calendar schedules
  • Storing information about calendar schedules used in the enterprise.
  • Receiving a date that will occur in a specified number of days according to a specified schedule, etc.
Contact Information
  • Expanding the configuration directory details with an arbitrary set of details intended for entering contact information.
  • Use of predefined and custom types of contact information.
  • Using the functionality of the “Address Classifier” subsystem
10.

Controlling dynamic configuration updates

  • Checking the fact of dynamic configuration changes.
  • Notifying the user with a proposal to restart the program

Log monitoring

  • Viewing the registration log in 1C:Enterprise mode.
  • Generating a report on critical entries in the log and periodically sending the report to specified recipients

Setting the order of elements

  • Setting the order of elements in an object using the Up and Down buttons

Updating the information security version

  • Performing initial filling and updating of infobase data when the configuration version changes.
  • Displaying information about changes in new version configurations
  • Printing and sending printed forms by email

Full text search

  • Setting up and using full-text data search

Receiving files from the Internet

  • Software interface for receiving files from the Internet.
  • Receiving a file from the network on the client.
  • Requesting and storing proxy server parameters

Users

  • View and edit the list of system users.
  • User rights management.
  • Determining the current user at system startup

Working with email messages

  • Software interface for sending email messages.
  • Basic user interface for sending messages

Working with files

  • Attaching files to arbitrary configuration objects.
  • Attaching files from file system or creating files using a template.
  • Collective editing of files.
  • Storing and providing access to file versions.
  • Full text search support for attached files

Scheduled tasks

  • Display and configure parameters of scheduled tasks (schedule, start, stop).
  • Support for performing routine tasks in the file version of the infobase

Properties

  • Creating and editing additional properties of documents and directories.
  • Storing properties in an object (additional details) and outside the object in a special information register (additional information).
  • Ability to use properties in reports.
  • Support for the ability to set different sets of properties for different objects of the same type

Saving settings

  • Saving and loading report options and custom report settings.
  • Refinement of the report form for convenient switching of user settings and report options

Individuals

  • Storing and providing access to information about individuals

Report functions

  • Software interface for customizing report forms of the data composition system (DCS)

As a rule, configurations in 1C are written for users. All configurations are different, but quite often different configurations use the same objects that differ slightly from each other. It is really difficult to imagine a configuration where such entities as items, counterparties, users, and currency would not appear. And some tasks are typical: the possibility of basic differentiation of rights, working with email, tasks for users, etc. But there is a configuration that makes the programmer’s work easier; it contains and structures the standard tasks that employers set for programmers.

If you have worked with different standard configurations from 1c, you will have noticed that they are basically quite similar, many basic functions are the same for all standard configurations. Also from the BSP you can add to your own configuration such standard directories as organizations, banks, a currency classifier and much more.

We will try to figure out which subsystems are responsible for what and how they are interconnected.

If you decide to use a BSP, this does not mean that you need to use all the subsystems that are included in it. The BSP includes a special implementation assistant, which helps to significantly save time when developing a new configuration. The assistant is designed as a step-by-step wizard, using which the developer specifies the subsystems that he needs, and the wizard will create a blank with which you can work in the future. In essence, we receive a template for a future configuration.

If we launch the BSP in thin client mode, we will see such a window

Us on initial stage I’m interested in the “Developer Tools” tab, with which we will launch the “BSP Implementation Assistant”

The skua itself looks like a step-by-step assistant.

At the first stage, we select the subsystems that we will need in the developed configuration.

For example, like this

After this, you need to specify the file in which we will save the settings. XML file format.

Then we move on to the second stage.

At the second stage, specify additional parameters for each of the selected subsystems.

After you have selected all the parameters, the system will check whether everything was selected correctly and offer different options for tracking errors

Or in this form:

In the following articles we will continue to study working with the library of standard subsystems.

Library of standard subsystems (LSL) is a set of subsystems for configurations on the 1C:Enterprise platform that implement basic functionality and individual functional blocks. Let's try to understand in more detail what it is.

Why was BSP created?

The first version of the BSP was released by 1C back in 2010 for the 1C:Enterprise 8.2 platform. 1C suggests using this library (or its individual subsystems) as a basis for creating your own application solutions. Also, all standard products produced by 1C itself are based on BSP.

The use of uniform modules made it possible to achieve greater standardization of application solutions, and this in turn made it possible to reduce the time spent on studying them (by programmers, administrators, and end users).

For programmers developing application solutions from scratch, BSP allowed them to save a lot of time, because There is no need to independently develop the basic functional blocks included in the BSP. The development and testing was carried out by 1C for the programmer. The programmer now only needs to understand the already developed functionality and learn how to implement the BSP.

How is BSP distributed?

BSP is a configuration for the 1C:Enterprise platform. Moreover, the configuration is not an independent application solution, it is just a toolkit for the developer. The entire configuration or part of the subsystems can be used when developing application solutions.

The delivery of the BSP includes a demo base with an example of implementation. This demo database is available for review on the 1C website. You can read how you can access it in the article.

BSP is not for sale. The BSP distribution kit can be obtained free of charge if you have a subscription to information technology support (ITS). To use an application solution developed on the basis of the BSP, a subscription to the ITS is not required. Partners of 1C can also receive BSP for free.

The official documentation on the BSP is located at https://its.1c.ru/db/bspdoc and is available if you have a subscription to the ITS.

BSP composition

The BSP consists of many subsystems, which are divided into:

  • independent. To implement it, it is enough to transfer all objects to the target configuration and display the objects in the interface. Examples of such subsystems: “Log Analysis”, “Currencies”, “Completing User Operations”.
  • integrable. Designed for tight integration with other configuration objects. To implement such subsystems, additional settings must be made. Examples of such subsystems: “Object versioning”, “Filling objects”, “Prohibition of editing object details”.

Currently (July 2017), BSP version 2.4.2 is available, which supports the following functionality:

Administration and Maintenance Tools Log analysis
Additional reports and processing
Program settings
Configuration update
Performance Evaluation
Finding and removing duplicates
Security Profiles
Scheduled tasks
Information security backup
Removing marked objects
Managing totals and aggregates
Administration of users and access rights Shutting down users
Users
Access Control
Integration with other programs and systems External Components
Loading data from a file
Integration with 1C-Bukhfon (1C-Connect)
Data exchange
Sending SMS
Receiving files from the Internet
Working with email messages
Distribution of reports
Technological mechanisms and software interfaces Basic functionality
Filling Objects
Prohibition of editing object details
Updating the information security version
Plug-in commands
Prefixing objects
Working in a service model
Monitoring Center
Application subsystems and user workstations Questionnaire
Business processes and tasks
Report options
Interactions
Working with files
Current affairs
Message templates
Regulatory reference information and classifiers
Banks
Currencies
Opening hours
Calendar schedules
Service subsystems Versioning objects
Group modification of objects
Dates prohibited from changing
User Notes
Protection of personal information
Startup information
Contact Information
User Reminders
Setting the order of elements
Seal
Full text search
Checking the legality of receiving updates
Properties
Declension of object representations
Reporting structure
Electronic signature

Specific subsystems will be described in more detail in separate articles.

Implementation of BSP

Before implementing a library of standard subsystems into your configuration, you need to determine the list of subsystems to be implemented. In the simplest case, all subsystems are implemented. Regardless of what functionality is needed, there are mandatory subsystems that are always implemented:

  • Basic functionality;
  • Updating the information security version;
  • Users.

The general implementation scheme consists of the following stages:

  1. Transfer of necessary metadata objects to the target configuration;
  2. Setting up transferred objects;
  3. Using BSP objects when developing new functionality.

To assist in the implementation of BSP, the library includes processing First Implementation of BSP.epf . It is located in the configuration template directory. In processing short description of all subsystems and the interdependence of the subsystems on each other is determined.

To check the correctness of the BSP implementation, a report is located in the configuration template directory Checking the implementation of BSP.erf.

How to find out the version of the BSP application solution

There are several ways to find out which version of the BSP is used in a specific application solution:

  • Programmatically: call a function StandardSubsystemsServer. Library version() ;
  • Interactive: in the “Subsystem Versions” information register, look at the version value for the “StandardSubsystems” subsystem.