mirror of
https://github.com/1C-Company/v8-code-style.git
synced 2025-02-21 07:56:09 +02:00
Merge branch 'master' into edt-2023-1
This commit is contained in:
commit
e466f347e6
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@ -39,7 +39,7 @@ jobs:
|
||||
sudo swapoff -a
|
||||
sudo rm -f /swapfile
|
||||
sudo apt clean
|
||||
docker rmi $(docker image ls -aq)
|
||||
# docker rmi $(docker image ls -aq) || true
|
||||
df -h
|
||||
|
||||
- name: Cache maven repo
|
||||
|
46
CHANGELOG.md
46
CHANGELOG.md
@ -2,16 +2,50 @@
|
||||
|
||||
[TOC text bullet hierarchy]
|
||||
|
||||
## 0.4.0
|
||||
## 0.5.0
|
||||
|
||||
|
||||
### Новые проверки
|
||||
|
||||
|
||||
#### Метаданные
|
||||
|
||||
- Документ не имеет реквизита "Комментарий"
|
||||
- Реквизит "Комментарий" имеет корректный тип
|
||||
- В документе, предполагающем проведение, не установлен флаг "Привилегированный режим при проведении / отмене проведения"
|
||||
|
||||
#### Формы
|
||||
|
||||
|
||||
#### Код модулей
|
||||
|
||||
- В проверку использования нерекомендуемых методов (use-non-recommended-method) добавлен метод ПолучитьФорму(GetForm)
|
||||
|
||||
#### Запросы
|
||||
|
||||
|
||||
#### Права ролей
|
||||
|
||||
|
||||
### Новые быстрые исправления (Quick-fix)
|
||||
|
||||
|
||||
### Исправленные ошибки
|
||||
|
||||
|
||||
## 0.4.0
|
||||
|
||||
- Выпуск бета-версии для 1C:EDT 2022.2
|
||||
|
||||
### Новые проверки
|
||||
|
||||
|
||||
#### Метаданные
|
||||
|
||||
- Превышена максимальная длина ресурса регистра накопления или бухгалтерии (25 знаков)
|
||||
- Для глобальных модулей не следует добавлять постфикс «Клиент»
|
||||
- Проверка наличия префикса расширения в имени объекта расширения.
|
||||
- Общий модуль, для которого установлен признак привилегированный, должен именоваться с постфиксом "ПолныеПрава"
|
||||
|
||||
#### Формы
|
||||
|
||||
@ -20,6 +54,7 @@
|
||||
#### Код модулей
|
||||
|
||||
- Добавление типизированного значения в не типизированную коллекцию
|
||||
- Общий модуль должен иметь программный интерфейс
|
||||
- Кэширование программного интерфейса
|
||||
- Проверка максимального количества допустимых пустых строк
|
||||
- Чтение отдельных реквизитов объекта из базы данных
|
||||
@ -30,15 +65,14 @@
|
||||
- Устаревшая процедура (функция) расположена вне области "УстаревшиеПроцедурыИФункции"
|
||||
- Использован обработчик событий, подключаемый из кода и не содержащий префикса "Подключаемый_"
|
||||
|
||||
#### Запросы
|
||||
|
||||
|
||||
#### Права ролей
|
||||
|
||||
|
||||
### Новые быстрые исправления (Quick-fix)
|
||||
|
||||
- Исправление превышения максимального количества допустимых пустых строк
|
||||
|
||||
#### Автосортировка
|
||||
|
||||
- Добавлена настройка порядка сортировки. Метаданные можно сортировать по правилам конфигуратора
|
||||
|
||||
### Исправленные ошибки
|
||||
|
||||
|
@ -39,6 +39,7 @@
|
||||
|
||||
| Версия | 1C:EDT | JDT для разработки | P2-репозиторий |
|
||||
|--------|--------|--------------------|----------------|
|
||||
| 0.5.0 | 2023.1 | 2022-03 | [p2-link](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2023.1/0.5.0/repo/), [p2-zip](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2023.1/0.5.0/repo.zip) |
|
||||
| 0.4.0 | 2022.2 | 2022-03 | [p2-link](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2022.2/0.4.0/repo/), [p2-zip](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2022.2/0.4.0/repo.zip) |
|
||||
| 0.3.0 | 2022.1 | 2022-03 | [p2-link](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2022.1/0.3.0/repo/), [p2-zip](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2022.1/0.3.0/repo.zip) |
|
||||
| 0.2.0 | 2021.3 | 2020-12 | [p2-link](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2021.3/0.2.0/repo/), [p2-zip](https://edt.1c.ru/downloads/releases/plugins/v8-code-style/edt-2021.3/0.2.0/repo.zip) |
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bom</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<name>BOM</name>
|
||||
@ -104,7 +104,7 @@
|
||||
<artifact>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>default</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</artifact>
|
||||
</target>
|
||||
<environments>
|
||||
|
@ -12,9 +12,9 @@
|
||||
# 1C-Soft LLC - initial API and implementation
|
||||
#*******************************************************************************
|
||||
|
||||
current_version='0.3.0'
|
||||
new_version='0.4.0'
|
||||
next_version='0.5.0'
|
||||
current_version='0.4.0'
|
||||
new_version='0.5.0'
|
||||
next_version='0.6.0'
|
||||
|
||||
find . -name 'pom.xml' -exec sed -i '' "s/${current_version}-SNAPSHOT/${new_version}-SNAPSHOT/g" {} +
|
||||
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.autosort.ui;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.autosort.ui.UiPlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.ui;bundle-version="[3.118.0,4.0.0)",
|
||||
@ -18,6 +18,6 @@ Import-Package: com._1c.g5.v8.dt.common;version="[6.0.0,7.0.0)",
|
||||
com._1c.g5.v8.dt.metadata.mdclass;version="[8.0.0,9.0.0)",
|
||||
com._1c.g5.wiring;version="[2.2.0,3.0.0)",
|
||||
com._1c.g5.wiring.binder;version="[1.1.0,2.0.0)",
|
||||
com.e1c.v8codestyle.autosort;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.autosort;version="[0.5.0,0.6.0)",
|
||||
com.google.common.base;version="[30.1.0,31.0.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)"
|
||||
|
@ -19,9 +19,9 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.autosort.ui</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
</project>
|
||||
|
@ -77,6 +77,8 @@ public class AutoSortPropertyPage
|
||||
|
||||
private Button ascendingButton;
|
||||
|
||||
private Button sortOrderButton;
|
||||
|
||||
@Inject
|
||||
public AutoSortPropertyPage(ISortService sortService)
|
||||
{
|
||||
@ -103,6 +105,7 @@ public class AutoSortPropertyPage
|
||||
composite.setLayoutData(data);
|
||||
|
||||
addSortSection(composite);
|
||||
addSortOrderSection(composite);
|
||||
addSeparator(composite);
|
||||
addTopObjectsSection(composite);
|
||||
addSubordinateSection(composite);
|
||||
@ -122,6 +125,7 @@ public class AutoSortPropertyPage
|
||||
{
|
||||
super.performDefaults();
|
||||
ascendingButton.setSelection(AutoSortPreferences.DEFAULT_SORT_ASCENDING);
|
||||
sortOrderButton.setSelection(AutoSortPreferences.DEFAULT_SORT_ORDER);
|
||||
buttons.get(AutoSortPreferences.KEY_ALL_TOP).setSelection(AutoSortPreferences.DEFAULT_SORT);
|
||||
buttons.get(AutoSortPreferences.KEY_SUBORDINATE_OBJECTS).setSelection(AutoSortPreferences.DEFAULT_SORT);
|
||||
buttons.get(AutoSortPreferences.KEY_FORMS).setSelection(AutoSortPreferences.DEFAULT_SORT);
|
||||
@ -150,6 +154,16 @@ public class AutoSortPropertyPage
|
||||
prefs.putBoolean(AutoSortPreferences.KEY_ASCENDING, ascending);
|
||||
}
|
||||
|
||||
boolean sortOrder = sortOrderButton.getSelection();
|
||||
if (sortOrder == AutoSortPreferences.DEFAULT_SORT_ORDER)
|
||||
{
|
||||
prefs.remove(AutoSortPreferences.KEY_SORT_ORDER);
|
||||
}
|
||||
else
|
||||
{
|
||||
prefs.putBoolean(AutoSortPreferences.KEY_SORT_ORDER, sortOrder);
|
||||
}
|
||||
|
||||
updateSortPreferences(prefs, AutoSortPreferences.KEY_ALL_TOP,
|
||||
buttons.get(AutoSortPreferences.KEY_ALL_TOP).getSelection());
|
||||
if (!buttons.get(AutoSortPreferences.KEY_ALL_TOP).getSelection())
|
||||
@ -223,6 +237,8 @@ public class AutoSortPropertyPage
|
||||
{
|
||||
if (ascendingButton.getSelection() != prefs.getBoolean(AutoSortPreferences.KEY_ASCENDING,
|
||||
AutoSortPreferences.DEFAULT_SORT_ASCENDING)
|
||||
|| sortOrderButton.getSelection() != prefs.getBoolean(AutoSortPreferences.KEY_SORT_ORDER,
|
||||
AutoSortPreferences.DEFAULT_SORT_ORDER)
|
||||
|| !prefs.getBoolean(AutoSortPreferences.KEY_ALL_TOP, AutoSortPreferences.DEFAULT_SORT)
|
||||
&& buttons.get(AutoSortPreferences.KEY_ALL_TOP).getSelection()
|
||||
|| !prefs.getBoolean(AutoSortPreferences.KEY_SUBORDINATE_OBJECTS, AutoSortPreferences.DEFAULT_SORT)
|
||||
@ -303,6 +319,21 @@ public class AutoSortPropertyPage
|
||||
descendingButton.setSelection(!ascending);
|
||||
}
|
||||
|
||||
private void addSortOrderSection(Composite parent)
|
||||
{
|
||||
Group sortGroup = new Group(parent, SWT.NONE);
|
||||
sortGroup.setLayout(new RowLayout(SWT.HORIZONTAL));
|
||||
toolkit.createLabel(sortGroup, Messages.AutoSortPropertyPage_Sort_order);
|
||||
sortOrderButton = toolkit.createButton(sortGroup, Messages.AutoSortPropertyPage_Sort_order_natural, SWT.RADIO);
|
||||
final Button asDesignerSortOrderButton =
|
||||
toolkit.createButton(sortGroup, Messages.AutoSortPropertyPage_Sort_order_as_designer, SWT.RADIO);
|
||||
asDesignerSortOrderButton.setSelection(true);
|
||||
boolean naturalSortOrder =
|
||||
prefs.getBoolean(AutoSortPreferences.KEY_SORT_ORDER, AutoSortPreferences.DEFAULT_SORT_ORDER);
|
||||
sortOrderButton.setSelection(naturalSortOrder);
|
||||
asDesignerSortOrderButton.setSelection(!naturalSortOrder);
|
||||
}
|
||||
|
||||
private void addSeparator(Composite parent)
|
||||
{
|
||||
Label separator = new Label(parent, SWT.SEPARATOR | SWT.HORIZONTAL);
|
||||
|
@ -38,6 +38,9 @@ final class Messages
|
||||
public static String AutoSortPropertyPage_Select_top_objects;
|
||||
public static String AutoSortPropertyPage_Select_top_objects_description;
|
||||
public static String AutoSortPropertyPage_Sort_direction;
|
||||
public static String AutoSortPropertyPage_Sort_order;
|
||||
public static String AutoSortPropertyPage_Sort_order_as_designer;
|
||||
public static String AutoSortPropertyPage_Sort_order_natural;
|
||||
public static String AutoSortPropertyPage_Sort_question;
|
||||
public static String AutoSortPropertyPage_Sort_question_title;
|
||||
public static String AutoSortPropertyPage_Tabular_sections_of_object;
|
||||
|
@ -26,6 +26,9 @@ AutoSortPropertyPage_Select_subordinate_objects_description=Select subordinate M
|
||||
AutoSortPropertyPage_Select_top_objects=Select top objects
|
||||
AutoSortPropertyPage_Select_top_objects_description=Select top Metadata objects to sort them automatically on edit. Common attributes and command groups should not sort automacitally on edit.
|
||||
AutoSortPropertyPage_Sort_direction=Sort direction:
|
||||
AutoSortPropertyPage_Sort_order=Sort order:
|
||||
AutoSortPropertyPage_Sort_order_as_designer=As designer
|
||||
AutoSortPropertyPage_Sort_order_natural=Natural
|
||||
AutoSortPropertyPage_Sort_question=Sort settings has changed. Sort all objects?
|
||||
AutoSortPropertyPage_Sort_question_title=Settings has changed
|
||||
AutoSortPropertyPage_Tabular_sections_of_object=Tabular sections of object
|
||||
|
@ -45,6 +45,12 @@ AutoSortPropertyPage_Select_top_objects_description = Выберите верх
|
||||
|
||||
AutoSortPropertyPage_Sort_direction = Направление сортировки:
|
||||
|
||||
AutoSortPropertyPage_Sort_order = Порядок сортировки:
|
||||
|
||||
AutoSortPropertyPage_Sort_order_as_designer = Как в конфигураторе
|
||||
|
||||
AutoSortPropertyPage_Sort_order_natural = Стандартный
|
||||
|
||||
AutoSortPropertyPage_Sort_question = Настройки сортировки изменились. Сортировать все объекты?
|
||||
|
||||
AutoSortPropertyPage_Sort_question_title = Настройки изменились
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.autosort;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.autosort.AutoSortPlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.13.0,4.0.0)",
|
||||
@ -26,11 +26,11 @@ Import-Package: com._1c.g5.v8.bm.common.collections;version="[3.0.0,4.0.0)",
|
||||
com._1c.g5.v8.dt.core.platform;version="[10.0.0,11.0.0)",
|
||||
com._1c.g5.v8.dt.lifecycle;version="[3.0.0,4.0.0)",
|
||||
com._1c.g5.v8.dt.metadata.mdclass;version="[8.0.0,9.0.0)",
|
||||
com.e1c.v8codestyle;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle;version="[0.5.0,0.6.0)",
|
||||
com.google.common.base;version="[30.1.0,31.0.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)",
|
||||
com.google.inject.binder;version="[5.0.1,6.0.0)"
|
||||
Export-Package: com.e1c.v8codestyle.autosort;version="0.4.0";
|
||||
Export-Package: com.e1c.v8codestyle.autosort;version="0.5.0";
|
||||
uses:="org.eclipse.emf.ecore,
|
||||
org.eclipse.core.runtime,
|
||||
org.eclipse.emf.common.util,
|
||||
|
@ -19,9 +19,9 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.autosort</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
</project>
|
||||
|
@ -45,6 +45,8 @@ public final class AutoSortPreferences
|
||||
|
||||
public static final String KEY_ASCENDING = "sortAscending"; //$NON-NLS-1$
|
||||
|
||||
public static final String KEY_SORT_ORDER = "naturalSortOrder"; //$NON-NLS-1$
|
||||
|
||||
public static final String KEY_ALL_TOP = "topObjects"; //$NON-NLS-1$
|
||||
|
||||
public static final String KEY_TOP_NODE = "top"; //$NON-NLS-1$
|
||||
@ -75,6 +77,7 @@ public final class AutoSortPreferences
|
||||
|
||||
public static final boolean DEFAULT_SORT = false;
|
||||
|
||||
public static final boolean DEFAULT_SORT_ORDER = true;
|
||||
/**
|
||||
* Checks if the sort direction is ascending in the project.
|
||||
*
|
||||
@ -87,6 +90,17 @@ public final class AutoSortPreferences
|
||||
return rootNode.getBoolean(KEY_ASCENDING, DEFAULT_SORT_ASCENDING);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the sort order natural or as designer in the project.
|
||||
*
|
||||
* @param project the project to check, cannot be {@code null}.
|
||||
* @return true, if the sort order is natural, or return true as default if not set for project.
|
||||
*/
|
||||
public static boolean isNaturalSortOrder(IProject project)
|
||||
{
|
||||
IEclipsePreferences rootNode = getPreferences(project);
|
||||
return rootNode.getBoolean(KEY_SORT_ORDER, DEFAULT_SORT_ORDER);
|
||||
}
|
||||
/**
|
||||
* Checks if need to sort all top object.
|
||||
*
|
||||
|
@ -27,17 +27,22 @@ import com.google.common.base.Strings;
|
||||
public class MdObjectByNameComparator
|
||||
implements Comparator<EObject>
|
||||
{
|
||||
private static final char LESS_THAN_DIGITS = '!';
|
||||
|
||||
private final boolean ascending;
|
||||
|
||||
private final boolean naturalSortOrder;
|
||||
|
||||
/**
|
||||
* Instantiates a new metadata object comparator by name.
|
||||
*
|
||||
* @param ascending the ascending
|
||||
* @param naturalSortOrder the sort order
|
||||
*/
|
||||
public MdObjectByNameComparator(boolean ascending)
|
||||
public MdObjectByNameComparator(boolean ascending, boolean naturalSortOrder)
|
||||
{
|
||||
this.ascending = ascending;
|
||||
this.naturalSortOrder = naturalSortOrder;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -47,10 +52,45 @@ public class MdObjectByNameComparator
|
||||
{
|
||||
String firstName = Strings.nullToEmpty(((MdObject)first).getName());
|
||||
String secondName = Strings.nullToEmpty(((MdObject)second).getName());
|
||||
return this.ascending ? firstName.compareToIgnoreCase(secondName)
|
||||
: secondName.compareToIgnoreCase(firstName);
|
||||
return this.ascending ? compareMdObjectNamesWithIgnoreCase(firstName, secondName, this.naturalSortOrder)
|
||||
: compareMdObjectNamesWithIgnoreCase(secondName, firstName, this.naturalSortOrder);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
private int compareMdObjectNamesWithIgnoreCase(String s1, String s2, boolean naturalSortOrder)
|
||||
{
|
||||
int n1 = s1.length();
|
||||
int n2 = s2.length();
|
||||
int min = Math.min(n1, n2);
|
||||
|
||||
for (int i = 0; i < min; i++)
|
||||
{
|
||||
char c1 = s1.charAt(i);
|
||||
char c2 = s2.charAt(i);
|
||||
if (c1 != c2)
|
||||
{
|
||||
c1 = Character.toUpperCase(c1);
|
||||
c2 = Character.toUpperCase(c2);
|
||||
if (c1 != c2)
|
||||
{
|
||||
c1 = Character.toLowerCase(c1);
|
||||
c2 = Character.toLowerCase(c2);
|
||||
if (c1 != c2)
|
||||
{
|
||||
if (!naturalSortOrder)
|
||||
{
|
||||
// Symbol "low line" must be less than digits
|
||||
c1 = c1 == '_' ? LESS_THAN_DIGITS : c1;
|
||||
c2 = c2 == '_' ? LESS_THAN_DIGITS : c2;
|
||||
}
|
||||
// No overflow because of numeric promotion
|
||||
return c1 - c2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return n1 - n2;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -271,11 +271,13 @@ public class SortService
|
||||
final Comparator<EObject> sorter;
|
||||
if (project == null)
|
||||
{
|
||||
sorter = new MdObjectByNameComparator(AutoSortPreferences.DEFAULT_SORT_ASCENDING);
|
||||
sorter = new MdObjectByNameComparator(AutoSortPreferences.DEFAULT_SORT_ASCENDING,
|
||||
AutoSortPreferences.DEFAULT_SORT_ORDER);
|
||||
}
|
||||
else
|
||||
{
|
||||
sorter = new MdObjectByNameComparator(AutoSortPreferences.isSortAscending(project));
|
||||
sorter = new MdObjectByNameComparator(AutoSortPreferences.isSortAscending(project),
|
||||
AutoSortPreferences.isNaturalSortOrder(project));
|
||||
}
|
||||
return sorter;
|
||||
}
|
||||
@ -383,7 +385,8 @@ public class SortService
|
||||
{
|
||||
List<SortItem> items = new ArrayList<>();
|
||||
|
||||
Comparator<EObject> sorter = new MdObjectByNameComparator(AutoSortPreferences.isSortAscending(project));
|
||||
Comparator<EObject> sorter = new MdObjectByNameComparator(AutoSortPreferences.isSortAscending(project),
|
||||
AutoSortPreferences.isNaturalSortOrder(project));
|
||||
|
||||
for (Entry<String, Set<EReference>> entry : changedItems.entrySet())
|
||||
{
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.bsl.ui;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.bsl.ui.UiPlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.ui;bundle-version="[3.119.0,4.0.0)",
|
||||
@ -50,5 +50,5 @@ Import-Package: com._1c.g5.ides.ui.texteditor.xtext.embedded;version="[5.0.0,6.0
|
||||
com.e1c.g5.v8.dt.check.qfix;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.qfix.components;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.settings;version="[3.0.0,4.0.0)",
|
||||
com.e1c.v8codestyle.bsl;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.bsl.strict;version="[0.4.0,0.5.0)"
|
||||
com.e1c.v8codestyle.bsl;version="[0.5.0,0.6.0)",
|
||||
com.e1c.v8codestyle.bsl.strict;version="[0.5.0,0.6.0)"
|
||||
|
@ -19,9 +19,9 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.bsl.ui</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
</project>
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.bsl;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.bsl.BslPlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Bundle-Localization: plugin
|
||||
@ -49,7 +49,7 @@ Import-Package: com._1c.g5.v8.bm.core;version="[7.0.0,8.0.0)",
|
||||
com.e1c.g5.v8.dt.check.qfix;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.qfix.components;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.settings;version="[3.0.0,4.0.0)",
|
||||
com.e1c.v8codestyle;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.4.0,0.5.0)"
|
||||
Export-Package: com.e1c.v8codestyle.bsl;version="0.4.0",
|
||||
com.e1c.v8codestyle.bsl.strict;version="0.4.0"
|
||||
com.e1c.v8codestyle;version="[0.5.0,0.6.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.5.0,0.6.0)"
|
||||
Export-Package: com.e1c.v8codestyle.bsl;version="0.5.0",
|
||||
com.e1c.v8codestyle.bsl.strict;version="0.5.0"
|
||||
|
@ -0,0 +1,32 @@
|
||||
# The common module must have at least one export method
|
||||
|
||||
The common module must have at least one export method.
|
||||
|
||||
## Noncompliant Code Example
|
||||
|
||||
```bsl
|
||||
|
||||
Procedure Test()
|
||||
//TODO
|
||||
EndProcedure
|
||||
|
||||
```
|
||||
|
||||
## Compliant Solution
|
||||
|
||||
```bsl
|
||||
|
||||
#Region Internal
|
||||
|
||||
Procedure Test() Export
|
||||
//TODO
|
||||
EndProcedure
|
||||
|
||||
#EndRegion
|
||||
|
||||
```
|
||||
|
||||
## See
|
||||
|
||||
- [Module structure](https://1c-dn.com/library/module_structure/)
|
||||
- [Module structure](https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_Development_Standards/Code_conventions/Module_formatting/Module_structure/)
|
@ -0,0 +1,31 @@
|
||||
# Общий модуль должен иметь хотя бы один экспортный метод
|
||||
|
||||
Общий модуль должен иметь программный интерфейс.
|
||||
|
||||
## Неправильно
|
||||
|
||||
```bsl
|
||||
|
||||
Процедура Тест()
|
||||
//TODO
|
||||
КонецПроцедуры
|
||||
|
||||
```
|
||||
|
||||
## Правильно
|
||||
|
||||
```bsl
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
Процедура Тест() Экспорт
|
||||
//TODO
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
```
|
||||
|
||||
## См.
|
||||
|
||||
- [Структура модуля](https://its.1c.ru/db/v8std/content/455/hdoc)
|
@ -8,6 +8,8 @@
|
||||
Сообщить("Текст сообщения");
|
||||
|
||||
Дата = ТекущаяДата();
|
||||
|
||||
ОбщаяФорма1 = ПолучитьФорму("ОбщаяФорма.ОбщаяФорма1");
|
||||
```
|
||||
|
||||
## Правильно
|
||||
@ -18,9 +20,12 @@
|
||||
Сообщение.Сообщить();
|
||||
|
||||
Дата = ТекущаяДатаСеанса();
|
||||
|
||||
ОткрытьФорму("ОбщаяФорма.ОбщаяФорма1);
|
||||
```
|
||||
|
||||
## См.
|
||||
|
||||
- [Ограничение на использование метода Сообщить](https://its.1c.ru/db/v8std#content:418:hdoc)
|
||||
- [Работа в разных часовых поясах](https://its.1c.ru/db/v8std#content:643:hdoc:2.1)
|
||||
- [Открытие форм](https://its.1c.ru/db/v8std#content:404:hdoc:1)
|
@ -8,6 +8,8 @@ There are not recommended methods, instead of which either SSL methods or other
|
||||
Message("Text");
|
||||
|
||||
Date = CurrentDate();
|
||||
|
||||
CommonForm1 = GetForm("CommonForm.CommonForm1");
|
||||
```
|
||||
|
||||
## Compliant Solution
|
||||
@ -18,9 +20,12 @@ Message.Text = ("Text");
|
||||
Message.Message();
|
||||
|
||||
Date = CurrentSessionDate();
|
||||
|
||||
OpenForm("CommonForm.CommonForm1");
|
||||
```
|
||||
|
||||
## See
|
||||
|
||||
- [Restriction on the use of the Message method](https://its.1c.ru/db/v8std#content:418:hdoc)
|
||||
- [Working in different time zones](https://its.1c.ru/db/v8std#content:643:hdoc:2.1)
|
||||
- [Opening forms](https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_Development_Standards/Designing_user_interfaces/Implementation_of_form/Opening_forms/?language=en)
|
@ -311,6 +311,10 @@
|
||||
category="com.e1c.v8codestyle.bsl"
|
||||
class="com.e1c.v8codestyle.internal.bsl.ExecutableExtensionFactory:com.e1c.v8codestyle.bsl.check.ModuleStructureVariablesInRegionCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.bsl"
|
||||
class="com.e1c.v8codestyle.bsl.check.CommonModuleMissingApiCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.bsl"
|
||||
class="com.e1c.v8codestyle.internal.bsl.ExecutableExtensionFactory:com.e1c.v8codestyle.bsl.check.PublicMethodCachingCheck">
|
||||
|
@ -19,10 +19,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.bsl</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
<properties>
|
||||
|
@ -0,0 +1,85 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2023, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
*******************************************************************************/
|
||||
package com.e1c.v8codestyle.bsl.check;
|
||||
|
||||
import static com._1c.g5.v8.dt.bsl.model.BslPackage.Literals.MODULE;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
import org.eclipse.emf.common.util.EList;
|
||||
|
||||
import com._1c.g5.v8.dt.bsl.model.Method;
|
||||
import com._1c.g5.v8.dt.bsl.model.Module;
|
||||
import com._1c.g5.v8.dt.bsl.model.ModuleType;
|
||||
import com._1c.g5.v8.dt.mcore.McorePackage;
|
||||
import com.e1c.g5.v8.dt.check.CheckComplexity;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.BasicCheck;
|
||||
import com.e1c.g5.v8.dt.check.components.ModuleTopObjectNameFilterExtension;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueSeverity;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueType;
|
||||
import com.e1c.v8codestyle.check.StandardCheckExtension;
|
||||
import com.e1c.v8codestyle.internal.bsl.BslPlugin;
|
||||
|
||||
/**
|
||||
* Checks common module contains programming interface
|
||||
*
|
||||
* @author Artem Iliukhin
|
||||
*/
|
||||
public class CommonModuleMissingApiCheck
|
||||
extends BasicCheck
|
||||
{
|
||||
|
||||
private static final String CHECK_ID = "common-module-missing-api"; //$NON-NLS-1$
|
||||
|
||||
@Override
|
||||
public String getCheckId()
|
||||
{
|
||||
return CHECK_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
builder.title(Messages.CommonModuleMissingApiCheck_Title)
|
||||
.description(Messages.CommonModuleMissingApiCheck_Description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.MINOR)
|
||||
.issueType(IssueType.CODE_STYLE)
|
||||
.extension(new ModuleTopObjectNameFilterExtension())
|
||||
.extension(new StandardCheckExtension(455, getCheckId(), BslPlugin.PLUGIN_ID))
|
||||
.extension(ModuleTypeFilter.onlyTypes(ModuleType.COMMON_MODULE))
|
||||
.extension(new SkipAdoptedInExtensionModuleOwnerExtension())
|
||||
.module()
|
||||
.checkedObjectType(MODULE);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void check(Object object, ResultAcceptor result, ICheckParameters parameters, IProgressMonitor monitor)
|
||||
{
|
||||
Module module = (Module)object;
|
||||
EList<Method> allMethods = module.allMethods();
|
||||
for (Method method : allMethods)
|
||||
{
|
||||
if (monitor.isCanceled() || method.isExport())
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (!allMethods.isEmpty())
|
||||
{
|
||||
result.addIssue(Messages.CommonModuleMissingApiCheck_Issue, allMethods.get(0),
|
||||
McorePackage.Literals.NAMED_ELEMENT__NAME);
|
||||
}
|
||||
}
|
||||
}
|
@ -89,6 +89,12 @@ final class Messages
|
||||
|
||||
public static String BeginTransactionCheck_Try_was_not_found_after_calling_begin;
|
||||
|
||||
public static String CommonModuleMissingApiCheck_Description;
|
||||
|
||||
public static String CommonModuleMissingApiCheck_Issue;
|
||||
|
||||
public static String CommonModuleMissingApiCheck_Title;
|
||||
|
||||
public static String CommonModuleNamedSelfReferenceCheck_description;
|
||||
|
||||
public static String CommonModuleNamedSelfReferenceCheck_issue;
|
||||
|
@ -0,0 +1,64 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2022, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
*******************************************************************************/
|
||||
package com.e1c.v8codestyle.bsl.check;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
import org.eclipse.emf.ecore.EObject;
|
||||
import org.eclipse.emf.ecore.util.EcoreUtil;
|
||||
import org.eclipse.xtext.EcoreUtil2;
|
||||
|
||||
import com._1c.g5.v8.dt.bsl.model.Module;
|
||||
import com._1c.g5.v8.dt.form.model.Form;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.MdObject;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.ObjectBelonging;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.IBasicCheckExtension;
|
||||
|
||||
/**
|
||||
* The extension skips module owner that adopted in Extension Configuration.
|
||||
*
|
||||
* @author Artem Iliukhin
|
||||
*/
|
||||
public class SkipAdoptedInExtensionModuleOwnerExtension
|
||||
implements IBasicCheckExtension
|
||||
{
|
||||
@Override
|
||||
public boolean preCheck(Object object, ICheckParameters parameters, IProgressMonitor progressMonitor)
|
||||
{
|
||||
Module module = EcoreUtil2.getContainerOfType((EObject)object, Module.class);
|
||||
return !isParentAdopted(module);
|
||||
}
|
||||
|
||||
private boolean isParentAdopted(Module module)
|
||||
{
|
||||
EObject owner = module.getOwner();
|
||||
if (owner == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
if (owner.eIsProxy())
|
||||
{
|
||||
owner = EcoreUtil.resolve(owner, module);
|
||||
}
|
||||
if (!owner.eIsProxy())
|
||||
{
|
||||
if (owner instanceof Form)
|
||||
{
|
||||
owner = ((Form)owner).getMdForm();
|
||||
}
|
||||
return owner instanceof MdObject && ((MdObject)owner).getObjectBelonging() == ObjectBelonging.ADOPTED;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
@ -51,7 +51,9 @@ public class UseNonRecommendedMethodCheck
|
||||
private static final Set<String> NON_RECOMENDED_METHODS_LIST = Set.of("CurrentDate", //$NON-NLS-1$
|
||||
"ТекущаяДата", //$NON-NLS-1$
|
||||
"Message", //$NON-NLS-1$
|
||||
"Сообщить"); //$NON-NLS-1$
|
||||
"Сообщить", //$NON-NLS-1$
|
||||
"ПолучитьФорму", //$NON-NLS-1$
|
||||
"GetForm"); //$NON-NLS-1$
|
||||
|
||||
private static final String DELIMITER = ","; //$NON-NLS-1$
|
||||
|
||||
|
@ -28,12 +28,6 @@ AccessibilityAtClientInObjectModuleCheck_description = Method or variable access
|
||||
|
||||
AccessibilityAtClientInObjectModuleCheck_title = Method or variable accessible AtClient
|
||||
|
||||
CachedPublicCheck_Description=Cached public method
|
||||
|
||||
CachedPublicCheck_Issue=Not recommended to use cached public method
|
||||
|
||||
CachedPublicCheck_Title=Cached public method
|
||||
|
||||
AttachableEventHandlerNameCheck_Description = Programmatically added event handler name should match pattern
|
||||
|
||||
AttachableEventHandlerNameCheck_Event_handler_name_pattern = Event handler name pattern
|
||||
@ -42,6 +36,20 @@ AttachableEventHandlerNameCheck_Message = Programmatically added event handler n
|
||||
|
||||
AttachableEventHandlerNameCheck_Title = Attachable event handler name
|
||||
|
||||
BeginTransactionCheck_Begin_transaction_is_incorrect = Begin transaction is incorrect
|
||||
|
||||
BeginTransactionCheck_Executable_code_between_begin_transaction_and_try = There should be no executable code between begin transaction and try
|
||||
|
||||
BeginTransactionCheck_Try_must_be_after_begin = Try-catch must be after begin transaction
|
||||
|
||||
BeginTransactionCheck_Try_was_not_found_after_calling_begin = The try operator was not found after calling begin transaction
|
||||
|
||||
CachedPublicCheck_Description = Cached public method
|
||||
|
||||
CachedPublicCheck_Issue = Not recommended to use cached public method
|
||||
|
||||
CachedPublicCheck_Title = Cached public method
|
||||
|
||||
CanonicalPragmaCheck_Pragma_0_is_not_written_canonically_correct_spelling_is_1 = Annotation {0} is not written canonically, correct spelling is {1}
|
||||
|
||||
CanonicalPragmaCheck_description = Check pragma is written canonically
|
||||
@ -54,53 +62,45 @@ ChangeAndValidateInsteadOfAroundCheck_description = Checks that pragma &ChangeAn
|
||||
|
||||
ChangeAndValidateInsteadOfAroundCheck_title = Use pragma &ChangeAndValidate instead of &Around
|
||||
|
||||
CommitTransactionCheck_Commit_transaction_must_be_in_try_catch=Commit transaction must be in a try-catch
|
||||
CommitTransactionCheck_Commit_transaction_must_be_in_try_catch = Commit transaction must be in a try-catch
|
||||
|
||||
CommitTransactionCheck_No_begin_transaction_for_commit_transaction=There is no begin transaction for commit transaction
|
||||
CommitTransactionCheck_No_begin_transaction_for_commit_transaction = There is no begin transaction for commit transaction
|
||||
|
||||
RollbackTransactionCheck_No_begin_transaction_for_rollback_transaction=There is no begin transaction for rollback transaction
|
||||
CommitTransactionCheck_No_rollback_transaction_for_begin_transaction = There is no rollback transaction for begin transaction
|
||||
|
||||
RollbackTransactionCheck_No_commit_transaction_for_begin_transaction=There is no commit transaction for begin transaction
|
||||
CommitTransactionCheck_Should_be_no_executable_code_between_commit_and_exception = There should be no executable code between commit transaction and exception
|
||||
|
||||
CommitTransactionCheck_No_rollback_transaction_for_begin_transaction=There is no rollback transaction for begin transaction
|
||||
CommitTransactionCheck_Transaction_contains_empty_except = The transaction contains an empty exception block
|
||||
|
||||
CommitTransactionCheck_Should_be_no_executable_code_between_commit_and_exception=There should be no executable code between commit transaction and exception
|
||||
CommitTransactionCheck_Transactions_is_broken = Commit transaction is incorrect
|
||||
|
||||
RollbackTransactionCheck_Should_be_no_executable_code_between_exception_and_rollback=There should be no executable code between exception and rollback transaction
|
||||
CommitTransactionCheck_Transactions_is_broken_des = Commit transaction must be in a try-catch, there should be no executable code between commit transaction and exception, there is no begin transaction for commit transaction, there is no rollback transaction for begin transaction.
|
||||
|
||||
BeginTransactionCheck_Executable_code_between_begin_transaction_and_try=There should be no executable code between begin transaction and try
|
||||
CommonModuleMissingApiCheck_Description = Programming interface
|
||||
|
||||
CommitTransactionCheck_Transaction_contains_empty_except=The transaction contains an empty exception block
|
||||
CommonModuleMissingApiCheck_Issue = Common module does not contain a programming interface
|
||||
|
||||
CommitTransactionCheck_Transactions_is_broken=Commit transaction is incorrect
|
||||
CommonModuleMissingApiCheck_Title = Programming interface
|
||||
|
||||
CommitTransactionCheck_Transactions_is_broken_des=Commit transaction must be in a try-catch, there should be no executable code between commit transaction and exception, there is no begin transaction for commit transaction, there is no rollback transaction for begin transaction.
|
||||
CommonModuleNamedSelfReferenceCheck_description = Excessive named self reference
|
||||
|
||||
BeginTransactionCheck_Begin_transaction_is_incorrect=Begin transaction is incorrect
|
||||
CommonModuleNamedSelfReferenceCheck_issue = Excessive named self reference
|
||||
|
||||
BeginTransactionCheck_Try_must_be_after_begin=Try-catch must be after begin transaction
|
||||
CommonModuleNamedSelfReferenceCheck_title = Excessive named self reference in common module
|
||||
|
||||
BeginTransactionCheck_Try_was_not_found_after_calling_begin=The try operator was not found after calling begin transaction
|
||||
ConsecutiveEmptyLines_Description = Consecutive empty lines
|
||||
|
||||
CommonModuleNamedSelfReferenceCheck_description=Excessive named self reference
|
||||
ConsecutiveEmptyLines_Parameter_title = Maximum number of empty lines
|
||||
|
||||
CommonModuleNamedSelfReferenceCheck_issue=Excessive named self reference
|
||||
ConsecutiveEmptyLines_Sequence_of_empty_lines_between__0__and__1__is_greator_than__2 = The sequence of empty lines between lines {0} and {1} is more than {2}
|
||||
|
||||
CommonModuleNamedSelfReferenceCheck_title=Excessive named self reference in common module
|
||||
ConsecutiveEmptyLines_Title = Consecutive empty lines
|
||||
|
||||
ConsecutiveEmptyLines_Description=Consecutive empty lines
|
||||
DeprecatedProcedureOutsideDeprecatedRegionCheck_Deprecated_function_out_of_deprecated_area = The deprecated procedure (function) "{0}" should be placed in the Deprecated region of the Public region in a common module area
|
||||
|
||||
ConsecutiveEmptyLines_Parameter_title=Maximum number of empty lines
|
||||
DeprecatedProcedureOutsideDeprecatedRegionCheck_description = Deprecated procedure (function) should be placed in the Deprecated region of the Public region in a common module area
|
||||
|
||||
ConsecutiveEmptyLines_Sequence_of_empty_lines_between__0__and__1__is_greator_than__2=The sequence of empty lines between lines {0} and {1} is more than {2}
|
||||
|
||||
ConsecutiveEmptyLines_Title=Consecutive empty lines
|
||||
|
||||
DeprecatedProcedureOutsideDeprecatedRegionCheck_Deprecated_function_out_of_deprecated_area=The deprecated procedure (function) "{0}" should be placed in the Deprecated region of the Public region in a common module area
|
||||
|
||||
DeprecatedProcedureOutsideDeprecatedRegionCheck_description=Deprecated procedure (function) should be placed in the Deprecated region of the Public region in a common module area
|
||||
|
||||
DeprecatedProcedureOutsideDeprecatedRegionCheck_title=Deprecated procedure (function) is outside deprecated region
|
||||
DeprecatedProcedureOutsideDeprecatedRegionCheck_title = Deprecated procedure (function) is outside deprecated region
|
||||
|
||||
EmptyExceptStatementCheck_description = Empty except statement
|
||||
|
||||
@ -132,50 +132,37 @@ EventHandlerBooleanParamCheck_description = Use event handler boolean parameter
|
||||
|
||||
EventHandlerBooleanParamCheck_title = Use event handler boolean parameter
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Message=Allow field access with composite non reference type
|
||||
ExportMethodInCommandFormModuleCheck_CheckClientMethodForm = Check the client method of the form
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Description=Reading single object attribute from the database
|
||||
ExportMethodInCommandFormModuleCheck_CheckServerMethodForm = Check the server method of the form
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Issue__0=When the {0} is read from the reference, the entire object is imported from the database
|
||||
ExportMethodInCommandFormModuleCheck_ExludeMethodNamePattern = Exclude method name pattern
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Title=Reading single object attribute from the database
|
||||
ExportMethodInCommandFormModuleCheck_Notify_description_methods = Comma-separated list of excluded notification method names
|
||||
|
||||
RedundantExportCheck_Escess_title=Redundant Export keyword
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_des = Do not embed export procedures and functions in modules of commands and forms. You cannot address such modules from external code, so embedded export procedures and functions become dysfunctional.
|
||||
|
||||
RedundantExportCheck_Excess_description=Checks the modules contain unused export procedures and functions. The check searches for all references to the method, so it can take a long time.
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_result = Do not embed export procedures and functions in modules of commands and forms. You cannot address such modules from external code, so embedded export procedures and functions become dysfunctional.
|
||||
|
||||
RedundantExportCheck_Exclude_title=Comma-separated list of excluded region names
|
||||
ExportMethodInCommandModule_Do_not_use_export_method_in_commands_module = Restrictions on the use of export procedures and functions
|
||||
|
||||
RedundantExportCheck_Unused_export_method__0=Unused export method "{0}"
|
||||
ExportVariableInObjectModuleCheck_Description = Use of an export variable is not recommended
|
||||
|
||||
ExportMethodInCommandFormModuleCheck_CheckClientMethodForm=Check the client method of the form
|
||||
ExportMethodInCommandFormModuleCheck_CheckServerMethodForm=Check the server method of the form
|
||||
ExportMethodInCommandFormModuleCheck_ExludeMethodNamePattern=Exclude method name pattern
|
||||
ExportMethodInCommandFormModuleCheck_Notify_description_methods=Comma-separated list of excluded notification method names
|
||||
ExportVariableInObjectModuleCheck_Issue = It's not recommended to use the export variable in the object module
|
||||
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_des=Do not embed export procedures and functions in modules of commands and forms. You cannot address such modules from external code, so embedded export procedures and functions become dysfunctional.
|
||||
ExportVariableInObjectModuleCheck_Title = Use of an export variable is not recommended
|
||||
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_result=Do not embed export procedures and functions in modules of commands and forms. You cannot address such modules from external code, so embedded export procedures and functions become dysfunctional.
|
||||
ExtensionMethodPrefixCheck_Description = The procedure (function) in the module of the extension object does not have a prefix corresponding to the prefix of the extension itself
|
||||
|
||||
ExportMethodInCommandModule_Do_not_use_export_method_in_commands_module=Restrictions on the use of export procedures and functions
|
||||
ExtensionMethodPrefixCheck_Ext_method__0__should_have__1__prefix = The method "{0}" should have "{1}" prefix
|
||||
|
||||
ExportVariableInObjectModuleCheck_Description=Use of an export variable is not recommended
|
||||
ExtensionMethodPrefixCheck_Title = Extension method does not have extension prefix
|
||||
|
||||
ExportVariableInObjectModuleCheck_Issue=It's not recommended to use the export variable in the object module
|
||||
ExtensionVariablePrefixCheck_Description = The variable in the module of the extension object does not have a prefix corresponding to the prefix of the extension itself
|
||||
|
||||
ExportVariableInObjectModuleCheck_Title=Use of an export variable is not recommended
|
||||
ExtensionVariablePrefixCheck_Title = Extension variable does not have extension prefix
|
||||
|
||||
ExtensionVariablePrefixCheck_Description=The variable in the module of the extension object does not have a prefix corresponding to the prefix of the extension itself
|
||||
|
||||
ExtensionVariablePrefixCheck_Title=Extension variable does not have extension prefix
|
||||
|
||||
ExtensionVariablePrefixCheck_Variable_0_should_have_1_prefix=The variable "{0}" should have "{1}" prefix
|
||||
|
||||
ExtensionMethodPrefixCheck_Description=The procedure (function) in the module of the extension object does not have a prefix corresponding to the prefix of the extension itself
|
||||
|
||||
ExtensionMethodPrefixCheck_Ext_method__0__should_have__1__prefix=The method "{0}" should have "{1}" prefix
|
||||
|
||||
ExtensionMethodPrefixCheck_Title=Extension method does not have extension prefix
|
||||
ExtensionVariablePrefixCheck_Variable_0_should_have_1_prefix = The variable "{0}" should have "{1}" prefix
|
||||
|
||||
FormModuleMissingPragmaCheck_Missing_compilation_directives = Missing compilation directives
|
||||
|
||||
@ -189,37 +176,37 @@ FormModulePragmaCheck_description = Use form module compilation pragma
|
||||
|
||||
FormModulePragmaCheck_title = Use form module compilation pragma
|
||||
|
||||
FormSelfReferenceOutdatedCheck_Description="ThisObject" should be used instead of outdated "ThisForm"
|
||||
FormSelfReferenceOutdatedCheck_Description = "ThisObject" should be used instead of outdated "ThisForm"
|
||||
|
||||
FormSelfReferenceOutdatedCheck_Issue="ThisObject" should be used instead of outdated "ThisForm"
|
||||
FormSelfReferenceOutdatedCheck_Issue = "ThisObject" should be used instead of outdated "ThisForm"
|
||||
|
||||
FormSelfReferenceOutdatedCheck_Title=Outdated alias used
|
||||
FormSelfReferenceOutdatedCheck_Title = Outdated alias used
|
||||
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_description=Program invocation of form event handler
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_description = Program invocation of form event handler
|
||||
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_result=Program invocation of form event handler
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_result = Program invocation of form event handler
|
||||
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_title=Program invocation of form event handler
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_title = Program invocation of form event handler
|
||||
|
||||
IsInRoleCheck_Exception_Roles=Untested roles
|
||||
IsInRoleCheck_Exception_Roles = Untested roles
|
||||
|
||||
IsInRoleCheck_Use_AccessRight=Use the AccessRight() function instead of IsInRole()
|
||||
IsInRoleCheck_Use_AccessRight = Use the AccessRight() function instead of IsInRole()
|
||||
|
||||
IsInRoleCheck_Use_AccessRight_instead_IsInRole=Use the AccessRight() function instead of IsInRole()
|
||||
IsInRoleCheck_Use_AccessRight_instead_IsInRole = Use the AccessRight() function instead of IsInRole()
|
||||
|
||||
IsInRoleCheck_Using_IsInRole=Using "IsInRole" method
|
||||
IsInRoleCheck_Using_IsInRole = Using "IsInRole" method
|
||||
|
||||
LockOutOfTry_Checks_for_init_of_the_data_lock=Checks for initialization of the data lock. If the creation of a lock is found, the call of the Lock() method is checked, and the call must be in a try.
|
||||
LockOutOfTry_Checks_for_init_of_the_data_lock = Checks for initialization of the data lock. If the creation of a lock is found, the call of the Lock() method is checked, and the call must be in a try.
|
||||
|
||||
LockOutOfTry_Lock_out_of_try=Lock out of Try
|
||||
LockOutOfTry_Lock_out_of_try = Lock out of Try
|
||||
|
||||
LockOutOfTry_Method_lock_out_of_try=Method Lock() out of try block
|
||||
LockOutOfTry_Method_lock_out_of_try = Method Lock() out of try block
|
||||
|
||||
ManagerModuleNamedSelfReferenceCheck_description=Excessive named self reference
|
||||
ManagerModuleNamedSelfReferenceCheck_description = Excessive named self reference
|
||||
|
||||
ManagerModuleNamedSelfReferenceCheck_issue=Excessive named self reference
|
||||
ManagerModuleNamedSelfReferenceCheck_issue = Excessive named self reference
|
||||
|
||||
ManagerModuleNamedSelfReferenceCheck_title=Excessive named self reference in manager module
|
||||
ManagerModuleNamedSelfReferenceCheck_title = Excessive named self reference in manager module
|
||||
|
||||
MethodTooManyPramsCheck_Max_parameters = Max parameters
|
||||
|
||||
@ -251,24 +238,84 @@ ModuleEmptyMethodCheck_Exclude_method_name_pattern_title = Exclude method name p
|
||||
|
||||
ModuleEmptyMethodCheck_Title = Empty method check
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_duplicates_of_standard_regions=Check duplicates of standard regions
|
||||
ModuleStructureEventFormRegionsCheck_Description = Checks the region of form event handlers for methods related only to handlers
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_order_of_standard_regions=Check order of standard regions
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__can_not_be_placed_in_the_region__1 = Method "{0}" can not be placed in the "{1}" region
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__should_be_placed_in_the_region__1 = The event method "{0}" should be placed in the "{1}" region
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Excluded_method_names = Comma-separated list of excluded command event method names
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Multilevel_nesting_of_regions = Allow multilevel nesting of regions
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Title = Checks the region of form event handlers for methods related only to handlers
|
||||
|
||||
ModuleStructureEventRegionsCheck_Description = Checks the region of event handlers for the existence of methods related only to handlers
|
||||
|
||||
ModuleStructureEventRegionsCheck_Event_handler__0__not_region__1 = The event handler "{0}" should be placed in the "{1}" region
|
||||
|
||||
ModuleStructureEventRegionsCheck_Only_event_methods__0 = Only event methods can be placed in the "{0}" region
|
||||
|
||||
ModuleStructureEventRegionsCheck_Title = Checks the region of event handlers for the existence of methods related only to handlers
|
||||
|
||||
ModuleStructureInitCodeInRegion_Description = Initialize code should be placed in the Initialize region
|
||||
|
||||
ModuleStructureInitCodeInRegion_Issue__0 = Initialize code should be placed in the {0} region
|
||||
|
||||
ModuleStructureInitCodeInRegion_Title = Initialize code is in the correct region
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Description = Checks that the method is outside the standard region, and suggests placing the method in one of the standard regions for the current type of module
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Method_should_be_placed_in_one_of_the_standard_regions = The method "{0}" should be placed in one of the standard regions: {1}
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Multilevel_nesting_of_regions = Allow multilevel nesting of regions
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Only_export = Only export methods can be placed in the "{0}" region
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Title = Method is outside a standard region
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_duplicates_of_standard_regions = Check duplicates of standard regions
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_order_of_standard_regions = Check order of standard regions
|
||||
|
||||
ModuleStructureTopRegionCheck_Exclude_region_name = Comma-separated list of excluded region names
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_duplicate = Region has duplicate
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_the_wrong_order = Region has the wrong order
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_is_not_standard_for_current_type_of_module = Region is not standard for current type of module
|
||||
|
||||
ModuleStructureTopRegionCheck_description = Check that the regions on top of the module structure matches with the standard
|
||||
|
||||
ModuleStructureTopRegionCheck_error_message = Module structure region is not on top
|
||||
|
||||
ModuleStructureTopRegionCheck_Exclude_region_name=Comma-separated list of excluded region names
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_duplicate=Region has duplicate
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_the_wrong_order=Region has the wrong order
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_is_not_standard_for_current_type_of_module=Region is not standard for current type of module
|
||||
|
||||
ModuleStructureTopRegionCheck_title = Module structure top region
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Description = Variable declaration should be placed in the variable declaration region
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Issue__0 = Variable declaration should be placed in the {0} region
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Title = Variable declaration is in the correct region
|
||||
|
||||
ModuleUndefinedFunctionCheck_Description = Undefined function
|
||||
|
||||
ModuleUndefinedFunctionCheck_Title = Undefined function
|
||||
|
||||
ModuleUndefinedFunction_msg = Function "{0}" is not defined
|
||||
|
||||
ModuleUndefinedMethodCheck_Description = Undefined function or procedure
|
||||
|
||||
ModuleUndefinedMethodCheck_Title = Undefined method
|
||||
|
||||
ModuleUndefinedMethod_msg = Procedure or function "{0}" is not defined
|
||||
|
||||
ModuleUndefinedVariableCheck_Description = Undefined variable
|
||||
|
||||
ModuleUndefinedVariableCheck_Title = Undefined variable
|
||||
|
||||
ModuleUndefinedVariable_msg = Variable "{0}" is not defined
|
||||
|
||||
ModuleUnusedLocalVariableCheck_Description = Unused module local variable check
|
||||
|
||||
ModuleUnusedLocalVariableCheck_Probably_variable_not_initilized_yet__0 = Probably local variable "{0}" has not been initialized yet
|
||||
@ -285,59 +332,17 @@ ModuleUnusedMethodCheck_Title = Unused method check
|
||||
|
||||
ModuleUnusedMethodCheck_Unused_method__0 = Unused method "{0}"
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Description=Checks the region of form event handlers for methods related only to handlers
|
||||
NewColorCheck_Use_style_elements = To change the design, you should use style elements, and not set specific values directly in the controls
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__can_not_be_placed_in_the_region__1=Method "{0}" can not be placed in the "{1}" region
|
||||
NewColorCheck_Use_style_elements_not_specific_values = To change the design, you should use style elements, and not set specific values directly in the controls. This is required in order for similar controls to look the same in all forms where they occur.
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__should_be_placed_in_the_region__1=The event method "{0}" should be placed in the "{1}" region
|
||||
NewColorCheck_Using_new_color = Using the "New Color" construction
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Excluded_method_names=Comma-separated list of excluded command event method names
|
||||
NewFontCheck_Description = To change the font you should use style elements
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Multilevel_nesting_of_regions=Allow multilevel nesting of regions
|
||||
NewFontCheck_Issue = To change the font you should use style elements
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Title=Checks the region of form event handlers for methods related only to handlers
|
||||
|
||||
ModuleStructureEventRegionsCheck_Description=Checks the region of event handlers for the existence of methods related only to handlers
|
||||
|
||||
ModuleStructureEventRegionsCheck_Event_handler__0__not_region__1=The event handler "{0}" should be placed in the "{1}" region
|
||||
|
||||
ModuleStructureEventRegionsCheck_Only_event_methods__0=Only event methods can be placed in the "{0}" region
|
||||
|
||||
ModuleStructureEventRegionsCheck_Title=Checks the region of event handlers for the existence of methods related only to handlers
|
||||
|
||||
ModuleStructureInitCodeInRegion_Description=Initialize code should be placed in the Initialize region
|
||||
|
||||
ModuleStructureInitCodeInRegion_Issue__0=Initialize code should be placed in the {0} region
|
||||
|
||||
ModuleStructureInitCodeInRegion_Title=Initialize code is in the correct region
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Description=Checks that the method is outside the standard region, and suggests placing the method in one of the standard regions for the current type of module
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Method_should_be_placed_in_one_of_the_standard_regions=The method "{0}" should be placed in one of the standard regions: {1}
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Multilevel_nesting_of_regions=Allow multilevel nesting of regions
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Only_export=Only export methods can be placed in the "{0}" region
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Title=Method is outside a standard region
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Description=Variable declaration should be placed in the variable declaration region
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Issue__0=Variable declaration should be placed in the {0} region
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Title=Variable declaration is in the correct region
|
||||
|
||||
NewColorCheck_Use_style_elements=To change the design, you should use style elements, and not set specific values directly in the controls
|
||||
|
||||
NewColorCheck_Use_style_elements_not_specific_values=To change the design, you should use style elements, and not set specific values directly in the controls. This is required in order for similar controls to look the same in all forms where they occur.
|
||||
|
||||
NewColorCheck_Using_new_color=Using the "New Color" construction
|
||||
|
||||
NewFontCheck_Description=To change the font you should use style elements
|
||||
|
||||
NewFontCheck_Issue=To change the font you should use style elements
|
||||
|
||||
NewFontCheck_Title=Using the "New Font" construction
|
||||
NewFontCheck_Title = Using the "New Font" construction
|
||||
|
||||
NotifyDescriptionToServerProcedureCheck_Notify_description_procedure_should_be_export = Notify description procedure should exist and be export
|
||||
|
||||
@ -375,25 +380,47 @@ QueryInLoop_description = Check query in loop
|
||||
|
||||
QueryInLoop_title = Query in loop
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Description = Reading single object attribute from the database
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Issue__0 = When the {0} is read from the reference, the entire object is imported from the database
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Message = Allow field access with composite non reference type
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Title = Reading single object attribute from the database
|
||||
|
||||
RedundantExportCheck_Escess_title = Redundant Export keyword
|
||||
|
||||
RedundantExportCheck_Excess_description = Checks the modules contain unused export procedures and functions. The check searches for all references to the method, so it can take a long time.
|
||||
|
||||
RedundantExportCheck_Exclude_title = Comma-separated list of excluded region names
|
||||
|
||||
RedundantExportCheck_Unused_export_method__0 = Unused export method "{0}"
|
||||
|
||||
RegionEmptyCheck_Region_is_empty = Region is empty
|
||||
|
||||
RegionEmptyCheck_description = Check that module region is empty
|
||||
|
||||
RegionEmptyCheck_title = Region is empty
|
||||
|
||||
RollbackTransactionCheck_Rollback_transaction_must_be_in_try_catch=Rollback transaction must be in a try-catch
|
||||
RollbackTransactionCheck_No_begin_transaction_for_rollback_transaction = There is no begin transaction for rollback transaction
|
||||
|
||||
RollbackTransactionCheck_Transactions_is_broken=Rollback transaction is incorrect
|
||||
RollbackTransactionCheck_No_commit_transaction_for_begin_transaction = There is no commit transaction for begin transaction
|
||||
|
||||
RollbackTransactionCheck_Transactions_is_broken_des=Rollback transaction must be in a try-catch, there should be no executable code between exception and rollback transaction, there is no begin transaction for rollback transaction, there is no commit transaction for begin transaction.
|
||||
RollbackTransactionCheck_Rollback_transaction_must_be_in_try_catch = Rollback transaction must be in a try-catch
|
||||
|
||||
SelfReferenceCheck_check_only_existing_form_properties=Check only existing form properties
|
||||
RollbackTransactionCheck_Should_be_no_executable_code_between_exception_and_rollback = There should be no executable code between exception and rollback transaction
|
||||
|
||||
SelfReferenceCheck_Description=Excessive usage of self reference (when referencing method, property or attribute)
|
||||
RollbackTransactionCheck_Transactions_is_broken = Rollback transaction is incorrect
|
||||
|
||||
SelfReferenceCheck_Title=Excessive self reference
|
||||
RollbackTransactionCheck_Transactions_is_broken_des = Rollback transaction must be in a try-catch, there should be no executable code between exception and rollback transaction, there is no begin transaction for rollback transaction, there is no commit transaction for begin transaction.
|
||||
|
||||
SelfReferenceCheck_Issue=Excessive usage of self reference (when referencing method, property or attribute)
|
||||
SelfReferenceCheck_Description = Excessive usage of self reference (when referencing method, property or attribute)
|
||||
|
||||
SelfReferenceCheck_Issue = Excessive usage of self reference (when referencing method, property or attribute)
|
||||
|
||||
SelfReferenceCheck_Title = Excessive self reference
|
||||
|
||||
SelfReferenceCheck_check_only_existing_form_properties = Check only existing form properties
|
||||
|
||||
ServerExecutionSafeModeCheck_description = Safe mode is not enabled when calling "Execute" or "Eval'
|
||||
|
||||
@ -418,15 +445,3 @@ UseNonRecommendedMethods_message = Using non-recommended method
|
||||
UseNonRecommendedMethods_parameter = List of non-recommended methods
|
||||
|
||||
UseNonRecommendedMethods_title = Using non-recommended methods
|
||||
|
||||
ModuleUndefinedVariableCheck_Title = Undefined variable
|
||||
ModuleUndefinedVariableCheck_Description = Undefined variable
|
||||
ModuleUndefinedVariable_msg = Variable "{0}" is not defined
|
||||
|
||||
ModuleUndefinedMethodCheck_Title = Undefined method
|
||||
ModuleUndefinedMethodCheck_Description = Undefined function or procedure
|
||||
|
||||
ModuleUndefinedFunctionCheck_Title = Undefined function
|
||||
ModuleUndefinedFunctionCheck_Description = Undefined function
|
||||
ModuleUndefinedFunction_msg = Function "{0}" is not defined
|
||||
ModuleUndefinedMethod_msg = Procedure or function "{0}" is not defined
|
||||
|
@ -36,11 +36,19 @@ AttachableEventHandlerNameCheck_Message = Программно добавлен
|
||||
|
||||
AttachableEventHandlerNameCheck_Title = Имя подключаемого обработчика события
|
||||
|
||||
CachedPublicCheck_Description=Кэширование интерфейсного метода
|
||||
BeginTransactionCheck_Begin_transaction_is_incorrect = Нарушена схема работы с "НачатьТранзакцию()"
|
||||
|
||||
CachedPublicCheck_Issue=Не рекомендуется кэшировать программный интерфейс
|
||||
BeginTransactionCheck_Executable_code_between_begin_transaction_and_try = Между "НачатьТранзакцию()" и "Попытка" есть исполняемый код
|
||||
|
||||
CachedPublicCheck_Title=Кэширование интерфейсного метода
|
||||
BeginTransactionCheck_Try_must_be_after_begin = После начала транзакции не найден оператор "Попытка"
|
||||
|
||||
BeginTransactionCheck_Try_was_not_found_after_calling_begin = Не найден оператор "Попытка" после вызова "НачатьТранзакцию()"
|
||||
|
||||
CachedPublicCheck_Description = Кэширование интерфейсного метода
|
||||
|
||||
CachedPublicCheck_Issue = Не рекомендуется кэшировать программный интерфейс
|
||||
|
||||
CachedPublicCheck_Title = Кэширование интерфейсного метода
|
||||
|
||||
CanonicalPragmaCheck_Pragma_0_is_not_written_canonically_correct_spelling_is_1 = Аннотация {0} написана не канонически, правильное написание {1}
|
||||
|
||||
@ -54,53 +62,43 @@ ChangeAndValidateInsteadOfAroundCheck_description = Проверяет, что
|
||||
|
||||
ChangeAndValidateInsteadOfAroundCheck_title = Используется аннотация &ИзменениеИКонтроль вместо &Вместо
|
||||
|
||||
CommitTransactionCheck_Commit_transaction_must_be_in_try_catch=Вызов "ЗафиксироватьТранзакцию()" находится вне конструкции "Попытка... Исключение"
|
||||
CommitTransactionCheck_Commit_transaction_must_be_in_try_catch = Вызов "ЗафиксироватьТранзакцию()" находится вне конструкции "Попытка... Исключение"
|
||||
|
||||
CommitTransactionCheck_No_begin_transaction_for_commit_transaction=Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ЗафиксироватьТранзакцию()"
|
||||
CommitTransactionCheck_No_begin_transaction_for_commit_transaction = Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ЗафиксироватьТранзакцию()"
|
||||
|
||||
CommitTransactionCheck_No_begin_transaction_for_rollback_transaction=Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ОтменитьТранзакцию()"
|
||||
CommitTransactionCheck_No_begin_transaction_for_rollback_transaction = Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ОтменитьТранзакцию()"
|
||||
|
||||
CommitTransactionCheck_No_rollback_transaction_for_begin_transaction=Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ОтменитьТранзакцию()"
|
||||
CommitTransactionCheck_No_rollback_transaction_for_begin_transaction = Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ОтменитьТранзакцию()"
|
||||
|
||||
CommitTransactionCheck_Should_be_no_executable_code_between_commit_and_exception=Между "ЗафиксироватьТранзакцию()" и "Исключение" есть исполняемый код, который может вызвать исключение
|
||||
CommitTransactionCheck_Should_be_no_executable_code_between_commit_and_exception = Между "ЗафиксироватьТранзакцию()" и "Исключение" есть исполняемый код, который может вызвать исключение
|
||||
|
||||
CommitTransactionCheck_Should_be_no_executable_code_between_exception_and_rollback=Между "Исключение" и "ОтменитьТранзакцию()" есть исполняемый код, который может вызвать исключение
|
||||
CommitTransactionCheck_Should_be_no_executable_code_between_exception_and_rollback = Между "Исключение" и "ОтменитьТранзакцию()" есть исполняемый код, который может вызвать исключение
|
||||
|
||||
BeginTransactionCheck_Executable_code_between_begin_transaction_and_try=Между "НачатьТранзакцию()" и "Попытка" есть исполняемый код
|
||||
CommitTransactionCheck_Transaction_contains_empty_except = Транзакция содержит пустой блок Исключение
|
||||
|
||||
BeginTransactionCheck_Try_was_not_found_after_calling_begin=Не найден оператор "Попытка" после вызова "НачатьТранзакцию()"
|
||||
CommitTransactionCheck_Transactions_is_broken = Нарушена схема работы с "ЗафиксироватьТранзакцию()"
|
||||
|
||||
BeginTransactionCheck_Begin_transaction_is_incorrect=Нарушена схема работы с "НачатьТранзакцию()"
|
||||
CommitTransactionCheck_Transactions_is_broken_des = Вызов "ЗафиксироватьТранзакцию()" находится вне конструкции "Попытка... Исключение". Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ЗафиксироватьТранзакцию()". Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ОтменитьТранзакцию()". Между "ЗафиксироватьТранзакцию()" и "Исключение" есть исполняемый код, который может вызвать исключение.
|
||||
|
||||
BeginTransactionCheck_Try_must_be_after_begin=После начала транзакции не найден оператор "Попытка"
|
||||
CommonModuleMissingApiCheck_Description = Программный интерфейс
|
||||
|
||||
CommitTransactionCheck_Transaction_contains_empty_except=Транзакция содержит пустой блок Исключение
|
||||
CommonModuleMissingApiCheck_Issue = Общий модуль не содержит программный интерфейс
|
||||
|
||||
CommitTransactionCheck_Transactions_is_broken=Нарушена схема работы с "ЗафиксироватьТранзакцию()"
|
||||
CommonModuleMissingApiCheck_Title = Программный интерфейс
|
||||
|
||||
CommitTransactionCheck_Transactions_is_broken_des=Вызов "ЗафиксироватьТранзакцию()" находится вне конструкции "Попытка... Исключение". Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ЗафиксироватьТранзакцию()". Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ОтменитьТранзакцию()". Между "ЗафиксироватьТранзакцию()" и "Исключение" есть исполняемый код, который может вызвать исключение.
|
||||
CommonModuleNamedSelfReferenceCheck_description = Избыточное обращение по собственному имени
|
||||
|
||||
CommitTransactionCheck_No_rollback_transaction_for_begin_transaction=Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ОтменитьТранзакцию()"
|
||||
CommonModuleNamedSelfReferenceCheck_issue = Избыточное обращение по собственному имени
|
||||
|
||||
RollbackTransactionCheck_No_commit_transaction_for_begin_transaction=Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ЗафиксироватьТранзакцию()"
|
||||
CommonModuleNamedSelfReferenceCheck_title = Избыточное обращение по собственному имени в общем модуле
|
||||
|
||||
RollbackTransactionCheck_Transactions_is_broken=Нарушена схема работы с "ОтменитьТранзакцию()"
|
||||
ConsecutiveEmptyLines_Description = Последовательно расположенные пустые строки
|
||||
|
||||
RollbackTransactionCheck_Transactions_is_broken_des=Вызов "ОтменитьТранзакцию()" находится вне конструкции "Попытка... Исключение". Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ОтменитьТранзакцию()". Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ЗафиксироватьТранзакцию()". Между "Исключение" и "ОтменитьТранзакцию()" есть исполняемый код, который может вызвать исключение.
|
||||
ConsecutiveEmptyLines_Parameter_title = Максимальное количество последовательно расположенных пустых строк
|
||||
|
||||
CommonModuleNamedSelfReferenceCheck_description=Избыточное обращение по собственному имени
|
||||
ConsecutiveEmptyLines_Sequence_of_empty_lines_between__0__and__1__is_greator_than__2 = Между строками {0} и {1} расположено больше {2} пустых строк
|
||||
|
||||
CommonModuleNamedSelfReferenceCheck_issue=Избыточное обращение по собственному имени
|
||||
|
||||
CommonModuleNamedSelfReferenceCheck_title=Избыточное обращение по собственному имени в общем модуле
|
||||
|
||||
ConsecutiveEmptyLines_Description=Последовательно расположенные пустые строки
|
||||
|
||||
ConsecutiveEmptyLines_Parameter_title=Максимальное количество последовательно расположенных пустых строк
|
||||
|
||||
ConsecutiveEmptyLines_Sequence_of_empty_lines_between__0__and__1__is_greator_than__2=Между строками {0} и {1} расположено больше {2} пустых строк
|
||||
|
||||
ConsecutiveEmptyLines_Title=Последовательность пустых строк
|
||||
ConsecutiveEmptyLines_Title = Последовательность пустых строк
|
||||
|
||||
DeprecatedProcedureOutsideDeprecatedRegionCheck_Deprecated_function_out_of_deprecated_area = Устаревшую процедуру (функцию) "{0}" следует перенести в область общего модуля УстаревшиеПроцедурыИФункции, размещенную внутри области ПрограммныйИнтерфейс
|
||||
|
||||
@ -138,53 +136,37 @@ EventHandlerBooleanParamCheck_description = Использование буле
|
||||
|
||||
EventHandlerBooleanParamCheck_title = Использование булевого параметра обработчика события
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Message=Разрешить доступ к полю с составным не ссылочным типом
|
||||
ExportMethodInCommandFormModuleCheck_CheckClientMethodForm = Проверить клиентский метод формы
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Description=Чтение отдельного реквизита объекта из базы данных
|
||||
ExportMethodInCommandFormModuleCheck_CheckServerMethodForm = Проверить серверный метод формы
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Issue__0=При чтении атрибута {0} из ссылки, весь объект импортируется из базы данных
|
||||
ExportMethodInCommandFormModuleCheck_ExludeMethodNamePattern = Шаблон исключаемых имен методов
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Title=Чтение отдельного реквизита объекта из базы данных
|
||||
ExportMethodInCommandFormModuleCheck_Notify_description_methods = Список исключаемых имен методов оповещения, разделенные запятой
|
||||
|
||||
RedundantExportCheck_Escess_title= Избыточное ключевое слово Экспорт
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_des = Не следует размещать экспортные процедуры и функции в модулях команд и форм. К этим модулям нет возможности обращаться из внешнего по отношению к ним кода, поэтому экспортные процедуры и функции в этих модулях не имеют смысла.
|
||||
|
||||
RedundantExportCheck_Excess_description=Проверка текстов модулей конфигурации на содержание неиспользуемые экспортные процедуры и функции. Проверка выполняет поиск всех ссылок на метод, поэтому может выполняться длительное время.
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_result = Не следует размещать экспортные процедуры и функции в модулях команд и форм. К этим модулям нет возможности обращаться из внешнего по отношению к ним кода, поэтому экспортные процедуры и функции в этих модулях не имеют смысла.
|
||||
|
||||
RedundantExportCheck_Exclude_title=Список исключаемых имен областей, разделенных запятой
|
||||
ExportMethodInCommandModule_Do_not_use_export_method_in_commands_module = Ограничения на использование экспортных процедур и функций
|
||||
|
||||
RedundantExportCheck_Unused_export_method__0=Неиспользуемый экспортный метод "{0}"
|
||||
ExportVariableInObjectModuleCheck_Description = Использование экспортной переменной не рекомендовано
|
||||
|
||||
ExportMethodInCommandFormModuleCheck_CheckClientMethodForm=Проверить клиентский метод формы
|
||||
ExportVariableInObjectModuleCheck_Issue = Не рекомендуется использовать экспортную переменную в модуле объекта
|
||||
|
||||
ExportMethodInCommandFormModuleCheck_CheckServerMethodForm=Проверить серверный метод формы
|
||||
ExportVariableInObjectModuleCheck_Title = Использование экспортной переменной не рекомендовано
|
||||
|
||||
ExportMethodInCommandFormModuleCheck_ExludeMethodNamePattern=Шаблон исключаемых имен методов
|
||||
ExtensionMethodPrefixCheck_Description = Имя метода не содержит префикс расширения
|
||||
|
||||
ExportMethodInCommandFormModuleCheck_Notify_description_methods=Список исключаемых имен методов оповещения, разделенные запятой
|
||||
ExtensionMethodPrefixCheck_Ext_method__0__should_have__1__prefix = Имя метода "{0}" должно содержать префикс "{1}"
|
||||
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_des=Не следует размещать экспортные процедуры и функции в модулях команд и форм. К этим модулям нет возможности обращаться из внешнего по отношению к ним кода, поэтому экспортные процедуры и функции в этих модулях не имеют смысла.
|
||||
ExtensionMethodPrefixCheck_Title = Метод расширения не содержит в имени метода префикс расширения
|
||||
|
||||
ExportMethodInCommandModule_Do_not_emded_export_method_in_modules_of_command_result=Не следует размещать экспортные процедуры и функции в модулях команд и форм. К этим модулям нет возможности обращаться из внешнего по отношению к ним кода, поэтому экспортные процедуры и функции в этих модулях не имеют смысла.
|
||||
ExtensionVariablePrefixCheck_Description = Переменная модуля расширения должна в имени содержать префикс расширения
|
||||
|
||||
ExportMethodInCommandModule_Do_not_use_export_method_in_commands_module=Ограничения на использование экспортных процедур и функций
|
||||
ExtensionVariablePrefixCheck_Title = Переменная расширения должна содержать в имени префикс расширения
|
||||
|
||||
ExportVariableInObjectModuleCheck_Description=Использование экспортной переменной не рекомендовано
|
||||
|
||||
ExportVariableInObjectModuleCheck_Issue=Не рекомендуется использовать экспортную переменную в модуле объекта
|
||||
|
||||
ExportVariableInObjectModuleCheck_Title=Использование экспортной переменной не рекомендовано
|
||||
|
||||
ExtensionVariablePrefixCheck_Description=Переменная модуля расширения должна в имени содержать префикс расширения
|
||||
|
||||
ExtensionVariablePrefixCheck_Title=Переменная расширения должна содержать в имени префикс расширения
|
||||
|
||||
ExtensionVariablePrefixCheck_Variable_0_should_have_1_prefix=Переменная "{0}" должна иметь префикс "{1}"
|
||||
|
||||
ExtensionMethodPrefixCheck_Description=Имя метода не содержит префикс расширения
|
||||
|
||||
ExtensionMethodPrefixCheck_Ext_method__0__should_have__1__prefix=Имя метода "{0}" должно содержать префикс "{1}"
|
||||
|
||||
ExtensionMethodPrefixCheck_Title=Метод расширения не содержит в имени метода префикс расширения
|
||||
ExtensionVariablePrefixCheck_Variable_0_should_have_1_prefix = Переменная "{0}" должна иметь префикс "{1}"
|
||||
|
||||
FormModuleMissingPragmaCheck_Missing_compilation_directives = Пропущена директива компиляции
|
||||
|
||||
@ -198,37 +180,37 @@ FormModulePragmaCheck_description = Использование директив
|
||||
|
||||
FormModulePragmaCheck_title = Использование директив компиляции модуля формы
|
||||
|
||||
FormSelfReferenceOutdatedCheck_Description=Следует использовать псевдоним "ЭтотОбъект" вместо устаревшего "ЭтаФорма"
|
||||
FormSelfReferenceOutdatedCheck_Description = Следует использовать псевдоним "ЭтотОбъект" вместо устаревшего "ЭтаФорма"
|
||||
|
||||
FormSelfReferenceOutdatedCheck_Issue=Следует использовать псевдоним "ЭтотОбъект" вместо устаревшего "ЭтаФорма"
|
||||
FormSelfReferenceOutdatedCheck_Issue = Следует использовать псевдоним "ЭтотОбъект" вместо устаревшего "ЭтаФорма"
|
||||
|
||||
FormSelfReferenceOutdatedCheck_Title=Использование устаревшего псевдонима
|
||||
FormSelfReferenceOutdatedCheck_Title = Использование устаревшего псевдонима
|
||||
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_description=Программный вызов обработчика события формы
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_description = Программный вызов обработчика события формы
|
||||
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_result=Программный вызов обработчика события формы
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_result = Программный вызов обработчика события формы
|
||||
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_title=Программный вызов обработчика события формы
|
||||
InvocationFormEventHandlerCheck_Program_invocation_of_form_event_handler_title = Программный вызов обработчика события формы
|
||||
|
||||
IsInRoleCheck_Exception_Roles = Непроверяемые роли
|
||||
|
||||
IsInRoleCheck_Use_AccessRight = Следует использовать метод "ПравоДоступа" вместо "РольДоступна"
|
||||
|
||||
IsInRoleCheck_Using_IsInRole = Использован не рекомендованный метод "РольДоступна"
|
||||
|
||||
IsInRoleCheck_Use_AccessRight_instead_IsInRole = Используйте функцию "ПравоДоступа()" вместо "РольДоступна()"
|
||||
|
||||
LockOutOfTry_Checks_for_init_of_the_data_lock=Правило проверяет наличие инициализации блокировки данных. В случае если найдено создание блокировки, проверяется вызов метода "Заблокировать()", при этом вызов должен быть в попытке.
|
||||
IsInRoleCheck_Using_IsInRole = Использован не рекомендованный метод "РольДоступна"
|
||||
|
||||
LockOutOfTry_Lock_out_of_try=Метод Заблокировать() вне блока Попытка-Исключение
|
||||
LockOutOfTry_Checks_for_init_of_the_data_lock = Правило проверяет наличие инициализации блокировки данных. В случае если найдено создание блокировки, проверяется вызов метода "Заблокировать()", при этом вызов должен быть в попытке.
|
||||
|
||||
LockOutOfTry_Method_lock_out_of_try=Метод Заблокировать() вне блока Попытка-Исключение
|
||||
LockOutOfTry_Lock_out_of_try = Метод Заблокировать() вне блока Попытка-Исключение
|
||||
|
||||
ManagerModuleNamedSelfReferenceCheck_description=Избыточное обращение по собственному имени
|
||||
LockOutOfTry_Method_lock_out_of_try = Метод Заблокировать() вне блока Попытка-Исключение
|
||||
|
||||
ManagerModuleNamedSelfReferenceCheck_issue=Избыточное обращение по собственному имени
|
||||
ManagerModuleNamedSelfReferenceCheck_description = Избыточное обращение по собственному имени
|
||||
|
||||
ManagerModuleNamedSelfReferenceCheck_title=Избыточное обращение по собственному имени в модуле менеджера
|
||||
ManagerModuleNamedSelfReferenceCheck_issue = Избыточное обращение по собственному имени
|
||||
|
||||
ManagerModuleNamedSelfReferenceCheck_title = Избыточное обращение по собственному имени в модуле менеджера
|
||||
|
||||
MethodTooManyPramsCheck_Max_parameters = Максимум параметров
|
||||
|
||||
@ -260,45 +242,81 @@ ModuleEmptyMethodCheck_Exclude_method_name_pattern_title = Шаблон искл
|
||||
|
||||
ModuleEmptyMethodCheck_Title = Проверка пустых методов
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Description = Проверяет методы области обработчиков событий формы относящиеся только к обработчикам
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__can_not_be_placed_in_the_region__1 = Метод "{0}" не следует размещать в области "{1}"
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__should_be_placed_in_the_region__1 = Обработчик события "{0}" следует разместить в области "{1}"
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Excluded_method_names = Исключение имена методов, разделенные запятой
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Multilevel_nesting_of_regions = Разрешить многоуровневое вложение областей
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Title = Проверяет методы области обработчиков событий формы относящиеся только к обработчикам
|
||||
|
||||
ModuleStructureEventRegionsCheck_Description = Проверяет область обработчиков событий на наличие методов относящихся только к обработчикам
|
||||
|
||||
ModuleStructureEventRegionsCheck_Event_handler__0__not_region__1 = Обработчик событий "{0}" следует разместить в область "{1}"
|
||||
|
||||
ModuleStructureEventRegionsCheck_Only_event_methods__0 = В области ''{0}'' следует размещать только обработчики событий
|
||||
|
||||
ModuleStructureEventRegionsCheck_Title = Проверяет область обработчиков событий на наличие методов относящихся только к обработчикам
|
||||
|
||||
ModuleStructureInitCodeInRegion_Description = Код инициализации следует расположить в области инициализации
|
||||
|
||||
ModuleStructureInitCodeInRegion_Issue__0 = Код инициализации следует расположить в области {0}
|
||||
|
||||
ModuleStructureInitCodeInRegion_Title = Код инициализации расположен не в правильной области
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Description = Проверяет что метод находится вне области, и предлагает поместить метод в одну из стандартных для текущего типа модуля область
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Method_should_be_placed_in_one_of_the_standard_regions = Метод "{0}" необходимо разместить в одной из верхнеуровневых областей: {1}
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Multilevel_nesting_of_regions = Разрешить многоуровневое вложение областей
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Title = Метод вне области
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_duplicates_of_standard_regions = Дубли стандартных областей
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_order_of_standard_regions = Порядок стандартных областей
|
||||
|
||||
ModuleStructureTopRegionCheck_Exclude_region_name = Список имен областей исключений, разделенный запятой
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_duplicate = Дублирование стандартной области
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_the_wrong_order = Неправильный порядок стандартной области
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_is_not_standard_for_current_type_of_module = Область не стандартная для текущего типа модуля
|
||||
|
||||
ModuleStructureTopRegionCheck_description = Проверить, что области верхнего уровня структуры модуля соответствуют стандарту
|
||||
|
||||
ModuleStructureTopRegionCheck_error_message = Стандартная область структуры модуля является вложенной
|
||||
|
||||
ModuleStructureTopRegionCheck_title = Стандартная область структуры модуля верхнеуровневая
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_duplicates_of_standard_regions=Дубли стандартных областей
|
||||
ModuleStructureVariablesInRegionCheck_Description = Объявление переменной должно быть помещено в область объявления переменной
|
||||
|
||||
ModuleStructureTopRegionCheck_Check_order_of_standard_regions=Порядок стандартных областей
|
||||
ModuleStructureVariablesInRegionCheck_Issue__0 = Объявление переменной должно быть помещено в область {0}
|
||||
|
||||
ModuleStructureTopRegionCheck_Exclude_region_name=Список имен областей исключений, разделенный запятой
|
||||
ModuleStructureVariablesInRegionCheck_Title = Объявление переменных расположено в правильной области
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_duplicate=Дублирование стандартной области
|
||||
ModuleUndefinedFunctionCheck_Description = Функция не определена
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_has_the_wrong_order=Неправильный порядок стандартной области
|
||||
ModuleUndefinedFunctionCheck_Title = Функция не определена
|
||||
|
||||
ModuleStructureTopRegionCheck_Region_is_not_standard_for_current_type_of_module=Область не стандартная для текущего типа модуля
|
||||
ModuleUndefinedFunction_msg = Функция "{0}" не определена
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Multilevel_nesting_of_regions = Разрешить многоуровневое вложение областей
|
||||
ModuleUndefinedMethodCheck_Description = Функция или процедура не определена
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Multilevel_nesting_of_regions = Разрешить многоуровневое вложение областей
|
||||
ModuleUndefinedMethodCheck_Title = Метод не определен
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Title = Метод вне области
|
||||
ModuleUndefinedMethod_msg = Процедура или функция "{0}" не определена
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Description = Проверяет что метод находится вне области, и предлагает поместить метод в одну из стандартных для текущего типа модуля область
|
||||
ModuleUndefinedVariableCheck_Description = Переменная не определена
|
||||
|
||||
ModuleStructureMethodInRegionCheck_Method_should_be_placed_in_one_of_the_standard_regions = Метод "{0}" необходимо разместить в одной из верхнеуровневых областей: {1}
|
||||
ModuleUndefinedVariableCheck_Title = Переменная не определена
|
||||
|
||||
ModuleStructureInitCodeInRegion_Description=Код инициализации следует расположить в области инициализации
|
||||
|
||||
ModuleStructureInitCodeInRegion_Issue__0=Код инициализации следует расположить в области {0}
|
||||
|
||||
ModuleStructureInitCodeInRegion_Title=Код инициализации расположен не в правильной области
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Description=Объявление переменной должно быть помещено в область объявления переменной
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Issue__0=Объявление переменной должно быть помещено в область {0}
|
||||
|
||||
ModuleStructureVariablesInRegionCheck_Title=Объявление переменных расположено в правильной области
|
||||
ModuleUndefinedVariable_msg = Переменная "{0}" не определена
|
||||
|
||||
ModuleUnusedLocalVariableCheck_Description = Проверка модуля на наличие неиспользуемых локальных переменных
|
||||
|
||||
@ -316,35 +334,17 @@ ModuleUnusedMethodCheck_Title = Проверка неиспользуемых м
|
||||
|
||||
ModuleUnusedMethodCheck_Unused_method__0 = Неиспользуемый метод "{0}"
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Description=Проверяет методы области обработчиков событий формы относящиеся только к обработчикам
|
||||
NewColorCheck_Use_style_elements = Для изменения оформления следует использовать элементы стиля, а не задавать конкретные значения непосредственно в элементах управления
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__can_not_be_placed_in_the_region__1=Метод "{0}" не следует размещать в области "{1}"
|
||||
NewColorCheck_Use_style_elements_not_specific_values = Для изменения оформления следует использовать элементы стиля, а не задавать конкретные значения непосредственно в элементах управления. Это требуется для того, чтобы аналогичные элементы управления выглядели одинаково во всех формах, где они встречаются.
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Event_method__0__should_be_placed_in_the_region__1=Обработчик события "{0}" следует разместить в области "{1}"
|
||||
NewColorCheck_Using_new_color = Использование конструкции "Новый Цвет"
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Excluded_method_names=Исключение имена методов, разделенные запятой
|
||||
NewFontCheck_Description = Для изменения шрифта следует использовать элементы стиля
|
||||
|
||||
ModuleStructureEventFormRegionsCheck_Title=Проверяет методы области обработчиков событий формы относящиеся только к обработчикам
|
||||
NewFontCheck_Issue = Для изменения шрифта следует использовать элементы стиля
|
||||
|
||||
ModuleStructureEventRegionsCheck_Only_event_methods__0 = В области ''{0}'' следует размещать только обработчики событий
|
||||
|
||||
ModuleStructureEventRegionsCheck_Description=Проверяет область обработчиков событий на наличие методов относящихся только к обработчикам
|
||||
|
||||
ModuleStructureEventRegionsCheck_Event_handler__0__not_region__1=Обработчик событий "{0}" следует разместить в область "{1}"
|
||||
|
||||
ModuleStructureEventRegionsCheck_Title=Проверяет область обработчиков событий на наличие методов относящихся только к обработчикам
|
||||
|
||||
NewFontCheck_Description=Для изменения шрифта следует использовать элементы стиля
|
||||
|
||||
NewFontCheck_Issue=Для изменения шрифта следует использовать элементы стиля
|
||||
|
||||
NewFontCheck_Title=Использование конструкции "Новый Шрифт"
|
||||
|
||||
NewColorCheck_Use_style_elements=Для изменения оформления следует использовать элементы стиля, а не задавать конкретные значения непосредственно в элементах управления
|
||||
|
||||
NewColorCheck_Use_style_elements_not_specific_values=Для изменения оформления следует использовать элементы стиля, а не задавать конкретные значения непосредственно в элементах управления. Это требуется для того, чтобы аналогичные элементы управления выглядели одинаково во всех формах, где они встречаются.
|
||||
|
||||
NewColorCheck_Using_new_color=Использование конструкции "Новый Цвет"
|
||||
NewFontCheck_Title = Использование конструкции "Новый Шрифт"
|
||||
|
||||
NotifyDescriptionToServerProcedureCheck_Notify_description_procedure_should_be_export = Процедура описания оповещения должна существовать и быть экспортной
|
||||
|
||||
@ -382,21 +382,43 @@ QueryInLoop_description = Проверка запрос в цикле
|
||||
|
||||
QueryInLoop_title = Запрос в цикле
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Description = Чтение отдельного реквизита объекта из базы данных
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Issue__0 = При чтении атрибута {0} из ссылки, весь объект импортируется из базы данных
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Message = Разрешить доступ к полю с составным не ссылочным типом
|
||||
|
||||
ReadingAttributesFromDataBaseCheck_Title = Чтение отдельного реквизита объекта из базы данных
|
||||
|
||||
RedundantExportCheck_Escess_title = Избыточное ключевое слово Экспорт
|
||||
|
||||
RedundantExportCheck_Excess_description = Проверка текстов модулей конфигурации на содержание неиспользуемые экспортные процедуры и функции. Проверка выполняет поиск всех ссылок на метод, поэтому может выполняться длительное время.
|
||||
|
||||
RedundantExportCheck_Exclude_title = Список исключаемых имен областей, разделенных запятой
|
||||
|
||||
RedundantExportCheck_Unused_export_method__0 = Неиспользуемый экспортный метод "{0}"
|
||||
|
||||
RegionEmptyCheck_Region_is_empty = Область пустая
|
||||
|
||||
RegionEmptyCheck_description = Проверяет что область модуля пустая
|
||||
|
||||
RegionEmptyCheck_title = Область пустая
|
||||
|
||||
RollbackTransactionCheck_Rollback_transaction_must_be_in_try_catch=Вызов "ОтменитьТранзакцию()" находится вне конструкции "Попытка... Исключение"
|
||||
RollbackTransactionCheck_No_commit_transaction_for_begin_transaction = Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ЗафиксироватьТранзакцию()"
|
||||
|
||||
SelfReferenceCheck_check_only_existing_form_properties=Проверять только существующие свойства в форме
|
||||
RollbackTransactionCheck_Rollback_transaction_must_be_in_try_catch = Вызов "ОтменитьТранзакцию()" находится вне конструкции "Попытка... Исключение"
|
||||
|
||||
SelfReferenceCheck_Description=Избыточное обращение внутри модуля через псевдоним "ЭтотОбъект" (к методу, свойству или реквизиту)
|
||||
RollbackTransactionCheck_Transactions_is_broken = Нарушена схема работы с "ОтменитьТранзакцию()"
|
||||
|
||||
SelfReferenceCheck_Title=Избыточное использование псевдонима "ЭтотОбъект"
|
||||
RollbackTransactionCheck_Transactions_is_broken_des = Вызов "ОтменитьТранзакцию()" находится вне конструкции "Попытка... Исключение". Отсутствует вызов "НачатьТранзакцию()", хотя вызываются "ОтменитьТранзакцию()". Для вызова "НачатьТранзакцию()" отсутствует парный вызов "ЗафиксироватьТранзакцию()". Между "Исключение" и "ОтменитьТранзакцию()" есть исполняемый код, который может вызвать исключение.
|
||||
|
||||
SelfReferenceCheck_Issue=Избыточное обращение внутри модуля через псевдоним "ЭтотОбъект" (к методу, свойству или реквизиту)
|
||||
SelfReferenceCheck_Description = Избыточное обращение внутри модуля через псевдоним "ЭтотОбъект" (к методу, свойству или реквизиту)
|
||||
|
||||
SelfReferenceCheck_Issue = Избыточное обращение внутри модуля через псевдоним "ЭтотОбъект" (к методу, свойству или реквизиту)
|
||||
|
||||
SelfReferenceCheck_Title = Избыточное использование псевдонима "ЭтотОбъект"
|
||||
|
||||
SelfReferenceCheck_check_only_existing_form_properties = Проверять только существующие свойства в форме
|
||||
|
||||
ServerExecutionSafeModeCheck_description = Отсутствует включение безопасного режима перед вызовом метода "Выполнить" или "Вычислить"
|
||||
|
||||
@ -421,14 +443,3 @@ UseNonRecommendedMethods_message = Используется не рекомен
|
||||
UseNonRecommendedMethods_parameter = Список дополнительных не рекомендуемых методов для проверки
|
||||
|
||||
UseNonRecommendedMethods_title = Использование не рекомендуемых методов
|
||||
|
||||
ModuleUndefinedVariableCheck_Title = Переменная не определена
|
||||
ModuleUndefinedVariableCheck_Description = Переменная не определена
|
||||
ModuleUndefinedVariable_msg = Переменная "{0}" не определена
|
||||
|
||||
ModuleUndefinedMethodCheck_Title = Метод не определен
|
||||
ModuleUndefinedMethodCheck_Description = Функция или процедура не определена
|
||||
ModuleUndefinedFunctionCheck_Title = Функция не определена
|
||||
ModuleUndefinedFunctionCheck_Description = Функция не определена
|
||||
ModuleUndefinedFunction_msg = Функция "{0}" не определена
|
||||
ModuleUndefinedMethod_msg = Процедура или функция "{0}" не определена
|
||||
|
@ -1,3 +1,4 @@
|
||||
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
|
||||
###############################################################################
|
||||
# Copyright (C) 2021-2022, 1C-Soft LLC and others.
|
||||
#
|
||||
@ -10,8 +11,11 @@
|
||||
# Contributors:
|
||||
# 1C-Soft LLC - initial API and implementation
|
||||
###############################################################################
|
||||
RemoveExportFix_Remove_export_keyword_des=Remove Export keyword
|
||||
RemoveExportFix_Remove_export_keyword_det=Remove Export keyword
|
||||
|
||||
ConsecutiveEmptyLinesFix_Details=Clear extra empty lines
|
||||
ConsecutiveEmptyLinesFix_Description=Clear extra empty lines
|
||||
ConsecutiveEmptyLinesFix_Description = Clear extra empty lines
|
||||
|
||||
ConsecutiveEmptyLinesFix_Details = Clear extra empty lines
|
||||
|
||||
RemoveExportFix_Remove_export_keyword_des = Remove Export keyword
|
||||
|
||||
RemoveExportFix_Remove_export_keyword_det = Remove Export keyword
|
||||
|
@ -1,3 +1,4 @@
|
||||
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
|
||||
###############################################################################
|
||||
# Copyright (C) 2021-2022, 1C-Soft LLC and others.
|
||||
#
|
||||
@ -10,8 +11,11 @@
|
||||
# Contributors:
|
||||
# 1C-Soft LLC - initial API and implementation
|
||||
###############################################################################
|
||||
RemoveExportFix_Remove_export_keyword_des=Удалить ключевое слово Экспорт
|
||||
RemoveExportFix_Remove_export_keyword_det=Удалить ключевое слово Экспорт
|
||||
|
||||
ConsecutiveEmptyLinesFix_Details=Очистить пустые строки
|
||||
ConsecutiveEmptyLinesFix_Description=Очистить лишние пустые строки
|
||||
ConsecutiveEmptyLinesFix_Description = Очистить лишние пустые строки
|
||||
|
||||
ConsecutiveEmptyLinesFix_Details = Очистить пустые строки
|
||||
|
||||
RemoveExportFix_Remove_export_keyword_des = Удалить ключевое слово Экспорт
|
||||
|
||||
RemoveExportFix_Remove_export_keyword_det = Удалить ключевое слово Экспорт
|
||||
|
@ -52,7 +52,8 @@ FunctionReturnTypeCheck_description = Check of module strict types system that e
|
||||
|
||||
FunctionReturnTypeCheck_title = Function returns typed value
|
||||
|
||||
InvocationParamIntersectionCheck_Allow_dynamic_types_check_for_local_method_call=Allow dynamic types check for local method call
|
||||
InvocationParamIntersectionCheck_Allow_dynamic_types_check_for_local_method_call = Allow dynamic types check for local method call
|
||||
|
||||
InvocationParamIntersectionCheck_description = Check of module strict types system that invocation expression has intersection with invocation parameter type
|
||||
|
||||
InvocationParamIntersectionCheck_title = Invocation parameter types intersects
|
||||
|
@ -1,3 +1,4 @@
|
||||
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
|
||||
###############################################################################
|
||||
# Copyright (C) 2022, 1C-Soft LLC and others.
|
||||
#
|
||||
@ -10,5 +11,7 @@
|
||||
# Contributors:
|
||||
# 1C-Soft LLC - initial API and implementation
|
||||
###############################################################################
|
||||
RemoveStrictTypesAnnotationFix_Description=Remove @strict-types annotation from module
|
||||
RemoveStrictTypesAnnotationFix_Details=Comment in module header that contains annotation "// @strict-types" will be removed
|
||||
|
||||
RemoveStrictTypesAnnotationFix_Description = Remove @strict-types annotation from module
|
||||
|
||||
RemoveStrictTypesAnnotationFix_Details = Comment in module header that contains annotation "// @strict-types" will be removed
|
||||
|
@ -17,7 +17,7 @@
|
||||
|
||||
#EndRegion
|
||||
|
||||
#Region FormTableItemsEventHandlers//<FromTableName>
|
||||
#Region FormTableItemsEventHandlers //<FromTableName>
|
||||
|
||||
// Enter code here.
|
||||
|
||||
|
@ -17,7 +17,7 @@
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормы//<ИмяТаблицыФормы>
|
||||
#Область ОбработчикиСобытийЭлементовТаблицыФормы //<ИмяТаблицыФормы>
|
||||
|
||||
// Код процедур и функций
|
||||
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.form;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.form.CorePlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.20.0,4.0.0)",
|
||||
@ -40,7 +40,7 @@ Import-Package: com._1c.g5.v8.bm.core;version="[7.5.0,8.0.0)",
|
||||
com.e1c.g5.v8.dt.check.qfix;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.qfix.components;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.settings;version="[3.0.0,4.0.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.5.0,0.6.0)",
|
||||
com.google.common.base;version="[30.1.0,31.0.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)",
|
||||
com.google.inject.binder;version="[5.0.1,6.0.0)"
|
||||
|
@ -18,10 +18,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.form</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
<properties>
|
||||
|
@ -19,11 +19,11 @@ DynamicListItemTitleCheck_message = Title of field of dynamic list is not filled
|
||||
|
||||
DynamicListItemTitleCheck_title = Dynamic list field title is empty
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Description=Each event must have its own handler procedure
|
||||
FormCommandsSingleEventHandlerCheck_Description = Each event must have its own handler procedure
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Handler__0__command__1__assigned_to_command__2=The handler "{0}" of command "{1}" is already assigned to command {2}
|
||||
FormCommandsSingleEventHandlerCheck_Handler__0__command__1__assigned_to_command__2 = The handler "{0}" of command "{1}" is already assigned to command {2}
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Title=One handler assigned to multiple commands
|
||||
FormCommandsSingleEventHandlerCheck_Title = One handler assigned to multiple commands
|
||||
|
||||
FormItemsSingleEventHandlerCheck_description = Each event in the form items should have a unique handler
|
||||
|
||||
|
@ -13,24 +13,18 @@
|
||||
# Manaev Konstantin - issue #855
|
||||
###############################################################################
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Description=У каждого события должна быть назначена своя процедура-обработчик
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Handler__0__command__1__assigned_to_command__2=Обработчик "{0}" команды "{1}" уже назначен для команды {2}
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Title=Один обработчик назначен нескольким командам
|
||||
|
||||
FormListFieldRefNotAddedCheck_The_Ref_field_is_not_added_to_dynamic_list = Реквизит "Ссылка" динамического списка не выведен в таблицу на форме
|
||||
|
||||
FormListFieldRefNotAddedCheck_description = Реквизит "Ссылка" динамического списка не выведен в таблицу на форме
|
||||
|
||||
FormListFieldRefNotAddedCheck_title = Реквизит "Ссылка" динамического списка не выведен в таблицу на форме
|
||||
|
||||
DynamicListItemTitleCheck_Description = Заголовок поля динамического списка пустой
|
||||
|
||||
DynamicListItemTitleCheck_message = Не заполнен заголовок поля динамического списка
|
||||
|
||||
DynamicListItemTitleCheck_title = Заголовок поля динамического списка пустой
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Description = У каждого события должна быть назначена своя процедура-обработчик
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Handler__0__command__1__assigned_to_command__2 = Обработчик "{0}" команды "{1}" уже назначен для команды {2}
|
||||
|
||||
FormCommandsSingleEventHandlerCheck_Title = Один обработчик назначен нескольким командам
|
||||
|
||||
FormItemsSingleEventHandlerCheck_description = У каждого события должна быть назначена своя процедура-обработчик
|
||||
|
||||
FormItemsSingleEventHandlerCheck_itemName_dot_eventName = {0}.{1}
|
||||
@ -39,6 +33,12 @@ FormItemsSingleEventHandlerCheck_the_handler_is_already_assigned_to_event = Об
|
||||
|
||||
FormItemsSingleEventHandlerCheck_title = У события должен быть уникальный обработчик
|
||||
|
||||
FormListFieldRefNotAddedCheck_The_Ref_field_is_not_added_to_dynamic_list = Реквизит "Ссылка" динамического списка не выведен в таблицу на форме
|
||||
|
||||
FormListFieldRefNotAddedCheck_description = Реквизит "Ссылка" динамического списка не выведен в таблицу на форме
|
||||
|
||||
FormListFieldRefNotAddedCheck_title = Реквизит "Ссылка" динамического списка не выведен в таблицу на форме
|
||||
|
||||
FormListRefUseAlwaysFlagDisabledCheck_UseAlways_flag_is_disabled_for_the_Ref_field = У реквизита "Ссылка" динамического списка выключен признак "Использовать всегда"
|
||||
|
||||
FormListRefUseAlwaysFlagDisabledCheck_description = У реквизита "Ссылка" динамического списка выключен признак "Использовать всегда"
|
||||
|
@ -1,3 +1,4 @@
|
||||
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
|
||||
###############################################################################
|
||||
# Copyright (C) 2022, 1C-Soft LLC and others.
|
||||
#
|
||||
@ -10,6 +11,7 @@
|
||||
# Contributors:
|
||||
# 1C-Soft LLC - initial API and implementation
|
||||
###############################################################################
|
||||
|
||||
DynamicListFieldTitleGenerateFix_Default_title = Generate default title for dynamic list field (8.3.19+)
|
||||
|
||||
DynamicListFieldTitleGenerateFix_title = Generate title "{0}" for dynamic list field "{1}"
|
||||
|
@ -1,3 +1,4 @@
|
||||
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
|
||||
###############################################################################
|
||||
# Copyright (C) 2022, 1C-Soft LLC and others.
|
||||
#
|
||||
@ -18,4 +19,4 @@ DynamicListFieldTitleGenerateFix_title = Генерировать заголов
|
||||
|
||||
DynamicListItemTitleGenerateFix_Default_title = Генерировать заголовок по умолчанию для элемента формы динамического списка
|
||||
|
||||
DynamicListItemTitleGenerateFix_title = Генерировать заголовок "{0}" для элемента формы "{1}" динамического списка
|
||||
DynamicListItemTitleGenerateFix_title = Генерировать заголовок "{0}" для элемента формы "{1}" динамического списка
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.md.ui;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.md.ui.UiPlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.ui;bundle-version="[3.119.0,4.0.0)",
|
||||
@ -26,6 +26,6 @@ Import-Package: com._1c.g5.v8.dt.common;version="[6.4.0,7.0.0)",
|
||||
com._1c.g5.v8.dt.ui.wizards;version="[8.0.0,9.0.0)",
|
||||
com._1c.g5.wiring;version="[2.2.0,3.0.0)",
|
||||
com._1c.g5.wiring.binder;version="[1.1.0,2.0.0)",
|
||||
com.e1c.v8codestyle.md;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.md;version="[0.5.0,0.6.0)",
|
||||
com.google.common.base;version="[30.1.0,31.0.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)"
|
||||
|
@ -18,10 +18,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.md.ui</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
</project>
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.md;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.md.CorePlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.18.0,4.0.0)",
|
||||
@ -29,7 +29,7 @@ Import-Package: com._1c.g5.v8.bm.core;version="[7.0.0,8.0.0)",
|
||||
com.e1c.g5.v8.dt.check.context;version="[2.0.0,3.0.0)",
|
||||
com.e1c.g5.v8.dt.check.ext;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.settings;version="[3.0.0,4.0.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.5.0,0.6.0)",
|
||||
com.google.common.base;version="[30.1.0,31.0.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)"
|
||||
Export-Package: com.e1c.v8codestyle.md;version="0.4.0"
|
||||
Export-Package: com.e1c.v8codestyle.md;version="0.5.0"
|
||||
|
@ -0,0 +1,11 @@
|
||||
# Privileged common module should end with FullAccess suffix
|
||||
|
||||
Privileged common module should end with FullAccess suffix
|
||||
|
||||
|
||||
## Noncompliant Code Example
|
||||
|
||||
## Compliant Solution
|
||||
|
||||
## See
|
||||
|
@ -0,0 +1,16 @@
|
||||
# Global client common module should end with Global suffix no Client suffix
|
||||
|
||||
3.2.1. Add the "Global" postfix for global modules. In this case, you do not need to add the "Client" postfix.
|
||||
|
||||
|
||||
## Noncompliant Code Example
|
||||
|
||||
FilesOperationsGlobalClient, InfobaseUpdateGlobalClient.
|
||||
|
||||
## Compliant Solution
|
||||
|
||||
FilesOperationsGlobal, InfobaseUpdateGlobal.
|
||||
|
||||
## See
|
||||
|
||||
[Common modules creating rules](https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_Development_Standards/Creating_and_modifying_metadata_objects/Configuration_operation_arrangement/Common_modules_creating_rules/)
|
@ -0,0 +1,17 @@
|
||||
# In document that require posting don't set flat "Post (unpost) in privileged mode"
|
||||
|
||||
All documents that require posting must have the "Privileged mode for posting"
|
||||
and "Privileged mode for unposting" check boxes selected. Therefore it is not necessary
|
||||
to create roles that grant rights to change registers subordinate to recorders.
|
||||
|
||||
Exception: documents intended for direct adjustment of register records can be posted
|
||||
with access right verification, but in this case, it is necessary to include roles that
|
||||
grant rights to change registers.
|
||||
|
||||
## Noncompliant Solution
|
||||
|
||||
## Compliant Solution
|
||||
|
||||
## See
|
||||
|
||||
[Configuring roles and access rights](https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_Development_Standards/Setting_data_access_rights/Configuring_roles_and_access_rights/)
|
@ -0,0 +1,18 @@
|
||||
# Attribute "Comment" for documents
|
||||
|
||||
For all documents, it is recommended to create the Comment attribute (string of unlimited length).
|
||||
In this attribute, users can write down various notes of an official nature on the document
|
||||
that are not related to the application specifics of the document (for example, the reason for marking for deletion, etc.).
|
||||
Access to the attribute for users must be configured in the same way as to the document itself
|
||||
(if the document is read-only, then the comment is read-only; if there is write access to the document,
|
||||
then the value of the attribute can also be changed).
|
||||
|
||||
Multiline edit must be enabled.
|
||||
|
||||
## Noncompliant Code Example
|
||||
|
||||
## Compliant Solution
|
||||
|
||||
## See
|
||||
|
||||
[Attribute "Comment" for documents](https://its.1c.ru/db/v8std#content:531:hdoc:1)
|
@ -0,0 +1,18 @@
|
||||
# Document does not have the "Comment" attribute
|
||||
|
||||
For all documents, it is recommended to create the attribute Comment
|
||||
(string of unlimited length). In this prop, users can
|
||||
write down various official notes on the document, which
|
||||
do not relate to the application specifics of the document (for example, the reason for marking
|
||||
for deletions, etc.). Access to props for users should be
|
||||
configured in the same way as for the document itself (if the document is available only
|
||||
for reading, then the comment is read-only; if there is a right
|
||||
document record, then the attribute value can also be changed).
|
||||
|
||||
## Неправильно
|
||||
|
||||
## Правильно
|
||||
|
||||
## См.
|
||||
|
||||
[Document does not have the "Comment" attribute](https://its.1c.ru/db/v8std#content:531:hdoc:1)
|
@ -0,0 +1,12 @@
|
||||
# Привилегированный общий модуль должен оканчиваться на суффикс ПолныеПрава
|
||||
|
||||
Привилегированный общий модуль должен оканчиваться на суффикс ПолныеПрава
|
||||
|
||||
|
||||
## Неправильно
|
||||
|
||||
## Правильно
|
||||
|
||||
## См.
|
||||
|
||||
[Правила создания общих модулей](https://its.1c.ru/db/v8std#content:469:hdoc:3.2.2)
|
@ -0,0 +1,17 @@
|
||||
# Глобальный клиентский общий модуль должен оканчиваться на суффикс Глобальный без суффикса Клиент
|
||||
|
||||
3.2.1. Для глобальных модулей добавляется постфикс «Глобальный», в
|
||||
этом случае постфикс «Клиент» добавлять не следует.
|
||||
|
||||
|
||||
## Неправильно
|
||||
|
||||
РаботаСФайламиГлобальныйКлиент
|
||||
|
||||
## Правильно
|
||||
|
||||
РаботаСФайламиГлобальный
|
||||
|
||||
## См.
|
||||
|
||||
[Правила создания общих модулей](https://its.1c.ru/db/v8std#content:469:hdoc:3.2.1)
|
@ -0,0 +1,20 @@
|
||||
# В документе, предполагающем проведение, не установлен флаг "Привилегированный режим при проведении / отмене проведения"
|
||||
|
||||
1.7. Во всех документах, предполагающих проведение, должны быть
|
||||
выставлены флаги «Привилегированный режим при проведении» и
|
||||
«Привилегированный режим при отмене проведения», поэтому не нужно
|
||||
создавать роли, дающие права на изменение регистров, подчиненных
|
||||
регистраторам.
|
||||
|
||||
Исключение: документы, предназначенные для непосредственной
|
||||
корректировки записей регистров, могут проводиться с проверкой прав
|
||||
доступа, но в этом случае необходимо предусмотреть роли, дающие права на
|
||||
изменение регистров.
|
||||
|
||||
## Неправильно
|
||||
|
||||
## Правильно
|
||||
|
||||
## См.
|
||||
|
||||
[Настройка ролей и прав доступа](https://its.1c.ru/db/v8std#content:689:hdoc:1.7)
|
@ -0,0 +1,21 @@
|
||||
# Реквизит «Комментарий» у документов
|
||||
|
||||
Для всех документов рекомендуется создавать реквизит Комментарий
|
||||
(строка неограниченной длины). В этом реквизите пользователи могут
|
||||
записывать по документу различные заметки служебного характера, которые
|
||||
не относятся к прикладной специфике документа (например, причина пометки
|
||||
на удаления и т.п.). Доступ к реквизиту для пользователей должен быть
|
||||
настроен также как и к самому документу (если документ доступен только
|
||||
для чтения, то и комментарий – только для чтения; если же есть право
|
||||
записи документа, то и значение реквизита также можно изменять).
|
||||
|
||||
Свойство "Многострочный режим" у реквизита должно быть включено.
|
||||
быть включено.
|
||||
|
||||
## Неправильно
|
||||
|
||||
## Правильно
|
||||
|
||||
## См.
|
||||
|
||||
[Реквизит «Комментарий» у документов](https://its.1c.ru/db/v8std#content:531:hdoc:1)
|
@ -0,0 +1,18 @@
|
||||
# Документ не имеет реквизита "Комментарий"
|
||||
|
||||
Для всех документов рекомендуется создавать реквизит Комментарий
|
||||
(строка неограниченной длины). В этом реквизите пользователи могут
|
||||
записывать по документу различные заметки служебного характера, которые
|
||||
не относятся к прикладной специфике документа (например, причина пометки
|
||||
на удаления и т.п.). Доступ к реквизиту для пользователей должен быть
|
||||
настроен также как и к самому документу (если документ доступен только
|
||||
для чтения, то и комментарий – только для чтения; если же есть право
|
||||
записи документа, то и значение реквизита также можно изменять).
|
||||
|
||||
## Неправильно
|
||||
|
||||
## Правильно
|
||||
|
||||
## См.
|
||||
|
||||
[Реквизит «Комментарий» у документов](https://its.1c.ru/db/v8std#content:531:hdoc:1)
|
@ -98,10 +98,30 @@
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.md.check.SubsystemSynonymTooLongCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.internal.md.ExecutableExtensionFactory:com.e1c.v8codestyle.md.check.CommonModuleNameGlobalClientCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.md.check.CommonModuleNamePrivilegedCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.internal.md.ExecutableExtensionFactory:com.e1c.v8codestyle.md.check.ExtensionMdObjectNamePrefixCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.md.check.DocumentPostInPrivilegedModeCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.md.check.MdObjectAttributeCommentCheck">
|
||||
</check>
|
||||
<check
|
||||
category="com.e1c.v8codestyle.md"
|
||||
class="com.e1c.v8codestyle.md.check.MdObjectAttributeCommentNotExistCheck">
|
||||
</check>
|
||||
</extension>
|
||||
|
||||
</plugin>
|
||||
|
@ -18,10 +18,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.md</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
<properties>
|
||||
|
@ -66,8 +66,8 @@ public final class CommonModuleNameGlobal
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
//@formatter:off
|
||||
builder.title(Messages.CommonModuleNameGlobal_title)
|
||||
.description(Messages.CommonModuleNameGlobal_description)
|
||||
builder.title(Messages.CommonModuleNameGlobal_Title)
|
||||
.description(Messages.CommonModuleNameGlobal_Description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.CRITICAL)
|
||||
.issueType(IssueType.WARNING)
|
||||
@ -111,7 +111,7 @@ public final class CommonModuleNameGlobal
|
||||
return;
|
||||
}
|
||||
|
||||
String message = MessageFormat.format(Messages.CommonModuleNameGlobal_message,
|
||||
String message = MessageFormat.format(Messages.CommonModuleNameGlobal_Message,
|
||||
parameters.getString(MdObjectNameWithoutSuffix.NAME_SUFFIX_PARAMETER_NAME));
|
||||
resultAceptor.addIssue(message, MD_OBJECT__NAME);
|
||||
}
|
||||
|
@ -0,0 +1,104 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2022, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
*******************************************************************************/
|
||||
package com.e1c.v8codestyle.md.check;
|
||||
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.COMMON_MODULE;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.COMMON_MODULE__GLOBAL;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.MD_OBJECT__NAME;
|
||||
|
||||
import java.text.MessageFormat;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
|
||||
import com._1c.g5.v8.dt.core.platform.IV8Project;
|
||||
import com._1c.g5.v8.dt.core.platform.IV8ProjectManager;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.CommonModule;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.ScriptVariant;
|
||||
import com.e1c.g5.v8.dt.check.CheckComplexity;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.BasicCheck;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueSeverity;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueType;
|
||||
import com.e1c.v8codestyle.check.StandardCheckExtension;
|
||||
import com.e1c.v8codestyle.internal.md.CorePlugin;
|
||||
import com.google.inject.Inject;
|
||||
|
||||
/**
|
||||
* Checks client global common module name has not "Client" suffix
|
||||
*
|
||||
* @author Artem Iliukhin
|
||||
*/
|
||||
public class CommonModuleNameGlobalClientCheck
|
||||
extends BasicCheck
|
||||
{
|
||||
|
||||
private static final String CHECK_ID = "common-module-name-global-client"; //$NON-NLS-1$
|
||||
private static final String NAME_SUFFIX_RU = "Клиент"; //$NON-NLS-1$
|
||||
private static final String NAME_SUFFIX_EN = "Client"; //$NON-NLS-1$
|
||||
|
||||
private final IV8ProjectManager v8ProjectManager;
|
||||
|
||||
/**
|
||||
* Instantiates a new common module name global client check.
|
||||
*
|
||||
* @param v8ProjectManager
|
||||
*/
|
||||
@Inject
|
||||
public CommonModuleNameGlobalClientCheck(IV8ProjectManager v8ProjectManager)
|
||||
{
|
||||
super();
|
||||
this.v8ProjectManager = v8ProjectManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCheckId()
|
||||
{
|
||||
return CHECK_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
builder.title(Messages.CommonModuleNameGlobalClientCheck_Title)
|
||||
.description(Messages.CommonModuleNameGlobalClientCheck_Description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.CRITICAL)
|
||||
.issueType(IssueType.WARNING)
|
||||
.extension(new StandardCheckExtension(469, getCheckId(), CorePlugin.PLUGIN_ID))
|
||||
.topObject(COMMON_MODULE)
|
||||
.checkTop()
|
||||
.features(MD_OBJECT__NAME, COMMON_MODULE__GLOBAL);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void check(Object object, ResultAcceptor resultAceptor, ICheckParameters parameters,
|
||||
IProgressMonitor monitor)
|
||||
{
|
||||
CommonModule commonModule = (CommonModule)object;
|
||||
if (!commonModule.isGlobal())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
IV8Project project = v8ProjectManager.getProject(commonModule);
|
||||
ScriptVariant variant = project == null ? ScriptVariant.ENGLISH : project.getScriptVariant();
|
||||
|
||||
String name = commonModule.getName();
|
||||
String suffix = ScriptVariant.ENGLISH == variant ? NAME_SUFFIX_EN : NAME_SUFFIX_RU;
|
||||
if (name.contains(suffix))
|
||||
{
|
||||
String message = MessageFormat.format(Messages.CommonModuleNameGlobalClientCheck_Message, suffix);
|
||||
resultAceptor.addIssue(message, MD_OBJECT__NAME);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,83 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2022, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
*******************************************************************************/
|
||||
package com.e1c.v8codestyle.md.check;
|
||||
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.COMMON_MODULE;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.COMMON_MODULE__PRIVILEGED;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.MD_OBJECT__NAME;
|
||||
|
||||
import java.text.MessageFormat;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.CommonModule;
|
||||
import com.e1c.g5.v8.dt.check.CheckComplexity;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.BasicCheck;
|
||||
import com.e1c.g5.v8.dt.check.components.TopObjectFilterExtension;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueSeverity;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueType;
|
||||
import com.e1c.v8codestyle.check.StandardCheckExtension;
|
||||
import com.e1c.v8codestyle.internal.md.CorePlugin;
|
||||
|
||||
/**
|
||||
* Check privileged common module name has "FullAccess" suffix
|
||||
*
|
||||
* @author Artem Iliukhin
|
||||
*/
|
||||
public class CommonModuleNamePrivilegedCheck
|
||||
extends BasicCheck
|
||||
{
|
||||
|
||||
private static final String CHECK_ID = "common-module-name-full-access"; //$NON-NLS-1$
|
||||
|
||||
private static final String NAME_SUFFIX_DEFAULT = "ПолныеПрава,FullAccess"; //$NON-NLS-1$
|
||||
|
||||
@Override
|
||||
public String getCheckId()
|
||||
{
|
||||
return CHECK_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
builder.title(Messages.CommonModuleNamePrivilegedCheck_Title)
|
||||
.description(Messages.CommonModuleNamePrivilegedCheck_Description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.CRITICAL)
|
||||
.issueType(IssueType.WARNING)
|
||||
.extension(new TopObjectFilterExtension())
|
||||
.extension(new MdObjectNameWithoutSuffix(NAME_SUFFIX_DEFAULT))
|
||||
.extension(new StandardCheckExtension(469, getCheckId(), CorePlugin.PLUGIN_ID))
|
||||
.extension(new SkipAdoptedInExtensionMdObjectExtension())
|
||||
.topObject(COMMON_MODULE)
|
||||
.checkTop()
|
||||
.features(MD_OBJECT__NAME, COMMON_MODULE__PRIVILEGED);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void check(Object object, ResultAcceptor resultAceptor, ICheckParameters parameters,
|
||||
IProgressMonitor monitor)
|
||||
{
|
||||
CommonModule commonModule = (CommonModule)object;
|
||||
if (!commonModule.isPrivileged())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
String message = MessageFormat.format(Messages.CommonModuleNamePrivilegedCheck_Issue,
|
||||
parameters.getString(MdObjectNameWithoutSuffix.NAME_SUFFIX_PARAMETER_NAME));
|
||||
resultAceptor.addIssue(message, MD_OBJECT__NAME);
|
||||
}
|
||||
}
|
@ -0,0 +1,108 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2023, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
package com.e1c.v8codestyle.md.check;
|
||||
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT__POSTING;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT__POST_IN_PRIVILEGED_MODE;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT__UNPOST_IN_PRIVILEGED_MODE;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT__REGISTER_RECORDS;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.Document;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.Posting;
|
||||
import com.e1c.g5.v8.dt.check.CheckComplexity;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.BasicCheck;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueSeverity;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueType;
|
||||
import com.e1c.v8codestyle.check.StandardCheckExtension;
|
||||
import com.e1c.v8codestyle.internal.md.CorePlugin;
|
||||
|
||||
/**
|
||||
* The check that in the document that allow posting set flags "Post in privileged mode"
|
||||
* and "Unpost in privileged mode".
|
||||
*
|
||||
* @author Vadim Gocnharov
|
||||
*/
|
||||
public class DocumentPostInPrivilegedModeCheck
|
||||
extends BasicCheck
|
||||
{
|
||||
|
||||
private static final String CHECK_ID = "document-post-in-privileged-mode"; //$NON-NLS-1$
|
||||
|
||||
public DocumentPostInPrivilegedModeCheck()
|
||||
{
|
||||
super();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCheckId()
|
||||
{
|
||||
return CHECK_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
builder.title(Messages.DocumentPostInPrivilegedModeCheck_title)
|
||||
.description(Messages.DocumentPostInPrivilegedModeCheck_description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.MAJOR)
|
||||
.issueType(IssueType.WARNING)
|
||||
.extension(new StandardCheckExtension(689, getCheckId(), CorePlugin.PLUGIN_ID))
|
||||
.extension(new SkipAdoptedInExtensionMdObjectExtension())
|
||||
.topObject(DOCUMENT)
|
||||
.checkTop()
|
||||
.features(DOCUMENT__POSTING, DOCUMENT__POST_IN_PRIVILEGED_MODE, DOCUMENT__UNPOST_IN_PRIVILEGED_MODE,
|
||||
DOCUMENT__REGISTER_RECORDS);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void check(Object object, ResultAcceptor resultAcceptor, ICheckParameters parameters,
|
||||
IProgressMonitor monitor)
|
||||
{
|
||||
|
||||
Document document = (Document)object;
|
||||
if (monitor.isCanceled() || !documentRequirePosting(document) || !documentHaveRegisterRecords(document))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!document.isPostInPrivilegedMode())
|
||||
{
|
||||
resultAcceptor.addIssue(Messages.DocumentPostInPrivilegedModeCheck_message_Post_in_privileged_mode,
|
||||
DOCUMENT__POST_IN_PRIVILEGED_MODE);
|
||||
}
|
||||
|
||||
if (!document.isUnpostInPrivilegedMode())
|
||||
{
|
||||
resultAcceptor.addIssue(Messages.DocumentPostInPrivilegedModeCheck_message_Unpost_in_privileged_mode,
|
||||
DOCUMENT__UNPOST_IN_PRIVILEGED_MODE);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private boolean documentRequirePosting(Document doc)
|
||||
{
|
||||
return doc.getPosting() == Posting.ALLOW;
|
||||
}
|
||||
|
||||
private boolean documentHaveRegisterRecords(Document doc)
|
||||
{
|
||||
return !doc.getRegisterRecords().isEmpty();
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,214 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2023, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
* Vadim Goncharov - issue #133
|
||||
*******************************************************************************/
|
||||
|
||||
package com.e1c.v8codestyle.md.check;
|
||||
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.BASIC_FEATURE__MULTI_LINE;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.BASIC_FEATURE__TYPE;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.CATALOG;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.CATALOG_ATTRIBUTE;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT_ATTRIBUTE;
|
||||
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
import org.eclipse.emf.ecore.EObject;
|
||||
|
||||
import com._1c.g5.v8.dt.mcore.StringQualifiers;
|
||||
import com._1c.g5.v8.dt.mcore.TypeDescription;
|
||||
import com._1c.g5.v8.dt.mcore.TypeItem;
|
||||
import com._1c.g5.v8.dt.mcore.util.McoreUtil;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.BasicFeature;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.CatalogAttribute;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.DefinedType;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.DocumentAttribute;
|
||||
import com._1c.g5.v8.dt.platform.IEObjectTypeNames;
|
||||
import com.e1c.g5.v8.dt.check.CheckComplexity;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.BasicCheck;
|
||||
import com.e1c.g5.v8.dt.check.components.TopObjectFilterExtension;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueSeverity;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueType;
|
||||
import com.e1c.v8codestyle.check.StandardCheckExtension;
|
||||
import com.e1c.v8codestyle.internal.md.CorePlugin;
|
||||
|
||||
/**
|
||||
* Check attributes of catalogs and documents that named "Comment".
|
||||
* The attribute must be of the unlimited string type. Multiline edit must be enabled.
|
||||
*
|
||||
* @author Vadim Goncharov
|
||||
*/
|
||||
public class MdObjectAttributeCommentCheck
|
||||
extends BasicCheck
|
||||
{
|
||||
|
||||
private static final String CHECK_ID = "md-object-attribute-comment-incorrect-type"; //$NON-NLS-1$
|
||||
|
||||
public static final String PARAM_CHECK_DOCUMENTS = "checkDocuments"; //$NON-NLS-1$
|
||||
public static final String PARAM_CHECK_CATALOGS = "checkCatalogs"; //$NON-NLS-1$
|
||||
public static final String PARAM_ATTRIBUTES_LIST = "attributesList"; //$NON-NLS-1$
|
||||
|
||||
public static final String DEFAULT_CHECK_DOCUMENTS = Boolean.toString(true);
|
||||
public static final String DEFAULT_CHECK_CATALOGS = Boolean.toString(false);
|
||||
|
||||
private static final Set<String> COMMENT_ATTRIBUTES_LIST = Set.of("Комментарий", //$NON-NLS-1$
|
||||
"Comment"); //$NON-NLS-1$
|
||||
private static final String DELIMITER = ","; //$NON-NLS-1$
|
||||
public static final String DEFAULT_ATTRIBUTES_LIST = String.join(DELIMITER, COMMENT_ATTRIBUTES_LIST);
|
||||
|
||||
private static final String DEFAULT_CHECK_MESSAGE = Messages.MdObjectAttributeCommentCheck_Default_check_message;
|
||||
|
||||
public MdObjectAttributeCommentCheck()
|
||||
{
|
||||
super();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
builder.title(Messages.MdObjectAttributeCommentCheck_title)
|
||||
.description(Messages.MdObjectAttributeCommentCheck_description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.MINOR)
|
||||
.issueType(IssueType.UI_STYLE)
|
||||
.extension(new StandardCheckExtension(531, getCheckId(), CorePlugin.PLUGIN_ID))
|
||||
.extension(new SkipAdoptedInExtensionMdObjectExtension())
|
||||
.extension(new TopObjectFilterExtension())
|
||||
.parameter(PARAM_ATTRIBUTES_LIST, String.class, DEFAULT_ATTRIBUTES_LIST,
|
||||
Messages.MdObjectAttributeCommentCheck_Attribute_list);
|
||||
|
||||
builder.topObject(CATALOG)
|
||||
.containment(CATALOG_ATTRIBUTE)
|
||||
.features(BASIC_FEATURE__TYPE, BASIC_FEATURE__MULTI_LINE)
|
||||
.parameter(PARAM_CHECK_CATALOGS, Boolean.class, DEFAULT_CHECK_CATALOGS,
|
||||
Messages.MdObjectAttributeCommentCheck_Check_catalogs_param);
|
||||
|
||||
builder.topObject(DOCUMENT)
|
||||
.containment(DOCUMENT_ATTRIBUTE)
|
||||
.features(BASIC_FEATURE__TYPE, BASIC_FEATURE__MULTI_LINE)
|
||||
.parameter(PARAM_CHECK_DOCUMENTS, Boolean.class, DEFAULT_CHECK_DOCUMENTS,
|
||||
Messages.MdObjectAttributeCommentCheck_Check_documents_param);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCheckId()
|
||||
{
|
||||
return CHECK_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void check(Object object, ResultAcceptor resultAceptor, ICheckParameters parameters,
|
||||
IProgressMonitor monitor)
|
||||
{
|
||||
|
||||
boolean checkCatalogs = parameters.getBoolean(PARAM_CHECK_CATALOGS);
|
||||
boolean checkDocuments = parameters.getBoolean(PARAM_CHECK_DOCUMENTS);
|
||||
Set<String> attributeList = getListOfAttributes(parameters);
|
||||
|
||||
BasicFeature attribute = (BasicFeature)object;
|
||||
String attributeName = attribute.getName();
|
||||
|
||||
if (!attributeList.contains(attributeName))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!monitor.isCanceled() && checkDocuments && isDocumentAttribute(object))
|
||||
{
|
||||
checkAttribute(attribute, resultAceptor);
|
||||
}
|
||||
|
||||
if (!monitor.isCanceled() && checkCatalogs && isCatalogAttribute(object))
|
||||
{
|
||||
checkAttribute(attribute, resultAceptor);
|
||||
}
|
||||
}
|
||||
|
||||
private void checkAttribute(BasicFeature attribute, ResultAcceptor resultAceptor)
|
||||
{
|
||||
checkAttritubeType(attribute, resultAceptor);
|
||||
checkAttributeIsMultiline(attribute, resultAceptor);
|
||||
}
|
||||
|
||||
private void checkAttritubeType(BasicFeature attribute, ResultAcceptor resultAceptor)
|
||||
{
|
||||
TypeDescription typeDesc = attribute.getType();
|
||||
if (McoreUtil.isCompoundType(typeDesc))
|
||||
{
|
||||
resultAceptor.addIssue(DEFAULT_CHECK_MESSAGE, BASIC_FEATURE__TYPE);
|
||||
return;
|
||||
}
|
||||
|
||||
TypeItem item = typeDesc.getTypes().get(0);
|
||||
if (IEObjectTypeNames.DEFINED_TYPE.equals(McoreUtil.getTypeCategory(item)))
|
||||
{
|
||||
EObject definedType = item.eContainer();
|
||||
while (definedType != null && !(definedType instanceof DefinedType))
|
||||
{
|
||||
definedType = definedType.eContainer();
|
||||
}
|
||||
if (definedType instanceof DefinedType)
|
||||
{
|
||||
typeDesc = ((DefinedType)definedType).getType();
|
||||
}
|
||||
}
|
||||
|
||||
StringQualifiers qualifiers = typeDesc.getStringQualifiers();
|
||||
if (qualifiers == null)
|
||||
{
|
||||
resultAceptor.addIssue(DEFAULT_CHECK_MESSAGE, BASIC_FEATURE__TYPE);
|
||||
return;
|
||||
}
|
||||
|
||||
if (qualifiers.getLength() != 0)
|
||||
{
|
||||
resultAceptor.addIssue(DEFAULT_CHECK_MESSAGE, BASIC_FEATURE__TYPE);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void checkAttributeIsMultiline(BasicFeature attribute, ResultAcceptor resultAceptor)
|
||||
{
|
||||
if (!attribute.isMultiLine())
|
||||
{
|
||||
resultAceptor.addIssue(DEFAULT_CHECK_MESSAGE, BASIC_FEATURE__MULTI_LINE);
|
||||
}
|
||||
}
|
||||
|
||||
private Set<String> getListOfAttributes(ICheckParameters parameters)
|
||||
{
|
||||
Set<String> attributes = new TreeSet<>(String.CASE_INSENSITIVE_ORDER);
|
||||
|
||||
String paramAttributesString = parameters.getString(PARAM_ATTRIBUTES_LIST);
|
||||
Set<String> paramsAttributes = Set.of(paramAttributesString.replace(" ", "").split(DELIMITER)); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
|
||||
attributes.addAll(paramsAttributes);
|
||||
|
||||
return attributes;
|
||||
}
|
||||
|
||||
private boolean isCatalogAttribute(Object object)
|
||||
{
|
||||
return object instanceof CatalogAttribute;
|
||||
}
|
||||
|
||||
private boolean isDocumentAttribute(Object object)
|
||||
{
|
||||
return object instanceof DocumentAttribute;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,182 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (C) 2023, 1C-Soft LLC and others.
|
||||
*
|
||||
* This program and the accompanying materials are made
|
||||
* available under the terms of the Eclipse Public License 2.0
|
||||
* which is available at https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* 1C-Soft LLC - initial API and implementation
|
||||
* Vadim Gocnharov - issue #487
|
||||
*******************************************************************************/
|
||||
|
||||
package com.e1c.v8codestyle.md.check;
|
||||
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.CATALOG;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.CATALOG__ATTRIBUTES;
|
||||
import static com._1c.g5.v8.dt.metadata.mdclass.MdClassPackage.Literals.DOCUMENT__ATTRIBUTES;
|
||||
|
||||
import org.eclipse.core.runtime.IProgressMonitor;
|
||||
import org.eclipse.emf.common.util.EList;
|
||||
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.Catalog;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.CatalogAttribute;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.DbObjectAttribute;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.Document;
|
||||
import com._1c.g5.v8.dt.metadata.mdclass.DocumentAttribute;
|
||||
import com.e1c.g5.v8.dt.check.CheckComplexity;
|
||||
import com.e1c.g5.v8.dt.check.ICheckParameters;
|
||||
import com.e1c.g5.v8.dt.check.components.BasicCheck;
|
||||
import com.e1c.g5.v8.dt.check.components.TopObjectFilterExtension;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueSeverity;
|
||||
import com.e1c.g5.v8.dt.check.settings.IssueType;
|
||||
import com.e1c.v8codestyle.check.StandardCheckExtension;
|
||||
import com.e1c.v8codestyle.internal.md.CorePlugin;
|
||||
|
||||
/**
|
||||
* Check top Metadata object (Catalog or Document) have attribute named "Comment"
|
||||
*
|
||||
* @author Vadim Goncharov
|
||||
*/
|
||||
public class MdObjectAttributeCommentNotExistCheck
|
||||
extends BasicCheck
|
||||
{
|
||||
|
||||
private static final String CHECK_ID = "md-object-attribute-comment-not-exist"; //$NON-NLS-1$
|
||||
|
||||
public static final String PARAM_CHECK_DOCUMENTS = "checkDocuments"; //$NON-NLS-1$
|
||||
public static final String PARAM_CHECK_CATALOGS = "checkCatalogs"; //$NON-NLS-1$
|
||||
public static final String PARAM_ATTRIBUTE_NAMES_LIST = "attributesList"; //$NON-NLS-1$
|
||||
|
||||
public static final String DEFAULT_CHECK_DOCUMENTS = Boolean.toString(true);
|
||||
public static final String DEFAULT_CHECK_CATALOGS = Boolean.toString(false);
|
||||
private static final Set<String> ATTRIBUTE_NAMES_LIST = Set.of("Комментарий", //$NON-NLS-1$
|
||||
"Comment"); //$NON-NLS-1$
|
||||
private static final String DELIMITER = ","; //$NON-NLS-1$
|
||||
public static final String DEFAULT_ATTRIBUTE_NAMES_LIST = String.join(DELIMITER, ATTRIBUTE_NAMES_LIST);
|
||||
|
||||
public MdObjectAttributeCommentNotExistCheck()
|
||||
{
|
||||
super();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCheckId()
|
||||
{
|
||||
return CHECK_ID;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureCheck(CheckConfigurer builder)
|
||||
{
|
||||
builder.title(Messages.MdObjectAttributeCommentNotExist_title)
|
||||
.description(Messages.MdObjectAttributeCommentNotExist_description)
|
||||
.complexity(CheckComplexity.NORMAL)
|
||||
.severity(IssueSeverity.MINOR)
|
||||
.issueType(IssueType.UI_STYLE)
|
||||
.extension(new StandardCheckExtension(531, getCheckId(), CorePlugin.PLUGIN_ID))
|
||||
.extension(new SkipAdoptedInExtensionMdObjectExtension())
|
||||
.extension(new TopObjectFilterExtension())
|
||||
.parameter(PARAM_ATTRIBUTE_NAMES_LIST, String.class, DEFAULT_ATTRIBUTE_NAMES_LIST,
|
||||
Messages.MdObjectAttributeCommentNotExist_Param_Attribute_name_list);
|
||||
|
||||
builder.topObject(DOCUMENT)
|
||||
.checkTop()
|
||||
.features(DOCUMENT__ATTRIBUTES)
|
||||
.parameter(PARAM_CHECK_DOCUMENTS, Boolean.class, DEFAULT_CHECK_DOCUMENTS,
|
||||
Messages.MdObjectAttributeCommentNotExist_Param_Check_Documents);
|
||||
|
||||
builder.topObject(CATALOG)
|
||||
.checkTop()
|
||||
.features(CATALOG__ATTRIBUTES)
|
||||
.parameter(PARAM_CHECK_CATALOGS, Boolean.class, DEFAULT_CHECK_CATALOGS,
|
||||
Messages.MdObjectAttributeCommentNotExist_Param_Check_Catalogs);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void check(Object object, ResultAcceptor resultAcceptor, ICheckParameters parameters,
|
||||
IProgressMonitor monitor)
|
||||
{
|
||||
|
||||
boolean attributeExist = false;
|
||||
|
||||
boolean checkCatalogs = parameters.getBoolean(PARAM_CHECK_CATALOGS);
|
||||
boolean checkDocuments = parameters.getBoolean(PARAM_CHECK_DOCUMENTS);
|
||||
Set<String> attributeNamesList = getListOfAttributeNames(parameters);
|
||||
|
||||
if (monitor.isCanceled())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (object instanceof Document && checkDocuments)
|
||||
{
|
||||
Document document = (Document)object;
|
||||
EList<DocumentAttribute> attributes = document.getAttributes();
|
||||
for (DbObjectAttribute attribute : attributes)
|
||||
{
|
||||
|
||||
if (monitor.isCanceled())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (isAttributeNamedComment(attribute, attributeNamesList))
|
||||
{
|
||||
attributeExist = true;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
else if (object instanceof Catalog && checkCatalogs)
|
||||
{
|
||||
Catalog catalog = (Catalog)object;
|
||||
EList<CatalogAttribute> attributes = catalog.getAttributes();
|
||||
for (DbObjectAttribute attribute : attributes)
|
||||
{
|
||||
|
||||
if (monitor.isCanceled())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (isAttributeNamedComment(attribute, attributeNamesList))
|
||||
{
|
||||
attributeExist = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!monitor.isCanceled() && !attributeExist)
|
||||
{
|
||||
resultAcceptor
|
||||
.addIssue(Messages.MdObjectAttributeCommentNotExist_Md_Object_attribute_Comment_does_not_exist, object);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private boolean isAttributeNamedComment(DbObjectAttribute attribute, Set<String> attributeNamesList)
|
||||
{
|
||||
return attributeNamesList.contains(attribute.getName());
|
||||
}
|
||||
|
||||
private Set<String> getListOfAttributeNames(ICheckParameters parameters)
|
||||
{
|
||||
Set<String> attributeNames = new TreeSet<>(String.CASE_INSENSITIVE_ORDER);
|
||||
|
||||
String paramAttributesString = parameters.getString(PARAM_ATTRIBUTE_NAMES_LIST);
|
||||
Set<String> paramsAttributeNames = Set.of(paramAttributesString.replace(" ", "").split(DELIMITER)); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
|
||||
attributeNames.addAll(paramsAttributeNames);
|
||||
|
||||
return attributeNames;
|
||||
}
|
||||
}
|
@ -27,14 +27,32 @@ final class Messages
|
||||
public static String DbObjectRefNonRefTypesCheck_Description;
|
||||
public static String DbObjectRefNonRefTypesCheck_Ref_and_other;
|
||||
public static String DbObjectRefNonRefTypesCheck_Title;
|
||||
public static String MdObjectAttributeCommentCheck_Attribute_list;
|
||||
public static String MdObjectAttributeCommentCheck_Check_catalogs_param;
|
||||
public static String MdObjectAttributeCommentCheck_Check_documents_param;
|
||||
public static String MdObjectAttributeCommentCheck_Default_check_message;
|
||||
public static String MdObjectAttributeCommentCheck_description;
|
||||
public static String MdObjectAttributeCommentCheck_title;
|
||||
public static String MdObjectAttributeCommentNotExist_description;
|
||||
public static String MdObjectAttributeCommentNotExist_Md_Object_attribute_Comment_does_not_exist;
|
||||
public static String MdObjectAttributeCommentNotExist_Param_Check_Catalogs;
|
||||
public static String MdObjectAttributeCommentNotExist_Param_Check_Documents;
|
||||
public static String MdObjectAttributeCommentNotExist_Param_Attribute_name_list;
|
||||
public static String MdObjectAttributeCommentNotExist_title;
|
||||
public static String MdObjectNameWithoutSuffix_Name_suffix_list_title;
|
||||
public static String CommonModuleNameClient_title;
|
||||
public static String CommonModuleNameClientServer_description;
|
||||
public static String CommonModuleNameClientServer_message;
|
||||
public static String CommonModuleNameClientServer_title;
|
||||
public static String CommonModuleNameGlobal_description;
|
||||
public static String CommonModuleNameGlobal_message;
|
||||
public static String CommonModuleNameGlobal_title;
|
||||
public static String CommonModuleNamePrivilegedCheck_Description;
|
||||
public static String CommonModuleNamePrivilegedCheck_Issue;
|
||||
public static String CommonModuleNamePrivilegedCheck_Title;
|
||||
public static String CommonModuleNameGlobal_Description;
|
||||
public static String CommonModuleNameGlobal_Message;
|
||||
public static String CommonModuleNameGlobal_Title;
|
||||
public static String CommonModuleNameGlobalClientCheck_Description;
|
||||
public static String CommonModuleNameGlobalClientCheck_Message;
|
||||
public static String CommonModuleNameGlobalClientCheck_Title;
|
||||
public static String CommonModuleType_description;
|
||||
public static String CommonModuleType_message;
|
||||
public static String CommonModuleType_title;
|
||||
@ -47,6 +65,10 @@ final class Messages
|
||||
public static String DbObjectAnyRefCheck_AnyRef;
|
||||
public static String DbObjectAnyRefCheck_Description;
|
||||
public static String DbObjectAnyRefCheck_Title;
|
||||
public static String DocumentPostInPrivilegedModeCheck_description;
|
||||
public static String DocumentPostInPrivilegedModeCheck_message_Post_in_privileged_mode;
|
||||
public static String DocumentPostInPrivilegedModeCheck_message_Unpost_in_privileged_mode;
|
||||
public static String DocumentPostInPrivilegedModeCheck_title;
|
||||
public static String ExtensionMdObjectNamePrefixCheck_Description;
|
||||
public static String ExtensionMdObjectNamePrefixCheck_Object_0_should_have_1_prefix;
|
||||
public static String ExtensionMdObjectNamePrefixCheck_Title;
|
||||
|
@ -11,11 +11,29 @@ CommonModuleNameClient_message = Client common module name should end with "{0}"
|
||||
|
||||
CommonModuleNameClient_title = Client common module should end with Client suffix
|
||||
|
||||
CommonModuleNameGlobal_description = Global common module should end with Global suffix
|
||||
CommonModuleNameGlobalClientCheck_Description = Global common module should end with Global suffix
|
||||
|
||||
CommonModuleNameGlobal_message = Global common module should end with "{0}" suffix
|
||||
CommonModuleNameGlobalClientCheck_Message = Global common module should not have "{0}" suffix
|
||||
|
||||
CommonModuleNameGlobal_title = Global common module should end with Global suffix
|
||||
CommonModuleNameGlobalClientCheck_Title = Global common module should end with Global suffix
|
||||
|
||||
CommonModuleNameGlobal_Description = Global common module should end with Global suffix
|
||||
|
||||
CommonModuleNameGlobal_Message = Global common module should end with "{0}" suffix
|
||||
|
||||
CommonModuleNameGlobal_Title = Global common module should end with Global suffix
|
||||
|
||||
CommonModuleNamePrivilegedCheck_Description = Privileged common module should end with FullAccess suffix
|
||||
|
||||
CommonModuleNamePrivilegedCheck_Issue = Privileged common module should end with "{0}" suffix
|
||||
|
||||
CommonModuleNamePrivilegedCheck_Title = Privileged common module should end with FullAccess suffix
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_0 = Common module should end with {0}
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_name_description = Common module should end with correct postfix
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_postfix_title = Common module should end with correct postfix
|
||||
|
||||
CommonModuleType_description = Common module has incorrect type
|
||||
|
||||
@ -29,35 +47,31 @@ ConfigurationDataLock_message = Application should use managed data lock mode
|
||||
|
||||
ConfigurationDataLock_title = Configuration data lock mode
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_0=Common module should end with {0}
|
||||
DbObjectAnyRefCheck_AnyRef = Do not use composite types AnyRef, CatalogRef, DocumentRef, and other for standard metadata objects stored in the infobase.
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_name_description=Common module should end with correct postfix
|
||||
DbObjectAnyRefCheck_Description = Do not use composite types AnyRef, CatalogRef, DocumentRef, and other for standard metadata objects stored in the infobase.
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_postfix_title=Common module should end with correct postfix
|
||||
DbObjectAnyRefCheck_Title = Restrictions on the use of any ref type attributes
|
||||
|
||||
DbObjectAnyRefCheck_AnyRef=Do not use composite types AnyRef, CatalogRef, DocumentRef, and other for standard metadata objects stored in the infobase.
|
||||
DbObjectRefNonRefTypesCheck_Description = Composite type attributes used in join conditions, filters, and for ordering must contain only reference attribute types (CatalogRef. ..., DocumentRef. ..., and other). Do not include any other non-reference types in this type. For example: String, Number, Date, UUID, Boolean, and ValueStorage.
|
||||
|
||||
DbObjectAnyRefCheck_Description=Do not use composite types AnyRef, CatalogRef, DocumentRef, and other for standard metadata objects stored in the infobase.
|
||||
DbObjectRefNonRefTypesCheck_Ref_and_other = Composite type attributes used in join conditions, filters, and for ordering must contain only reference attribute types (CatalogRef. ..., DocumentRef. ..., and other). Do not include any other non-reference types in this type.
|
||||
|
||||
DbObjectAnyRefCheck_Title=Restrictions on the use of any ref type attributes
|
||||
DbObjectRefNonRefTypesCheck_Title = Restrictions on the use of composite type attributes
|
||||
|
||||
DbObjectRefNonRefTypesCheck_Description=Composite type attributes used in join conditions, filters, and for ordering must contain only reference attribute types (CatalogRef. ..., DocumentRef. ..., and other). Do not include any other non-reference types in this type. For example: String, Number, Date, UUID, Boolean, and ValueStorage.
|
||||
DocumentPostInPrivilegedModeCheck_title = In document that allow posting don't set flag "Post/Unpost in privileged mode"
|
||||
|
||||
DbObjectRefNonRefTypesCheck_Ref_and_other=Composite type attributes used in join conditions, filters, and for ordering must contain only reference attribute types (CatalogRef. ..., DocumentRef. ..., and other). Do not include any other non-reference types in this type.
|
||||
DocumentPostInPrivilegedModeCheck_description = In document that allow posting don't set flag "Post/Unpost in privileged mode"
|
||||
|
||||
DbObjectRefNonRefTypesCheck_Title=Restrictions on the use of composite type attributes
|
||||
DocumentPostInPrivilegedModeCheck_message_Post_in_privileged_mode = In document that allow posting don't set flag "Post in privileged mode"
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_0=Common module should end with {0}
|
||||
DocumentPostInPrivilegedModeCheck_message_Unpost_in_privileged_mode = In document that allow posting don't set flag "Unpost in privileged mode"
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_name_description=Common module should end with correct postfix
|
||||
ExtensionMdObjectNamePrefixCheck_Description = The object name of the extension object does not have a prefix corresponding to the prefix of the extension itself
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_postfix_title=Common module should end with correct postfix
|
||||
ExtensionMdObjectNamePrefixCheck_Object_0_should_have_1_prefix = The object "{0}" should have "{1}" prefix
|
||||
|
||||
ExtensionMdObjectNamePrefixCheck_Description=The object name of the extension object does not have a prefix corresponding to the prefix of the extension itself
|
||||
|
||||
ExtensionMdObjectNamePrefixCheck_Object_0_should_have_1_prefix=The object "{0}" should have "{1}" prefix
|
||||
|
||||
ExtensionMdObjectNamePrefixCheck_Title=Extension object name does not have extension prefix
|
||||
ExtensionMdObjectNamePrefixCheck_Title = Extension object name does not have extension prefix
|
||||
|
||||
MdListObjectPresentationCheck_Neither_Object_presentation_nor_List_presentation_is_not_filled = Neither Object presentation nor List presentation is not filled
|
||||
|
||||
@ -65,6 +79,30 @@ MdListObjectPresentationCheck_decription = Neither Object presentation nor List
|
||||
|
||||
MdListObjectPresentationCheck_title = Neither Object presentation nor List presentation is not filled
|
||||
|
||||
MdObjectAttributeCommentCheck_Attribute_list=Attributes list
|
||||
|
||||
MdObjectAttributeCommentCheck_Check_catalogs_param=Check Catalogs
|
||||
|
||||
MdObjectAttributeCommentCheck_Check_documents_param=Check Documents
|
||||
|
||||
MdObjectAttributeCommentCheck_Default_check_message=The attribute "Comment" has an invalid type
|
||||
|
||||
MdObjectAttributeCommentCheck_description=The attribute "Comment" has an invalid type
|
||||
|
||||
MdObjectAttributeCommentCheck_title=The attribute "Comment" has an invalid type
|
||||
|
||||
MdObjectAttributeCommentNotExist_Md_Object_attribute_Comment_does_not_exist = Md Object attribute "Comment" does not exist
|
||||
|
||||
MdObjectAttributeCommentNotExist_Param_Attribute_name_list = Attribute name list
|
||||
|
||||
MdObjectAttributeCommentNotExist_Param_Check_Catalogs = Check catalogs
|
||||
|
||||
MdObjectAttributeCommentNotExist_Param_Check_Documents = Check documents
|
||||
|
||||
MdObjectAttributeCommentNotExist_description = Md Object attribute "Comment" does not exist
|
||||
|
||||
MdObjectAttributeCommentNotExist_title = Md Object attribute "Comment" does not exist
|
||||
|
||||
MdObjectNameLength_Maximum_name_length_description = Maximum name length
|
||||
|
||||
MdObjectNameLength_description = Metadata object name length should be less than {0}
|
||||
@ -97,12 +135,6 @@ MdScheduledJobPeriodicityCheck_description = The minimum job interval is less th
|
||||
|
||||
MdScheduledJobPeriodicityCheck_title = The minimum job interval is less then {0}s
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase=Avoid storing passwords in the infobase
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_description=To minimize risks of unauthorized access to passwords, avoid storing passwords in the infobase.
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_error=Avoid storing passwords in the infobase
|
||||
|
||||
RegisterResourcePrecisionCheck_description = Accumulation or accounting register resource precision is more than 25
|
||||
|
||||
RegisterResourcePrecisionCheck_message = Accumulation or accounting register resource "{0}" precision is more than {1}
|
||||
@ -118,3 +150,9 @@ SubsystemSynonymTooLongCheck_Maximum_section_name_length = Maximum section name
|
||||
SubsystemSynonymTooLongCheck_description = Section name is more than 35 characters long
|
||||
|
||||
SubsystemSynonymTooLongCheck_title = Section name is more than 35 characters long
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase = Avoid storing passwords in the infobase
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_description = To minimize risks of unauthorized access to passwords, avoid storing passwords in the infobase.
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_error = Avoid storing passwords in the infobase
|
||||
|
@ -12,15 +12,33 @@ CommonModuleNameClient_message = Клиентский общий модуль д
|
||||
|
||||
CommonModuleNameClient_title = Клиентский общий модуль должен оканчиваться на суффикс Клиент
|
||||
|
||||
CommonModuleNameGlobal_description = Глобальный общий модуль должен оканчиваться на суффикс Глобальный
|
||||
CommonModuleNameGlobalClientCheck_Description = Глобальный общий модуль должен оканчиваться на суффикс Глобальный
|
||||
|
||||
CommonModuleNameGlobal_message = Глобальный общий модуль должен оканчиваться на суффикс "{0}"
|
||||
CommonModuleNameGlobalClientCheck_Message = Глобальный общий модуль не должен содержать суффикс "{0}"
|
||||
|
||||
CommonModuleNameGlobal_title = Глобальный общий модуль должен оканчиваться на суффикс Глобальный
|
||||
CommonModuleNameGlobalClientCheck_Title = Глобальный общий модуль должен оканчиваться на суффикс Глобальный
|
||||
|
||||
CommonModuleNameGlobal_Description = Глобальный общий модуль должен оканчиваться на суффикс Глобальный
|
||||
|
||||
CommonModuleNameGlobal_Message = Глобальный общий модуль должен оканчиваться на суффикс "{0}"
|
||||
|
||||
CommonModuleNameGlobal_Title = Глобальный общий модуль должен оканчиваться на суффикс Глобальный
|
||||
|
||||
CommonModuleNamePrivilegedCheck_Description = Привилегированный модуль должен оканчиваться на суффикс ПолныеПрава
|
||||
|
||||
CommonModuleNamePrivilegedCheck_Issue = Привилегированный модуль должен оканчиваться на суффикс "{0}"
|
||||
|
||||
CommonModuleNamePrivilegedCheck_Title = Привилегированный модуль должен оканчиваться на суффикс ПолныеПрава
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_0 = Общий модуль должен именоваться с постфиксом {0}
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_name_description = Общий модуль должен именоваться с постфиксом
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_postfix_title = Общий модуль должен именоваться с постфиксом
|
||||
|
||||
CommonModuleType_description = Общий модуль имеет некорректный тип
|
||||
|
||||
CommonModuleType_message = Общий модуль для типа "{0}" имеет некорректне настройки: {1}
|
||||
CommonModuleType_message = Общий модуль для типа "{0}" имеет некорректные настройки: {1}
|
||||
|
||||
CommonModuleType_title = Общий модуль имеет некорректный тип
|
||||
|
||||
@ -30,35 +48,31 @@ ConfigurationDataLock_message = Приложение должно использ
|
||||
|
||||
ConfigurationDataLock_title = Режим блокировки данных конфигурации
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_0 = Общий модуль должен именоваться с постфиксом {0}
|
||||
DbObjectAnyRefCheck_AnyRef = Для типизированных объектов метаданных, хранящихся в информационной базе, не следует использовать составные типы ЛюбаяСсылка, СправочникСсылка, ДокументСсылка и аналогичные.
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_name_description=Общий модуль должен именоваться с постфиксом
|
||||
DbObjectAnyRefCheck_Description = Для типизированных объектов метаданных, хранящихся в информационной базе, не следует использовать составные типы ЛюбаяСсылка, СправочникСсылка, ДокументСсылка и аналогичные. Состав типов того или иного типизированного объекта должен определяться явным образом.
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_postfix_title=Общий модуль должен именоваться с постфиксом
|
||||
DbObjectAnyRefCheck_Title = Использование составного типа, содержащего ЛюбаяСсылка и аналогичные.
|
||||
|
||||
DbObjectAnyRefCheck_AnyRef=Для типизированных объектов метаданных, хранящихся в информационной базе, не следует использовать составные типы ЛюбаяСсылка, СправочникСсылка, ДокументСсылка и аналогичные.
|
||||
DbObjectRefNonRefTypesCheck_Description = Реквизиты составного типа, используемые в условиях соединений, отборах, а также для упорядочивания, должны содержать только ссылочные типы (СправочникСсылка.…, ДокументСсылка.… и пр.). В состав их типов не рекомендуется включать никаких других нессылочных типов, например: Строка, Число, Дата, УникальныйИдентификатор, Булево, а также ХранилищеЗначения.
|
||||
|
||||
DbObjectAnyRefCheck_Description=Для типизированных объектов метаданных, хранящихся в информационной базе, не следует использовать составные типы ЛюбаяСсылка, СправочникСсылка, ДокументСсылка и аналогичные. Состав типов того или иного типизированного объекта должен определяться явным образом.
|
||||
DbObjectRefNonRefTypesCheck_Ref_and_other = Реквизиты составного типа, используемые в условиях соединений, отборах, а также для упорядочивания, должны содержать только ссылочные типы (СправочникСсылка.…, ДокументСсылка.… и пр.). В состав их типов не рекомендуется включать никаких других нессылочных типов.
|
||||
|
||||
DbObjectAnyRefCheck_Title=Использование составного типа, содержащего ЛюбаяСсылка и аналогичные.
|
||||
DbObjectRefNonRefTypesCheck_Title = Использование составного типа, содержащего ссылочные и не ссылочный тип вместе.
|
||||
|
||||
DbObjectRefNonRefTypesCheck_Description=Реквизиты составного типа, используемые в условиях соединений, отборах, а также для упорядочивания, должны содержать только ссылочные типы (СправочникСсылка.…, ДокументСсылка.… и пр.). В состав их типов не рекомендуется включать никаких других нессылочных типов, например: Строка, Число, Дата, УникальныйИдентификатор, Булево, а также ХранилищеЗначения.
|
||||
DocumentPostInPrivilegedModeCheck_title = В документе, предполагающем проведение, не стоит флаг "Прив. режим при проведении/отмене проведения"
|
||||
|
||||
DbObjectRefNonRefTypesCheck_Ref_and_other=Реквизиты составного типа, используемые в условиях соединений, отборах, а также для упорядочивания, должны содержать только ссылочные типы (СправочникСсылка.…, ДокументСсылка.… и пр.). В состав их типов не рекомендуется включать никаких других нессылочных типов.
|
||||
DocumentPostInPrivilegedModeCheck_description = В документе, предполагающем проведение, не стоит флаг "Прив. режим при проведении/отмене проведения"
|
||||
|
||||
DbObjectRefNonRefTypesCheck_Title=Использование составного типа, содержащего ссылочные и не ссылочный тип вместе.
|
||||
DocumentPostInPrivilegedModeCheck_message_Post_in_privileged_mode = В документе, предполагающем проведение, не стоит флаг "Прив. режим при проведении"
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_0 = Общий модуль должен именоваться с постфиксом {0}
|
||||
DocumentPostInPrivilegedModeCheck_message_Unpost_in_privileged_mode = В документе, предполагающем проведение, не стоит флаг "Прив. режим при отмене проведения"
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_name_description=Общий модуль должен именоваться с постфиксом
|
||||
ExtensionMdObjectNamePrefixCheck_Description = Имя объекта в расширении не содержит префикс расширения
|
||||
|
||||
CommonModuleNameServerCallPostfixCheck_Common_module_postfix_title=Общий модуль должен именоваться с постфиксом
|
||||
ExtensionMdObjectNamePrefixCheck_Object_0_should_have_1_prefix = Имя объекта "{0}" должно содержать префикс "{1}"
|
||||
|
||||
ExtensionMdObjectNamePrefixCheck_Description=Имя объекта в расширении не содержит префикс расширения
|
||||
|
||||
ExtensionMdObjectNamePrefixCheck_Object_0_should_have_1_prefix=Имя объекта "{0}" должно содержать префикс "{1}"
|
||||
|
||||
ExtensionMdObjectNamePrefixCheck_Title=Имя объекта в расширении должно содержать префикс расширения
|
||||
ExtensionMdObjectNamePrefixCheck_Title = Имя объекта в расширении должно содержать префикс расширения
|
||||
|
||||
MdListObjectPresentationCheck_Neither_Object_presentation_nor_List_presentation_is_not_filled = Не заполнено ни представление объекта, ни представление списка
|
||||
|
||||
@ -66,6 +80,30 @@ MdListObjectPresentationCheck_decription = Не заполнено ни пред
|
||||
|
||||
MdListObjectPresentationCheck_title = Не заполнено ни представление объекта, ни представление списка
|
||||
|
||||
MdObjectAttributeCommentCheck_Attribute_list = Список реквизитов
|
||||
|
||||
MdObjectAttributeCommentCheck_Check_catalogs_param = Проверять справочники
|
||||
|
||||
MdObjectAttributeCommentCheck_Check_documents_param = Проверять документы
|
||||
|
||||
MdObjectAttributeCommentCheck_Default_check_message = Реквизит "Комментарий" имеет недопустимый тип
|
||||
|
||||
MdObjectAttributeCommentCheck_description = Реквизит "Комментарий" имеет недопустимый тип
|
||||
|
||||
MdObjectAttributeCommentCheck_title = Реквизит "Комментарий" имеет недопустимый тип
|
||||
|
||||
MdObjectAttributeCommentNotExist_Md_Object_attribute_Comment_does_not_exist = Объект метаданных не имеет реквизит "Комментарий"
|
||||
|
||||
MdObjectAttributeCommentNotExist_Param_Attribute_name_list = Список имен реквизита
|
||||
|
||||
MdObjectAttributeCommentNotExist_Param_Check_Catalogs = Проверять справочники
|
||||
|
||||
MdObjectAttributeCommentNotExist_Param_Check_Documents = Проверять документы
|
||||
|
||||
MdObjectAttributeCommentNotExist_description = Объект метаданных не имеет реквизит "Комментарий"
|
||||
|
||||
MdObjectAttributeCommentNotExist_title = Объект метаданных не имеет реквизит "Комментарий"
|
||||
|
||||
MdObjectNameLength_Maximum_name_length_description = Максимальная длина имени
|
||||
|
||||
MdObjectNameLength_description = Длина имени объекта метаданного должна быть меньше чем {0}
|
||||
@ -114,8 +152,8 @@ SubsystemSynonymTooLongCheck_description = Длина названия разд
|
||||
|
||||
SubsystemSynonymTooLongCheck_title = Длина названия раздела превышает 35 символов
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase=Не следует хранить пароли в информационной базе
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase = Не следует хранить пароли в информационной базе
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_description=Для сведения к минимуму возможности перехвата пароля злоумышленниками не следует хранить пароли в информационной базе
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_description = Для сведения к минимуму возможности перехвата пароля злоумышленниками не следует хранить пароли в информационной базе
|
||||
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_error=Не следует хранить пароли в информационной базе
|
||||
UnsafePasswordStorageCheck_Avoid_storing_password_in_infobase_error = Не следует хранить пароли в информационной базе
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.ql;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.ql.CorePlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.18.0,4.0.0)",
|
||||
@ -27,5 +27,5 @@ Import-Package: com._1c.g5.v8.bm.core;version="[7.0.0,8.0.0)",
|
||||
com.e1c.g5.v8.dt.check.components;version="[2.0.0,3.0.0)",
|
||||
com.e1c.g5.v8.dt.check.settings;version="1.0.0",
|
||||
com.e1c.g5.v8.dt.ql.check;version="[1.0.0,2.0.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.5.0,0.6.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)"
|
||||
|
@ -18,10 +18,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.ql</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
<properties>
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.right;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.right.CorePlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.18.0,4.0.0)",
|
||||
@ -34,5 +34,5 @@ Import-Package: com._1c.g5.v8.bm.core;version="[7.0.0,8.0.0)",
|
||||
com.e1c.g5.v8.dt.check.context;version="[2.0.0,3.0.0)",
|
||||
com.e1c.g5.v8.dt.check.ext;version="[1.0.0,2.0.0)",
|
||||
com.e1c.g5.v8.dt.check.settings;version="[3.0.0,4.0.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle.check;version="[0.5.0,0.6.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)"
|
||||
|
@ -18,10 +18,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.right</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
<properties>
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.ui;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.ui.UiPlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Bundle-Localization: plugin
|
||||
@ -22,5 +22,5 @@ Import-Package: com._1c.g5.v8.dt.common;version="[6.4.0,7.0.0)",
|
||||
com._1c.g5.v8.dt.ui.wizards;version="[8.1.0,9.0.0)",
|
||||
com._1c.g5.wiring;version="[2.2.0,3.0.0)",
|
||||
com._1c.g5.wiring.binder;version="[1.1.0,2.0.0)",
|
||||
com.e1c.v8codestyle;version="[0.4.0,0.5.0)",
|
||||
com.e1c.v8codestyle;version="[0.5.0,0.6.0)",
|
||||
com.google.inject;version="[5.0.1,6.0.0)"
|
||||
|
@ -18,10 +18,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.ui</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
</project>
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Activator: com.e1c.v8codestyle.internal.CorePlugin
|
||||
Bundle-Vendor: %providerName
|
||||
Bundle-Localization: plugin
|
||||
@ -21,5 +21,5 @@ Import-Package: com._1c.g5.v8.bm.core;version="[7.0.0,8.0.0)",
|
||||
com.e1c.g5.v8.dt.check.settings;version="1.0.0",
|
||||
com.google.inject;version="[5.0.1,6.0.0)",
|
||||
com.google.inject.binder;version="[5.0.1,6.0.0)"
|
||||
Export-Package: com.e1c.v8codestyle;version="0.4.0",
|
||||
com.e1c.v8codestyle.check;version="0.4.0"
|
||||
Export-Package: com.e1c.v8codestyle;version="0.5.0",
|
||||
com.e1c.v8codestyle.check;version="0.5.0"
|
||||
|
@ -19,9 +19,9 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bundles</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
</project>
|
||||
|
@ -14,7 +14,7 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>parent</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.docs;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Vendor: %providerName
|
||||
Automatic-Module-Name: com.e1c.v8codestyle.docs
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-11
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Проверки модулей 1С
|
||||
|
||||
|
||||
Общее количество проверок: 67
|
||||
Общее количество проверок: 78
|
||||
|
||||
| Код проверки | Наименование |
|
||||
|--------------|--------------|
|
||||
@ -10,9 +10,11 @@
|
||||
| [bsl-nstr-string-literal-format](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/bsl-nstr-string-literal-format.md) | НСтр формат строкового литерала |
|
||||
| [change-and-validate-instead-of-around](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/change-and-validate-instead-of-around.md) | Используется аннотация &ИзменениеИКонтроль вместо &Вместо |
|
||||
| [commit-transaction](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/commit-transaction.md) | Проверка нарушения схемы работы с транзакциями |
|
||||
| [common-module-missing-api](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/common-module-missing-api.md) | Общий модуль должен иметь хотя бы один экспортный метод |
|
||||
| [common-module-named-self-reference](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/common-module-named-self-reference.md) | Избыточное обращение по собственному имени внутри общего модуля |
|
||||
| [constructor-function-return-section](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/constructor-function-return-section.md) | Секция возвращаемого значения функции-конструктора данных |
|
||||
| [data-exchange-load](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/data-exchange-load.md) | Проверка ОбменДанными.Загрузка в обработчике события |
|
||||
| [deprecated-procedure-outside-deprecated-region](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/deprecated-procedure-outside-deprecated-region.md) | Устаревшая процедура (функция) расположена вне области "УстаревшиеПроцедурыИФункции" |
|
||||
| [doc-comment-collection-item-type](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/doc-comment-collection-item-type.md) | Тип коллекций в документирующем комментарии содержит тип элемента коллекции |
|
||||
| [doc-comment-complex-type-with-link](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/doc-comment-complex-type-with-link.md) | Поле документирующего комментария использует объявление сложного типа вместо ссылки на тип |
|
||||
| [doc-comment-description-ends-on-dot](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/doc-comment-description-ends-on-dot.md) | Многострочное описание документирующего комментария оканчивается на точку |
|
||||
@ -33,6 +35,8 @@
|
||||
| [empty-except-statement](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/empty-except-statement.md) | Конструкция "Попытка...Исключение...КонецПопытки" не содержит кода в исключении |
|
||||
| [event-heandler-boolean-param](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/event-heandler-boolean-param.md) | Использование булевого параметра обработчика события |
|
||||
| [export-method-in-command-form-module](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/export-method-in-command-form-module.md) | Ограничения на использование экспортных процедур и функций в модуле команд и форм |
|
||||
| [extension-method-prefix](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/extension-method-prefix.md) | У метода отсутствует префикс расширения |
|
||||
| [extension-variable-prefix](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/extension-variable-prefix.md) | У имени переменной отсутствует префикс расширения |
|
||||
| [form-module-missing-pragma](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/form-module-missing-pragma.md) | Всегда использовать директивы компиляции в модуле формы |
|
||||
| [form-module-pragma](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/form-module-pragma.md) | Использование директив компиляции модуля формы |
|
||||
| [form-self-reference](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/form-self-reference.md) | Использование устаревшего псевдонима |
|
||||
@ -45,6 +49,8 @@
|
||||
| [method-too-many-params](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/method-too-many-params.md) | Метод содержит слишком много параметров |
|
||||
| [missing-temporary-file-deletion](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/missing-temporary-file-deletion.md) | Отсутствует удаление временного файла после использования. |
|
||||
| [module-accessibility-at-client](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-accessibility-at-client.md) | Метод или переменная доступны НаКлиенте |
|
||||
| [module-attachable-event-handler-name](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-attachable-event-handler-name.md) | Имя подключаемого обработчка события |
|
||||
| [module-consecutive-blank-lines](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-consecutive-blank-lines.md) | Проверка максимального количства пустых строк |
|
||||
| [module-empty-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-empty-method.md) | Проверка пустых методов |
|
||||
| [module-region-empty](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-region-empty.md) | Область пустая |
|
||||
| [module-self-reference](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-self-reference.md) | Избыточное использование псевдонима "ЭтотОбъект" |
|
||||
@ -60,15 +66,20 @@
|
||||
| [module-unused-local-variable](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-unused-local-variable.md) | Проверка неиспользуемых локальных переменных |
|
||||
| [module-unused-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-unused-method.md) | Проверка неиспользуемых методов |
|
||||
| [new-color](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/new-color.md) | Использование конструкции "Новый Цвет" |
|
||||
| [new-font](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/new-font.md) | Использование конструкции "Новый Шрифт" |
|
||||
| [notify-description-to-server-procedure](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/notify-description-to-server-procedure.md) | Описание оповещения на серверную процедуру |
|
||||
| [object-module-export-variable](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/object-module-export-variable.md) | Использование переменных в программных модулях |
|
||||
| [property-return-type](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/property-return-type.md) | Свойство объекта имеет тип возвращаемого значения |
|
||||
| [public-method-caching](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/public-method-caching.md) | Проверка кэширования программного интерфейса |
|
||||
| [query-in-loop](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/query-in-loop.md) | Запрос в цикле |
|
||||
| [reading-attribute-from-database](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/reading-attribute-from-database.md) | Чтение отдельного реквизита объекта из базы данных |
|
||||
| [redundant-export-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/redundant-export-method.md) | Тексты модулей конфигурации не должны содержать неиспользуемые экспортные процедуры и функции. |
|
||||
| [rollback-transaction](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/rollback-transaction.md) | Проверка нарушения схемы работы с транзакциями |
|
||||
| [server-execution-safe-mode](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/server-execution-safe-mode.md) | Отсутствует включение безопасного режима перед вызовом метода "Выполнить" или "Вычислить" |
|
||||
| [statement-type-change](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/statement-type-change.md) | Утверждение меняет тип |
|
||||
| [structure-consructor-too-many-keys](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/structure-consructor-too-many-keys.md) | Конструктор структуры содержит слишком много ключей |
|
||||
| [structure-consructor-value-type](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/structure-consructor-value-type.md) | Типизация значений в конструкторе структуры |
|
||||
| [typed-value-adding-to-untyped-collection](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/typed-value-adding-to-untyped-collection.md) | Добавление типизированного значения в не типизированную коллекцию |
|
||||
| [use-non-recommended-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/use-non-recommended-method.md) | Использование не рекомендуемых методов |
|
||||
| [using-isinrole](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/using-isinrole.md) | Использован метод "РольДоступна" |
|
||||
| [variable-value-type](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/variable-value-type.md) | Переменная имеет тип значения |
|
||||
|
@ -1,11 +1,11 @@
|
||||
# Индекс проверок
|
||||
|
||||
|
||||
Общее количество проверок 1С:Стандарты разработки V8: 123
|
||||
Общее количество проверок 1С:Стандарты разработки V8: 139
|
||||
|
||||
- form: 6
|
||||
- md: 18
|
||||
- bsl: 67
|
||||
- form: 7
|
||||
- md: 22
|
||||
- bsl: 78
|
||||
- ql: 8
|
||||
- right: 24
|
||||
|
||||
@ -18,11 +18,14 @@
|
||||
| [bsl-nstr-string-literal-format](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/bsl-nstr-string-literal-format.md) | НСтр формат строкового литерала |
|
||||
| [change-and-validate-instead-of-around](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/change-and-validate-instead-of-around.md) | Используется аннотация &ИзменениеИКонтроль вместо &Вместо |
|
||||
| [commit-transaction](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/commit-transaction.md) | Проверка нарушения схемы работы с транзакциями |
|
||||
| [common-module-missing-api](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/common-module-missing-api.md) | Общий модуль должен иметь хотя бы один экспортный метод |
|
||||
| [common-module-name-cached](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-cached.md) | Общий модуль с повторно используемыми значениями |
|
||||
| [common-module-name-client](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-client.md) | Клиентский общий модуль должен оканчиваться на суффикс Клиент |
|
||||
| [common-module-name-client-cached](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-client-cached.md) | Клиентский общий модуль с повторно используемыми значениями |
|
||||
| [common-module-name-client-server](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-client-server.md) | Клиент-серверный общий модуль должен оканчиваться на суффикс КлиентСервер |
|
||||
| [common-module-name-full-access](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-full-access.md) | Привилегированный общий модуль должен оканчиваться на суффикс ПолныеПрава |
|
||||
| [common-module-name-global](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-global.md) | Глобальный общий модуль должен оканчиваться на суффикс Глобальный |
|
||||
| [common-module-name-global-client](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-global-client.md) | Глобальный клиентский общий модуль должен оканчиваться на суффикс Глобальный без суффикса Клиент |
|
||||
| [common-module-name-server-call](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-server-call.md) | Общий модуль, для которого предусмотрен вызов сервера |
|
||||
| [common-module-name-server-call-cached](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-server-call-cached.md) | Общий модуль с повторно используемыми значениями |
|
||||
| [common-module-named-self-reference](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/common-module-named-self-reference.md) | Избыточное обращение по собственному имени внутри общего модуля |
|
||||
@ -32,6 +35,7 @@
|
||||
| [data-exchange-load](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/data-exchange-load.md) | Проверка ОбменДанными.Загрузка в обработчике события |
|
||||
| [db-object-anyref-type](../../bundles/com.e1c.v8codestyle.md/markdown/ru/db-object-anyref-type.md) | Реквизиты составного типа, такие как ЛюбаяСсылка и аналогичные |
|
||||
| [db-object-ref-non-ref-type](../../bundles/com.e1c.v8codestyle.md/markdown/ru/db-object-ref-non-ref-type.md) | Реквизиты составного типа |
|
||||
| [deprecated-procedure-outside-deprecated-region](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/deprecated-procedure-outside-deprecated-region.md) | Устаревшая процедура (функция) расположена вне области "УстаревшиеПроцедурыИФункции" |
|
||||
| [doc-comment-collection-item-type](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/doc-comment-collection-item-type.md) | Тип коллекций в документирующем комментарии содержит тип элемента коллекции |
|
||||
| [doc-comment-complex-type-with-link](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/doc-comment-complex-type-with-link.md) | Поле документирующего комментария использует объявление сложного типа вместо ссылки на тип |
|
||||
| [doc-comment-description-ends-on-dot](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/doc-comment-description-ends-on-dot.md) | Многострочное описание документирующего комментария оканчивается на точку |
|
||||
@ -52,6 +56,10 @@
|
||||
| [empty-except-statement](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/empty-except-statement.md) | Конструкция "Попытка...Исключение...КонецПопытки" не содержит кода в исключении |
|
||||
| [event-heandler-boolean-param](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/event-heandler-boolean-param.md) | Использование булевого параметра обработчика события |
|
||||
| [export-method-in-command-form-module](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/export-method-in-command-form-module.md) | Ограничения на использование экспортных процедур и функций в модуле команд и форм |
|
||||
| [extension-md-object-prefix](../../bundles/com.e1c.v8codestyle.md/markdown/ru/extension-md-object-prefix.md) | У имени объекта отсутствует префикс расширения |
|
||||
| [extension-method-prefix](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/extension-method-prefix.md) | У метода отсутствует префикс расширения |
|
||||
| [extension-variable-prefix](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/extension-variable-prefix.md) | У имени переменной отсутствует префикс расширения |
|
||||
| [form-commands-single-action-handler](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-commands-single-action-handler.md) | У каждого действия команды должна быть назначена своя процедура-обработчик |
|
||||
| [form-dynamic-list-item-title](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-dynamic-list-item-title.md) | Пустой заголовок для колонок динамического списка |
|
||||
| [form-items-single-event-handler](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-items-single-event-handler.md) | У каждого события должна быть назначена своя процедура-обработчик |
|
||||
| [form-list-field-ref-not-added](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-list-field-ref-not-added.md) | Реквизит "Ссылка" динамического списка не выведен в таблицу на форме |
|
||||
@ -74,6 +82,8 @@
|
||||
| [method-too-many-params](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/method-too-many-params.md) | Метод содержит слишком много параметров |
|
||||
| [missing-temporary-file-deletion](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/missing-temporary-file-deletion.md) | Отсутствует удаление временного файла после использования. |
|
||||
| [module-accessibility-at-client](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-accessibility-at-client.md) | Метод или переменная доступны НаКлиенте |
|
||||
| [module-attachable-event-handler-name](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-attachable-event-handler-name.md) | Имя подключаемого обработчка события |
|
||||
| [module-consecutive-blank-lines](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-consecutive-blank-lines.md) | Проверка максимального количства пустых строк |
|
||||
| [module-empty-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-empty-method.md) | Проверка пустых методов |
|
||||
| [module-region-empty](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-region-empty.md) | Область пустая |
|
||||
| [module-self-reference](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-self-reference.md) | Избыточное использование псевдонима "ЭтотОбъект" |
|
||||
@ -89,8 +99,11 @@
|
||||
| [module-unused-local-variable](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-unused-local-variable.md) | Проверка неиспользуемых локальных переменных |
|
||||
| [module-unused-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/module-unused-method.md) | Проверка неиспользуемых методов |
|
||||
| [new-color](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/new-color.md) | Использование конструкции "Новый Цвет" |
|
||||
| [new-font](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/new-font.md) | Использование конструкции "Новый Шрифт" |
|
||||
| [notify-description-to-server-procedure](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/notify-description-to-server-procedure.md) | Описание оповещения на серверную процедуру |
|
||||
| [object-module-export-variable](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/object-module-export-variable.md) | Использование переменных в программных модулях |
|
||||
| [property-return-type](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/property-return-type.md) | Свойство объекта имеет тип возвращаемого значения |
|
||||
| [public-method-caching](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/public-method-caching.md) | Проверка кэширования программного интерфейса |
|
||||
| [ql-camel-case-string-literal](../../bundles/com.e1c.v8codestyle.ql/markdown/ru/ql-camel-case-string-literal.md) | Строковый литерал в запросе содержит не КемелКейс контент |
|
||||
| [ql-cast-to-max-number](../../bundles/com.e1c.v8codestyle.ql/markdown/ru/ql-cast-to-max-number.md) | Выражение к максимальному числу в запросе |
|
||||
| [ql-constants-in-binary-operation](../../bundles/com.e1c.v8codestyle.ql/markdown/ru/ql-constants-in-binary-operation.md) | В запросе в бинарной операции используются константные значения или параметры. |
|
||||
@ -100,7 +113,9 @@
|
||||
| [ql-using-for-update](../../bundles/com.e1c.v8codestyle.ql/markdown/ru/ql-using-for-update.md) | Запрос содержит конструкцию "ДЛЯ ИЗМЕНЕНИЯ" |
|
||||
| [ql-virtual-table-filters](../../bundles/com.e1c.v8codestyle.ql/markdown/ru/ql-virtual-table-filters.md) | Отбор виртуальной таблицы должен быть в параметрах |
|
||||
| [query-in-loop](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/query-in-loop.md) | Запрос в цикле |
|
||||
| [reading-attribute-from-database](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/reading-attribute-from-database.md) | Чтение отдельного реквизита объекта из базы данных |
|
||||
| [redundant-export-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/redundant-export-method.md) | Тексты модулей конфигурации не должны содержать неиспользуемые экспортные процедуры и функции. |
|
||||
| [register-resource-precision](../../bundles/com.e1c.v8codestyle.md/markdown/ru/register-resource-precision.md) | Длина ресурса регистра накопления или бухгалтерии |
|
||||
| [right-active-users](../../bundles/com.e1c.v8codestyle.right/markdown/ru/right-active-users.md) | Право установлено: Активные пользователи |
|
||||
| [right-administration](../../bundles/com.e1c.v8codestyle.right/markdown/ru/right-administration.md) | Право установлено: Администрирование |
|
||||
| [right-all-functions-mode](../../bundles/com.e1c.v8codestyle.right/markdown/ru/right-all-functions-mode.md) | Право установлено: Режим "Все функции" |
|
||||
@ -132,6 +147,7 @@
|
||||
| [structure-consructor-too-many-keys](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/structure-consructor-too-many-keys.md) | Конструктор структуры содержит слишком много ключей |
|
||||
| [structure-consructor-value-type](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/structure-consructor-value-type.md) | Типизация значений в конструкторе структуры |
|
||||
| [subsystem-synonym-too-long](../../bundles/com.e1c.v8codestyle.md/markdown/ru/subsystem-synonym-too-long.md) | Длина названия раздела превышает 35 символов |
|
||||
| [typed-value-adding-to-untyped-collection](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/typed-value-adding-to-untyped-collection.md) | Добавление типизированного значения в не типизированную коллекцию |
|
||||
| [unsafe-password-ib-storage](../../bundles/com.e1c.v8codestyle.md/markdown/ru/unsafe-password-ib-storage.md) | Небезопасное хранение паролей в информационной базе |
|
||||
| [use-non-recommended-method](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/use-non-recommended-method.md) | Использование не рекомендуемых методов |
|
||||
| [using-isinrole](../../bundles/com.e1c.v8codestyle.bsl/markdown/ru/using-isinrole.md) | Использован метод "РольДоступна" |
|
||||
|
@ -3,11 +3,14 @@ bsl-canonical-pragma
|
||||
bsl-nstr-string-literal-format
|
||||
change-and-validate-instead-of-around
|
||||
commit-transaction
|
||||
common-module-missing-api
|
||||
common-module-name-cached
|
||||
common-module-name-client
|
||||
common-module-name-client-cached
|
||||
common-module-name-client-server
|
||||
common-module-name-full-access
|
||||
common-module-name-global
|
||||
common-module-name-global-client
|
||||
common-module-name-server-call
|
||||
common-module-name-server-call-cached
|
||||
common-module-named-self-reference
|
||||
@ -17,6 +20,7 @@ constructor-function-return-section
|
||||
data-exchange-load
|
||||
db-object-anyref-type
|
||||
db-object-ref-non-ref-type
|
||||
deprecated-procedure-outside-deprecated-region
|
||||
doc-comment-collection-item-type
|
||||
doc-comment-complex-type-with-link
|
||||
doc-comment-description-ends-on-dot
|
||||
@ -37,6 +41,10 @@ dynamic-access-method-not-found
|
||||
empty-except-statement
|
||||
event-heandler-boolean-param
|
||||
export-method-in-command-form-module
|
||||
extension-md-object-prefix
|
||||
extension-method-prefix
|
||||
extension-variable-prefix
|
||||
form-commands-single-action-handler
|
||||
form-dynamic-list-item-title
|
||||
form-items-single-event-handler
|
||||
form-list-field-ref-not-added
|
||||
@ -59,6 +67,8 @@ method-param-value-type
|
||||
method-too-many-params
|
||||
missing-temporary-file-deletion
|
||||
module-accessibility-at-client
|
||||
module-attachable-event-handler-name
|
||||
module-consecutive-blank-lines
|
||||
module-empty-method
|
||||
module-region-empty
|
||||
module-self-reference
|
||||
@ -74,8 +84,11 @@ module-undefined-variable
|
||||
module-unused-local-variable
|
||||
module-unused-method
|
||||
new-color
|
||||
new-font
|
||||
notify-description-to-server-procedure
|
||||
object-module-export-variable
|
||||
property-return-type
|
||||
public-method-caching
|
||||
ql-camel-case-string-literal
|
||||
ql-cast-to-max-number
|
||||
ql-constants-in-binary-operation
|
||||
@ -85,7 +98,9 @@ ql-temp-table-index
|
||||
ql-using-for-update
|
||||
ql-virtual-table-filters
|
||||
query-in-loop
|
||||
reading-attribute-from-database
|
||||
redundant-export-method
|
||||
register-resource-precision
|
||||
right-active-users
|
||||
right-administration
|
||||
right-all-functions-mode
|
||||
@ -117,6 +132,7 @@ statement-type-change
|
||||
structure-consructor-too-many-keys
|
||||
structure-consructor-value-type
|
||||
subsystem-synonym-too-long
|
||||
typed-value-adding-to-untyped-collection
|
||||
unsafe-password-ib-storage
|
||||
use-non-recommended-method
|
||||
using-isinrole
|
||||
|
@ -75,7 +75,6 @@
|
||||
Если ТипЗнч(Параметры.ДругоеСвойство) = Тип("Число") Тогда
|
||||
Параметры.ДругоеСвойство = Параметры.ДругоеСвойство + 1; // В этом месте тип свойства - Булево
|
||||
КонецЕсли;
|
||||
|
||||
```
|
||||
|
||||
При фактической смене типа значения у свойства объекта, который допускает такое поведение в run-time `1С:Предприятия 8`, система типизации и анализа объектов данных в 1C:EDT не учитывает эту смену.
|
||||
@ -109,12 +108,12 @@
|
||||
|
||||
Диагностика проблемы:
|
||||
|
||||
- при наведении мышкой на объект в коде - панель всплывающей подсказки не показывает тип, значит система типизации 1C:EDT не смогла его расчитать.
|
||||
- при наведении мышкой на объект в коде - панель всплывающей подсказки не показывает тип, значит, система типизации 1C:EDT не смогла его расчитать.
|
||||
- в коде после точки обращения к свойству/методу вызвать контент-ассист (нажать `Ctrl+Space`) - подсказка ввода не показывает свойства в формате `Объект.Свойство <Тип свойства> ~ Тип объекта`
|
||||
|
||||
> **Обратите внимание!** В подсказке ввода - после имени свойства указан тип свойства `<Тип свойства>` в фигурных скобках и после ` ~ Тип объекта` - тип, из которого это свойство получено, т.к. у объекта может несколько типов.
|
||||
|
||||
Чтобы найти причины не типзированного кода, можно следовать некоторым пунктам:
|
||||
Чтобы найти причины не типизированного кода, можно следовать некоторым пунктам:
|
||||
|
||||
1. Необходимо найти самый первый объект в цепочке вызова в данной строке
|
||||
2. Высянить есть ли у этого объекта тип - навести мышкой или нажать `F2` для вывода подсказки
|
||||
@ -129,13 +128,13 @@
|
||||
|
||||
1. Позволяет сформировать начальное документирующее описание метода, чтобы далее легче было до-редактировать
|
||||
2. Заполняет известные типы входящих параметров или возвращаемых значений на основе расчетной типизации кода текущего модуля
|
||||
3. Позволяет до заполнить отсутствующие секции или параметры в существующем документирующем комментарии и выполняет стандартное форматирование с учетом модели данных. Это позволяет увидеть ошибочно-написанные конструкции, которые не соответствуют формату документирующего комментария
|
||||
3. Позволяет до заполнить отсутствующие секции или параметры в существующем документирующем комментарии и выполняет стандартное форматирование с учетом модели данных. Это позволяет увидеть ошибочно написанные конструкции, которые не соответствуют формату документирующего комментария
|
||||
|
||||
#### Панель структуры документирующего комментария
|
||||
|
||||
Документация по [панели структуры документирующего комментария](../tools/bsl-doc-comment-view.md)
|
||||
|
||||
Позволяет увидеть структуру данных документирующего комментария так как её считывает 1C:EDT, увидеть расхождения с тем что ожидал разработчик и тем что он написал.
|
||||
Позволяет увидеть структуру данных документирующего комментария, так как её считывает 1C:EDT, увидеть расхождения с тем, что ожидал разработчик и тем что он написал.
|
||||
|
||||
### Что такое "Строгая типизация"
|
||||
|
||||
@ -227,9 +226,9 @@
|
||||
|
||||
Функция ФункцияРазличныхТипов(Флаг)
|
||||
Если Флаг Тогда
|
||||
Вовзрат Новый Массив;
|
||||
Возврат Новый Массив;
|
||||
Иначе
|
||||
Вовзрат 10;
|
||||
Возврат 10;
|
||||
КонецЕсли;
|
||||
КонецФункции
|
||||
```
|
||||
|
@ -1,10 +1,11 @@
|
||||
# Проверки Форм 1С
|
||||
|
||||
|
||||
Общее количество проверок: 6
|
||||
Общее количество проверок: 7
|
||||
|
||||
| Код проверки | Наименование |
|
||||
|--------------|--------------|
|
||||
| [form-commands-single-action-handler](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-commands-single-action-handler.md) | У каждого действия команды должна быть назначена своя процедура-обработчик |
|
||||
| [form-dynamic-list-item-title](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-dynamic-list-item-title.md) | Пустой заголовок для колонок динамического списка |
|
||||
| [form-items-single-event-handler](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-items-single-event-handler.md) | У каждого события должна быть назначена своя процедура-обработчик |
|
||||
| [form-list-field-ref-not-added](../../bundles/com.e1c.v8codestyle.form/markdown/ru/form-list-field-ref-not-added.md) | Реквизит "Ссылка" динамического списка не выведен в таблицу на форме |
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Проверки метаданных 1С
|
||||
|
||||
|
||||
Общее количество проверок: 18
|
||||
Общее количество проверок: 22
|
||||
|
||||
| Код проверки | Наименование |
|
||||
|--------------|--------------|
|
||||
@ -9,17 +9,21 @@
|
||||
| [common-module-name-client](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-client.md) | Клиентский общий модуль должен оканчиваться на суффикс Клиент |
|
||||
| [common-module-name-client-cached](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-client-cached.md) | Клиентский общий модуль с повторно используемыми значениями |
|
||||
| [common-module-name-client-server](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-client-server.md) | Клиент-серверный общий модуль должен оканчиваться на суффикс КлиентСервер |
|
||||
| [common-module-name-full-access](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-full-access.md) | Привилегированный общий модуль должен оканчиваться на суффикс ПолныеПрава |
|
||||
| [common-module-name-global](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-global.md) | Глобальный общий модуль должен оканчиваться на суффикс Глобальный |
|
||||
| [common-module-name-global-client](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-global-client.md) | Глобальный клиентский общий модуль должен оканчиваться на суффикс Глобальный без суффикса Клиент |
|
||||
| [common-module-name-server-call](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-server-call.md) | Общий модуль, для которого предусмотрен вызов сервера |
|
||||
| [common-module-name-server-call-cached](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-name-server-call-cached.md) | Общий модуль с повторно используемыми значениями |
|
||||
| [common-module-type](../../bundles/com.e1c.v8codestyle.md/markdown/ru/common-module-type.md) | Общий модуль имеет некорректный тип |
|
||||
| [configuration-data-lock-mode](../../bundles/com.e1c.v8codestyle.md/markdown/ru/configuration-data-lock-mode.md) | Режим блокировки данных конфигурации |
|
||||
| [db-object-anyref-type](../../bundles/com.e1c.v8codestyle.md/markdown/ru/db-object-anyref-type.md) | Реквизиты составного типа, такие как ЛюбаяСсылка и аналогичные |
|
||||
| [db-object-ref-non-ref-type](../../bundles/com.e1c.v8codestyle.md/markdown/ru/db-object-ref-non-ref-type.md) | Реквизиты составного типа |
|
||||
| [extension-md-object-prefix](../../bundles/com.e1c.v8codestyle.md/markdown/ru/extension-md-object-prefix.md) | У имени объекта отсутствует префикс расширения |
|
||||
| [md-list-object-presentation](../../bundles/com.e1c.v8codestyle.md/markdown/ru/md-list-object-presentation.md) | Не заполнено ни представление объекта, ни представление списка |
|
||||
| [md-standard-attribute-synonym-empty](../../bundles/com.e1c.v8codestyle.md/markdown/ru/md-standard-attribute-synonym-empty.md) | Не задан синоним стандартного реквизита "Родитель" или "Владелец". |
|
||||
| [mdo-name-length](../../bundles/com.e1c.v8codestyle.md/markdown/ru/mdo-name-length.md) | Длина имени объекта метаданных |
|
||||
| [mdo-scheduled-job-description](../../bundles/com.e1c.v8codestyle.md/markdown/ru/mdo-scheduled-job-description.md) | Задано наименование предопределенного регламентного задания |
|
||||
| [register-resource-precision](../../bundles/com.e1c.v8codestyle.md/markdown/ru/register-resource-precision.md) | Длина ресурса регистра накопления или бухгалтерии |
|
||||
| [scheduled-job-periodicity-too-short](../../bundles/com.e1c.v8codestyle.md/markdown/ru/scheduled-job-periodicity-too-short.md) | Периодичность выполнения регламентного задания меньше одной минуты. |
|
||||
| [subsystem-synonym-too-long](../../bundles/com.e1c.v8codestyle.md/markdown/ru/subsystem-synonym-too-long.md) | Длина названия раздела превышает 35 символов |
|
||||
| [unsafe-password-ib-storage](../../bundles/com.e1c.v8codestyle.md/markdown/ru/unsafe-password-ib-storage.md) | Небезопасное хранение паролей в информационной базе |
|
||||
|
@ -20,10 +20,10 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>parent</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.docs</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
<feature
|
||||
id="com.e1c.v8codestyle.feature"
|
||||
label="%feature.name"
|
||||
version="0.4.0.qualifier"
|
||||
version="0.5.0.qualifier"
|
||||
provider-name="%feature.vendor"
|
||||
plugin="com.e1c.v8codestyle"
|
||||
license-feature="org.eclipse.license"
|
||||
|
@ -19,11 +19,11 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>features</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>com.e1c.v8codestyle.feature</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-feature</packaging>
|
||||
|
||||
<build>
|
||||
|
@ -14,7 +14,7 @@
|
||||
<feature
|
||||
id="com.e1c.v8codestyle.sdk"
|
||||
label="%featureName"
|
||||
version="0.4.0.qualifier"
|
||||
version="0.5.0.qualifier"
|
||||
provider-name="%providerName"
|
||||
license-feature="org.eclipse.license"
|
||||
license-feature-version="2.0.2.qualifier">
|
||||
@ -33,11 +33,11 @@
|
||||
|
||||
<includes
|
||||
id="com.e1c.v8codestyle.feature.source"
|
||||
version="0.4.0.qualifier"
|
||||
version="0.5.0.qualifier"
|
||||
optional="true"/>
|
||||
|
||||
<includes
|
||||
id="com.e1c.v8codestyle.feature"
|
||||
version="0.4.0.qualifier"/>
|
||||
version="0.5.0.qualifier"/>
|
||||
|
||||
</feature>
|
||||
|
@ -18,7 +18,7 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>features</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>com.e1c.v8codestyle.sdk</artifactId>
|
||||
|
@ -16,7 +16,7 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>parent</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>features</artifactId>
|
||||
|
4
pom.xml
4
pom.xml
@ -16,13 +16,13 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>bom</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<relativePath>./bom/pom.xml</relativePath>
|
||||
</parent>
|
||||
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>parent</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<name>1C:Code style V8</name>
|
||||
|
@ -19,7 +19,7 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>repositories</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>com.e1c.v8codestyle.repository.sdk</artifactId>
|
||||
|
@ -19,7 +19,7 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>repositories</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>com.e1c.v8codestyle.repository</artifactId>
|
||||
|
@ -16,7 +16,7 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>parent</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>repositories</artifactId>
|
||||
|
@ -19,12 +19,12 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>targets</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>default</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
|
||||
<packaging>eclipse-target-definition</packaging>
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>parent</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>targets</artifactId>
|
||||
|
@ -2,9 +2,9 @@ Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: %pluginName
|
||||
Bundle-SymbolicName: com.e1c.v8codestyle.autosort.itests;singleton:=true
|
||||
Bundle-Version: 0.4.0.qualifier
|
||||
Bundle-Version: 0.5.0.qualifier
|
||||
Bundle-Vendor: %providerName
|
||||
Fragment-Host: com.e1c.v8codestyle.autosort;bundle-version="[0.4.0,0.5.0)"
|
||||
Fragment-Host: com.e1c.v8codestyle.autosort;bundle-version="[0.5.0,0.6.0)"
|
||||
Automatic-Module-Name: com.e1c.v8codestyle.autosort.itests
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-11
|
||||
Bundle-Localization: fragment
|
||||
|
@ -19,9 +19,9 @@
|
||||
<parent>
|
||||
<groupId>com.e1c.v8codestyle</groupId>
|
||||
<artifactId>tests</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.e1c.v8codestyle.autosort.itests</artifactId>
|
||||
<version>0.4.0-SNAPSHOT</version>
|
||||
<version>0.5.0-SNAPSHOT</version>
|
||||
<packaging>eclipse-test-plugin</packaging>
|
||||
</project>
|
@ -81,9 +81,11 @@ public class SortServiceTest
|
||||
assertFalse(configuration.getCommonModules().isEmpty());
|
||||
|
||||
assertEquals("ГМодуль", configuration.getCommonModules().get(0).getName());
|
||||
assertEquals("БМодуль", configuration.getCommonModules().get(1).getName());
|
||||
assertEquals("ОбщийМодуль", configuration.getCommonModules().get(2).getName());
|
||||
assertEquals("АМодуль", configuration.getCommonModules().get(3).getName());
|
||||
assertEquals("АМ2_4Модуль", configuration.getCommonModules().get(1).getName());
|
||||
assertEquals("БМодуль", configuration.getCommonModules().get(2).getName());
|
||||
assertEquals("АМ_Модуль", configuration.getCommonModules().get(3).getName());
|
||||
assertEquals("ОбщийМодуль", configuration.getCommonModules().get(4).getName());
|
||||
assertEquals("АМодуль", configuration.getCommonModules().get(5).getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -96,6 +98,7 @@ public class SortServiceTest
|
||||
|
||||
IEclipsePreferences prefs = AutoSortPreferences.getPreferences(project);
|
||||
prefs.putBoolean(AutoSortPreferences.KEY_ALL_TOP, true);
|
||||
prefs.putBoolean(AutoSortPreferences.KEY_SORT_ORDER, true);
|
||||
prefs.flush();
|
||||
|
||||
IStatus status = sortService.sortAllMetadata(dtProject, new NullProgressMonitor());
|
||||
@ -106,10 +109,41 @@ public class SortServiceTest
|
||||
Configuration configuration = (Configuration)object;
|
||||
assertFalse(configuration.getCommonModules().isEmpty());
|
||||
|
||||
assertEquals("АМодуль", configuration.getCommonModules().get(0).getName());
|
||||
assertEquals("БМодуль", configuration.getCommonModules().get(1).getName());
|
||||
assertEquals("ГМодуль", configuration.getCommonModules().get(2).getName());
|
||||
assertEquals("ОбщийМодуль", configuration.getCommonModules().get(3).getName());
|
||||
assertEquals("АМ2_4Модуль", configuration.getCommonModules().get(0).getName());
|
||||
assertEquals("АМ_Модуль", configuration.getCommonModules().get(1).getName());
|
||||
assertEquals("АМодуль", configuration.getCommonModules().get(2).getName());
|
||||
assertEquals("БМодуль", configuration.getCommonModules().get(3).getName());
|
||||
assertEquals("ГМодуль", configuration.getCommonModules().get(4).getName());
|
||||
assertEquals("ОбщийМодуль", configuration.getCommonModules().get(5).getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSortOrderAsDesigner() throws Exception
|
||||
{
|
||||
IProject project = testingWorkspace.setUpProject(PROJECT_NAME, getClass());
|
||||
assertNotNull(project);
|
||||
IDtProject dtProject = dtProjectManager.getDtProject(project);
|
||||
assertNotNull(dtProject);
|
||||
|
||||
IEclipsePreferences prefs = AutoSortPreferences.getPreferences(project);
|
||||
prefs.putBoolean(AutoSortPreferences.KEY_ALL_TOP, true);
|
||||
prefs.putBoolean(AutoSortPreferences.KEY_SORT_ORDER, false);
|
||||
prefs.flush();
|
||||
|
||||
IStatus status = sortService.sortAllMetadata(dtProject, new NullProgressMonitor());
|
||||
assertTrue(status.isOK());
|
||||
IBmObject object = getTopObjectByFqn(CONFIGURATION.getName(), dtProject);
|
||||
assertTrue(object instanceof Configuration);
|
||||
|
||||
Configuration configuration = (Configuration)object;
|
||||
assertFalse(configuration.getCommonModules().isEmpty());
|
||||
|
||||
assertEquals("АМ_Модуль", configuration.getCommonModules().get(0).getName());
|
||||
assertEquals("АМ2_4Модуль", configuration.getCommonModules().get(1).getName());
|
||||
assertEquals("АМодуль", configuration.getCommonModules().get(2).getName());
|
||||
assertEquals("БМодуль", configuration.getCommonModules().get(3).getName());
|
||||
assertEquals("ГМодуль", configuration.getCommonModules().get(4).getName());
|
||||
assertEquals("ОбщийМодуль", configuration.getCommonModules().get(5).getName());
|
||||
}
|
||||
|
||||
protected IBmObject getTopObjectByFqn(final String fqn, IDtProject dtProject)
|
||||
|
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="59664d85-151c-4f64-9f4e-3654a057c81d">
|
||||
<name>АМ2_4Модуль</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>А м2 4 модуль</value>
|
||||
</synonym>
|
||||
<server>true</server>
|
||||
<externalConnection>true</externalConnection>
|
||||
<clientOrdinaryApplication>true</clientOrdinaryApplication>
|
||||
</mdclass:CommonModule>
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user