One of the nice features of 1C:Enterprise technology is that the application solution developed using the technology managed forms, can be run both in a thin (executable) client for Windows, Linux, MacOS X, and as a web client for 5 browsers - Chrome, Internet Explorer, Firefox, Safari, Edge, and all this - unchanged source code applications. Moreover, externally the application in the thin client and in the browser functions and looks almost identical.
Find 10 differences (2 pictures under the cut):
Window thin client on Linux:
The same window in the web client (in the Chrome browser):
Why did we make a web client? To put it somewhat pathetically, time has set such a task for us. Working over the Internet has long been a prerequisite for business applications. First, we added the ability to work via the Internet for our thin client (some of our competitors, by the way, stopped there; others, on the contrary, abandoned the thin client and limited themselves to implementing a web client). We decided to give our users the opportunity to choose the client option that suits them best.
Adding web-based capabilities to the thin client was a big project with a complete change in client-server architecture. Creating a web client is a completely new project, starting from scratch.
Client code in the 1C language can contain server calls, working with local resources (files, etc.), printing, and much more.
Both the thin client (when working via the web) and the web client use the same set of web services to communicate with the 1C application server. Client implementations, of course, are different - the thin client is written in C++, the web client is written in JavaScript.
From the very beginning, we rejected the idea of any automatic (even partial) conversion of C++ thin client code into JavaScript web client due to the strong conceptual differences between the two languages; the web client was written in JavaScript from scratch.
In the first iterations of the project, the web client converted client code in the built-in 1C language directly into JavaScript. The thin client acts differently - the code in the built-in 1C language is compiled into bytecode, and then this bytecode is interpreted on the client. Subsequently, the web client began to do the same - firstly, it gave a performance gain, and secondly, it made it possible to unify the architecture of the thin and web clients.
The first version of the 1C:Enterprise platform with web client support was released in 2009. The web client at that time supported 2 browsers - Internet Explorer and Firefox. The original plans included support for Opera, but due to insurmountable problems at that time with the application closing handlers in Opera (it was not possible to track with 100% certainty that the application was closing, and at that moment carry out the disconnection procedure from the 1C application server) from these plans had to be abandoned.
Structurally, the web client is largely divided into the following subsystems:
To minimize the size of client code, we first used our own obfuscator, and starting with platform version 8.3.6 (October 2014) we began to use Google Closure Compiler. The effect of use in numbers – the size of the web client framework after obfuscation:
Google Closure Compiler works very well with object-oriented code, so its efficiency for the web client is as high as possible. Closure Compiler does a few good things for us:
To analyze code, we use SonarQube, where we integrate static code analyzers. Using analyzers, we monitor the degradation of the quality of JavaScript source code and try to prevent it.
/** * @constructor * @extends (Base.SrvObject) */ Srv.Core.GenericException = function () ( /** * @type (string) * @expose */ this.descr; /** * @type (Srv.Core.GenericException) * @expose */ this.inner; /** * @type (string) * @expose */ this.clsid; /** * @type (boolean) * @expose */ this. encoded; )
And to avoid obfuscation when interacting with other windows, we use so-called exported interfaces (interfaces in which all methods are exported).
/** * Exported DropDownWindow control interface * * @interface * @struct */ WebUI.IDropDownWindowExp = function()() /** * Moves the selection forward or backward by 1 * * @param (boolean) isForward * @param (boolean ) checkOnly * @return (boolean) * @expose */ WebUI.IDropDownWindowExp.prototype.moveMarker = function (isForward, checkOnly)() /** * Moves the selection to the beginning or end * * @param (boolean) isFirst * @param (boolean) checkOnly * @return (boolean) * @expose */ WebUI.IDropDownWindowExp.prototype.moveMarkerTo = function (isFirst, checkOnly)() /** * @return (boolean) * @expose */ WebUI.IDropDownWindowExp.prototype .selectValue = function ()()
Our tool is universal - it allows you to test almost any windowed program, and therefore is suitable for testing both a thin client and a web client. The tool records the actions of the user who launched the 1C application solution into a script file. At the same time, images of the working area of the screen - standards - are recorded. When monitoring new versions of the web client, scripts are played without user participation. In cases where the screenshot does not match the reference one at any step, the test is considered failed, after which a quality specialist conducts an investigation to determine whether this is an error or a planned change in the behavior of the system. In case of planned behavior, the standards are automatically replaced with new ones.
The tool also measures application performance with an accuracy of up to 25 milliseconds. In some cases, we loop parts of the script (for example, repeating the order entry several times) to analyze the degradation of execution time over time. The results of all measurements are recorded in a log for analysis.
Our testing tool and application under test
Our tool and Selenium complement each other; for example, if some button on one of the screens has changed its location, Selenium may not track this, but our tool will notice, because makes a pixel-by-pixel comparison of the screenshot with the standard. The tool is also able to track problems with processing input from the keyboard or mouse, since this is exactly what it reproduces.
Tests on both tools (ours and Selenium) run typical work scenarios from our application solutions. Tests are automatically launched after the daily build of the 1C:Enterprise platform. If scripts are slower (compared to the previous build), we investigate and resolve the cause of the slowdown. Our criterion is simple - the new build should work no slower than the previous one.
Developers use different tools to investigate slowdown incidents; mainly used Dynatrace AJAX Edition produced by DynaTrace. Logs of the execution of the problematic operation on the previous and new builds are recorded, then the logs are analyzed. At the same time, the execution time of single operations (in milliseconds) may not be a decisive factor - service processes such as garbage collection are periodically launched in the browser, they can overlap with the execution time of functions and distort the picture. More relevant parameters in this case would be the number of JavaScript instructions executed, the number of atomic operations on the DOM, etc. If the number of instructions/operations in the same script has increased in a new version, this almost always means a drop in performance that needs to be corrected.
Also, one of the reasons for the drop in performance may be that Google Closure Compiler for some reason was unable to perform inline substitution of the function (for example, because the function is recursive or virtual). In this case, we try to correct the situation by rewriting the source code.
When running in Safari, our extensions use NPAPI; when running in Internet Explorer, they use ActiveX technology. Microsoft Edge does not yet support extensions, so the web client in it works with restrictions.
Other tasks include architecture development, refactoring, performance and reliability improvements. For example, one of the directions is further movement towards an asynchronous work model. Some of the functionality of the web client is currently built on a synchronous model of interaction with the server. The asynchronous model is now becoming more relevant in browsers (and not only in browsers), and this forces us to modify the web client by replacing synchronous calls with asynchronous ones (and refactoring the code accordingly). The gradual transition to an asynchronous model is explained by the need to support released solutions and their gradual adaptation.
Tags: Add tags
2016-12-07T18:05:29+00:00Many 8 users have already heard terms such as “Thick client” and “Thin client”. But few people know what this means.
Fat client- This is the normal way to work with the program. We have long been accustomed to it (since the days of 7.7 and 8.2). In details .
Thin client- this is the 1C launch mode for working via the Internet, when the accounting database is not on our computer or even on our network, but somewhere thousands of kilometers away remote server(possibly in another city or country). In details .
Simply put, for an ordinary accountant who works with a database directly on his computer or on an enterprise network, there is no difference between a thin and a thick client.
But it often happens that some errors appear in one client and are absent in another. As, for example, with displaying transactions in 1C Accounting 8.3.
In this case, it can be useful to find out which client we are currently working in and change it to another.
How do you know which client you are working with? Look at the window with the version of your 1C (at the article):
There, in the “Application” section, your client will be indicated:
It is written about how to change a client.
Sincerely, (teacher and developer).
31.07.2015
Similar articles on the topic:
You can work with equal success with your databases located on the 1C server either using a regular browser or using the 1C:Enterprise thin client (Fig. 1).
In some cases, working using a thin client may be a more stable and convenient option. The 1C:Enterprise thin client can run on MS Windows and Linux operating systems, but in this article we will consider only the installation option under Windows OS, as it is the simplest and does not require special skills.
1. Download the current 1C thin client distribution from the 1C website using the link
The file is saved in the folder that is specified in your default browser settings. Typically, this folder is called "Downloads" or "Downloads".
2. Extract all files from the downloaded archive to any folder on the disk.
3. Run the setup.exe file from the folder where you extracted the archive files (Fig. 2). Preparations for installing the program will begin, which may take 1-2 minutes.
4. The 1C:Enterprise thin client installation wizard will start (Fig. 3). Click the "Next" button and follow the wizard's recommendations (we recommend accepting the default settings). Consistently click the "Next" button until the installation process is completed and at the last step of the wizard, click the "Finish" button.
5. A shortcut to launch the thin client will appear on the desktop (Fig. 4).
Important!
In the future, you need to launch the thin client using this 1C:Enterprise shortcut from the desktop, because in this case, the thin client will be updated automatically.
Congratulations, you have installed the 1C thin client on your computer, now you need to set the address of the location of your database on the 1C server and set the launch settings.
6. Open your database in a browser, to which you want to configure access through the 1C thin client (as you usually work in the service).
7. Copy the URL from your browser's address bar to your clipboard. You will need it when setting up a connection to the application from the thin client (Fig. 5).
Attention! You must use the part of the address without the ending /ru_RU.
For example, for the case shown in the figure, you should copy the following fragment of the address to the buffer: https://1cfresh.com/a/ea/123456.
8. Launch the 1C:Enterprise program from a shortcut on your desktop.
9. In the window that opens " Launch 1C:Enterprise" click the "Add" button (Fig. 6).
10. Select " Adding an existing infobase to the list" (Fig. 7).
11. In the window that opens (Fig. 8), in the infobase name field, enter the name of your database (you can use the same name as in the service) and specify the option for connecting to the infobase " On the web server" and click the "Next" button.
12. In the infobase address line field, paste from the clipboard the infobase URL line that you copied from the browser address bar (Fig. 9), without the ending /ru.
Specify the proxy usage option "Use automatic proxy detection".
If there is only one user working on your computer, you can specify the web server user authentication method as “Select automatically” (so you don’t have to enter your login and password every time).
13. In the next step, leave the settings for certificate verification settings at “default” (Fig. 10).
14. You can select “Select automatically” for the user authentication option (Fig. 11), and select “Thin Client” as the main launch mode.
As you probably noticed, user authentication is carried out in two stages - in the first step, the user is authenticated to access the server, and in the second stage, the user's rights to access each individual database are checked.
15. Launch the program; to do this, in the “Launch 1C:Enterprise” window, select the added infobase in the list and click the “1C:Enterprise” button (Fig. 12).
16. In the authentication dialog box that appears, enter the login and password that you use to access your applications in the service (Fig. 13).
After this, your database will be loaded into the 1C:Enterprise thin client and your data will be opened in it, which you previously worked with in the service through a browser (Fig. 14).
You can continue to work in the program exactly as before. Appearance and the functioning of the program are identical.
Possible problems
If, when installing a 1C thin client, a message appears:
"OpenID user authentication error (Thin Client)"
To resolve this issue, you need to click the “Change” button in the initial database selection window and set the command “/oida-” in the additional launch parameters
Application
1C thin client distributions for Windows for working with information databases in the 1CFresh.com cloud service (32 bit for versions other than XP and Vista):
Name | Release |
---|---|
Thin client 1C:Enterprise | 8.3.13.1453 |
Thin client 1C:Enterprise | 8.3.13.1437 |
Thin client 1C:Enterprise | 8.3.10.2820 |
Thin client 1C:Enterprise | 8.3.10.2796 |
Thin client 1C:Enterprise | 8.3.10.2795 |
Thin client 1C:Enterprise | 8.3.10.2789 |
Thin client 1C:Enterprise | 8.3.10.2779 |
Thin client 1C:Enterprise | 8.3.10.2770 |
Thin client 1C:Enterprise | 8.3.10.2759 |
Thin client 1C:Enterprise | 8.3.10.2744 |
Thin client 1C:Enterprise | 8.3.10.2712 |
Thin client 1C:Enterprise | 8.3.10.2698 |
Thin client 1C:Enterprise | 8.3.10.2679 |
Thin client 1C:Enterprise | 8.3.10.2637 |
Thin client 1C:Enterprise | 8.3.10.2624 |
Thin client 1C:Enterprise | 8.3.10.2609 |
Thin client 1C:Enterprise | 8.3.10.2417 |
Thin client 1C:Enterprise | 8.3.10.2374 |
How to download, install and configure a 1C thin client for working with databases in cloud mode on a 1C server, 1cfresh client, 1C 8.3 Thin client, 1C thin client for cloud service 1C Fresh, How to download the 1C thin client, 1C Enterprise 8 Thin client, 1C thin client for online work, How to install the 1C Enterprise 8.3 thin client, 1C 8.2 thin client, 1C Online thin client, How to download the 1C Enterprise 8.3 thin client, What is a 1C thin client, 1C thin client what is it, 1C thin client download, How to configure a 1C Enterprise 8.3 thin client, 1C Enterprise Thin client, How to configure a 1C 8.3 thin client, How to download a 1C 8.3 thin client for free, 1C thin client download for free , installing a 1C thin client, 1c setting up a thin client, How to set up a 1c thin client to work with a 1c database via the internet, 1c 8 thin client, 1c thin client installation, 1c thin client 8.3 download, 1c thin client update, launching 1c thin client , 1c, what is the difference between a thin client and a thick client, How to install a 1c thin client to work with online accounting, 1c accounting thin client, setting up a thin client 1c 8.3, 1c enterprise 8.2 thin client, installing a thin client 1c 8.3, 1c automatic update thin client, thin client application 1C, 1C thin client mode, working in 1C Accounting in thin client mode, updating thin client 1C 8.3, 1C Enterprise 8.3 thin client, 1C Thin client for working in the 1C cloud, thin client 1C 8.2 download, How configure 1C Thin client to work in cloud mode, 1C Enterprise thin client download, 1C Enterprise 8 thin client, Install 1C thin client file version, Download the 1C thin client for free, automatically update the 1C 8.3 thin client, 1C thin client via the Internet, 1C thin client to work with 1C via the Internet, Set up the 1C 8.3 thin client to work with cloud accounting, update the 1C thin client, the difference between the thick one and thin client 1C, 1C 8.2 thin client setup, Set up the path to the database 1C thin client 1C 8.2, Where to download 1C thin client for working in the 1C cloud, 1C thin client 8.3 torrent download, Free download thin client 1C Enterprise 8.3, 1C Enterprise 8.2 thin client download, how to install and configure 1C thin client to work in the 1C Fresh service, 1C 8.2 thin client URL setup, How to configure 1C 8 thin client, What does 1C thin client mean, thin client 8, how to install thin client 8.3, thin client 8.3, thin and thick client, How to configure 1C 8.3 thin client to work with a database in the cloud on a 1C server, setting up a thin client, buy a thin client, differences between 1C thick and thin clients, download thin client, 1C thin client for windows, Download 1C thin client for linux, How to configure a 1C 8.2 database in thin client mode, connecting a 1C thin client, 1C thin client rdp, thin client price, 1C Enterprise thin client what is it? Install a 1C thin client on your computer, install a 1C thin client on local computer, 1C thin client 8.3 free download, Set up 1C Enterprise 8 thin client to work with databases given in the 1cfresh service, 1C Enterprise thin client 8.3, install 1C thin client for free, Instructions for setting up a 1C thin client, 1C thin client printing setup, 1C thin system client, 1C thin terminal client, launching the 1C thin client, 1C server for working with the database in thin client mode, checking the 1C thin client, Setting up the 1C 8 thin client address, 1C thin client application, configure the 1C thin client mode, install the thin client 1C Enterprise 8, 1C thin client installation and configuration, selecting 1C thin client mode, Configure 1C thin client to work with online accounting, 1C thin client for windows 7, 1C thin client distribution, How to install 1C thin client to work in service mode, 1C thin client for working with 1C web, 1C Enterprise thin client mode, How to set up a 1C thin client for working with cloud accounting, Instructions for setting up 1C thin client mode for working with 1C cloud, 1C thin client, 1C thin client 8.3 free download , 1C thin client update, choose a 1C thin client, How to install a 1C thin client for working in the cloud, 1C fresh client, 1C cloud client, 1C client for a cloud service, client for a 1C Accounting cloud service, 1C cloud client for working online via the Internet, cloud 1C software for accounting
Users of the service can work with applications not only in a web browser, but also in the 1C:Enterprise thin client.
This article will show you how to install and use a thin client on a computer running operating system Windows.
First you need to determine which version of the thin client you need.
Download the required version of the thin client. Here are links to download thin client installation programs for those used in the service website versions of the 1C:Enterprise 8 platform and various versions of Windows:
A 64-bit thin client should only be installed if recommended by your service organization or service support line.
If the Internet browser does not ask where to place the downloaded file, the file will be saved in the folder designated in the default browser settings. Typically this folder is called Downloads or Downloads.
Automatic updating of the thin client under Windows XP and Windows Vista does not work. So you will have to install new version thin client every time the version of the 1C:Enterprise platform is updated in the service. This is not very convenient and we recommend that you consider upgrading to a more modern operating system.
Install the thin client using the downloaded installation file:
For ease of working with the 1C:Enterprise 8 thin client, it is recommended to enable the list display mode information bases in the form of a tree (you only need to do this once):
After this, the group will be located in the list of thin client infobases website with points.