Labor made a man from a monkey, laziness turned me from a man into a developer, and the market made me a developer on the 1C platform.
Few of us love the routine, but I really dislike it. In business 1C: Franchisee, in addition to the interesting work there is also a large amount of routine that needs to be addressed. To a greater extent it is associated with the support of already implemented programs.
We call the whole range of activities aimed at customer support ITS (Information Technology Support).
This includes a lot of things, but the main time costs revolve around the timely update of client software and control over it, so that no client and no information base will be forgotten. In the market, where franchisee firms can offer approximately the same services for the same money, the degree of automation of these operations plays an important role.
This post is about my 1C: Franchisee automation project, about what is already implemented and what plans for further development.
Prerequisites for creating a project and general information.
The working configuration name is
“Automator”Project website:
www.1c-tools.ru')
The aim of the project was to increase the efficiency of the company and improve the quality of our work, as well as the desire to create your own configuration from scratch for self-development.
I started the project more than a year ago, in the first version it was written on platform 8.2 and used unmanaged forms.
At the moment, the project has been rewritten as Platform 8.3 Taxi interface and has been significantly reworked and improved for mass use.
Until the last release, the configuration consisted of
~ 3000 lines of code in the configuration itself and
~ 1500 lines of script code from the sulfur part of
www.1c-tools.ru .
In the last release, it was decided to add to the configuration of the BSP (Library of Standard Subsystems) of 1C to make it familiar with all the standard functionality, the development of which from scratch was of no interest. Work on the integration of the BSP is still ongoing, and the code base is very swollen, but now the configuration will be more familiar in the work.
Functional
Currently fully implemented the following functionality:
- Alert employees and customers about the release of releases of their configurations. By SMS or Email. On the approach post on Twitter.
Read moreHow to track the release of new releases in order to more efficiently plan the schedule and quickly fulfill your obligations to the client?


- Automatic downloads of releases, unpacking, highlighting the shortest path to update.
Read moreNow all that needs to be done in order for the most recent releases to be with us:


- Updating any typical configurations in automatic mode. I chose the path to the database, and clicked to update, the program will do everything itself.
Read moreThe program will determine the configuration itself, find the shortest way to update, install the missing templates if necessary and update to any release.

- Automatic preparation of cf (configuration upload file) of the most recent release of any of the 400 available configurations. No need to worry about where to get the latest version of the configuration.
Read moreIt is necessary to place the configuration upload file of any release version in acc. folder with the template name
Updated_ [VersionRelay] .cf and check the item to update in the “Configurations” directory. Further, the program will keep it up to date as new configuration releases are released.


- Automate the collection of information about client information databases (eg platform version, configuration, release number). To control the performance of obligations to the client.
Read moreBy performing a simple
procedure on the client’s computer (s), you can get quite a lot of the necessary information, thus it is better to fulfill your obligations to the client.

- Personal release synchronization with an employee or client flash drive.
Read moreTired of controlling whether you have on the flash drive all the latest releases and related files.
The configuration has learned to “recognize” an employee's flash drive, and synchronize the release files according to its needs.
Smart sync:- Overwrites only missing or changed files.
- Able to delete obsolete files.
- Able to "skip" intermediate releases.
- You can specify a limit on the number of releases being rewritten, by number (for example, the last 6 ) or by time (for example, in half a year ).
- If the distribution is unpacked, then only the unpacked version is rewritten.
- You can set exceptions, for example, so that full distributions or linux distributions cannot be copied, and so on.
- Data acquisition and reporting on ITS.
- Get data on reg. Program number or client login status of his ITS subscription without leaving the program.
Read moreTo do this, the corresponding module is embedded on the initial page.

- The output of important information (the number of missed releases from the client, his subscription, recently released and planned releases) on the TV.
Read moreIt looks like this

- API for integrating part of the functionality with third-party development.
At the moment, the functional, which still can not come out due to the lack of a developer for mobile OS:
- Automatic recording of the time spent by the employee at the client, based on the history of GPS coordinates obtained from the smartphone
Read moreIt looks like this: On the configuration side, customer location areas are marked, and the mobile application must remember the coordinates and transfer their configurations for further processing.

The updated configuration at number 0.2 will be available already this week.Future plans
Currently, about 200 accounts are registered, of which ~ 50 are franchisee firms, and one developer who is currently writing this article. I would like to leave all available functionality free for the main target audience of the project -
1C: Franchisee companies. But on the condition that they will take part in the development of the project, let's call it a collective development. If someone from Habrazhiteley has a desire to take part in the project in his spare time, or send a bug, security reports - I will be grateful in a personal or at info@1c-tools.ru.