Using synchronous calls (UsingSynchronousCalls)¶
Type | Scope | Severity | Activated by default |
Minutes to fix |
Tags |
---|---|---|---|---|---|
Code smell |
BSL |
Major |
Yes |
15 |
standard |
Description¶
When developing configurations designed to work in the web client, it is forbidden to use modal forms and dialogs and synchronous calls. Otherwise, the configuration will be inoperative in a number of web browsers, since modal windows are not part of the web development standard, and asynchronous tools are required to ensure user interaction.
Diagnostic restrictions¶
Currently, only the use of global context methods is diagnosed.
Method list:
Russian variant | English variant |
---|---|
ВОПРОС | DOQUERYBOX |
ОТКРЫТЬФОРМУМОДАЛЬНО | OPENFORMMODAL |
ОТКРЫТЬЗНАЧЕНИЕ | OPENVALUE |
ПРЕДУПРЕЖДЕНИЕ | DOMESSAGEBOX |
ВВЕСТИДАТУ | INPUTDATE |
ВВЕСТИЗНАЧЕНИЕ | INPUTVALUE |
ВВЕСТИСТРОКУ | INPUTSTRING |
ВВЕСТИЧИСЛО | INPUTNUMBER |
УСТАНОВИТЬВНЕШНЮЮКОМПОНЕНТУ | INSTALLADDIN |
УСТАНОВИТЬРАСШИРЕНИЕРАБОТЫСФАЙЛАМИ | INSTALLFILESYSTEMEXTENSION |
УСТАНОВИТЬРАСШИРЕНИЕРАБОТЫСКРИПТОГРАФИЕЙ | INSTALLCRYPTOEXTENSION |
ПОДКЛЮЧИТЬРАСШИРЕНИЕРАБОТЫСКРИПТОГРАФИЕЙ | ATTACHCRYPTOEXTENSION |
ПОДКЛЮЧИТЬРАСШИРЕНИЕРАБОТЫСФАЙЛАМИ | ATTACHFILESYSTEMEXTENSION |
ПОМЕСТИТЬФАЙЛ | PUTFILE |
КОПИРОВАТЬФАЙЛ | FILECOPY |
ПЕРЕМЕСТИТЬФАЙЛ | MOVEFILE |
НАЙТИФАЙЛЫ | FINDFILES |
УДАЛИТЬФАЙЛЫ | DELETEFILES |
СОЗДАТЬКАТАЛОГ | CREATEDIRECTORY |
КАТАЛОГВРЕМЕННЫХФАЙЛОВ | TEMPFILESDIR |
КАТАЛОГДОКУМЕНТОВ | DOCUMENTSDIR |
РАБОЧИЙКАТАЛОГДАННЫХПОЛЬЗОВАТЕЛЯ | USERDATAWORKDIR |
ПОЛУЧИТЬФАЙЛЫ | GETFILES |
ЗАПРОСИТЬРАЗРЕШЕНИЕПОЛЬЗОВАТЕЛЯ | REQUESTUSERPERMISSION |
ЗАПУСТИТЬПРИЛОЖЕНИЕ | RUNAPP |
Sources¶
- Limit on the use of modal windows and synchronous calls (RU)
- Useful information: Refusal to use modal windows (RU)
- Correspondence of synchronous methods to asynchronous analogues (RU)
- Asynchronous calls to extensions and external components (RU)
Snippets¶
Diagnostic ignorance in code¶
// BSLLS:UsingSynchronousCalls-off
// BSLLS:UsingSynchronousCalls-on
Parameter for config¶
"UsingSynchronousCalls": false