Skip to content

Commit

Permalink
Merge pull request #2 from 1C-Company/master
Browse files Browse the repository at this point in the history
Решение конфликтов
  • Loading branch information
DoublesunRUS committed Sep 17, 2021
2 parents da1766e + 53c565c commit 06b7c0e
Show file tree
Hide file tree
Showing 323 changed files with 11,096 additions and 54 deletions.
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: Сообщение об ошибке
about: Сообщите об ошибке чтобы помочь нам улучшить проект
title: ''
labels: bug
assignees: ''

---

**Опишите ошибку**
Четкое и краткое описание того, в чем заключается ошибка.

**Как воспроизвести**
Шаги для воспроизведения ошибки:
1. Перейдите в '...'
2. Кликните по '....'
3. Прокрутите вниз до '....'
4. Смотрите ошибку в '....'

**Ожидаемое поведение**
Четкое и краткое описание того, что вы ожидали бы в правильном поведении.

**Скриншоты**
Если возможно, приложите скриншоты проблемы.
Совет: не старайтесь обрезать все лишнее (по вашему мнению) на скриншоте, лучше более полный скриншот со стрелочками на проблемное место.

**Окружение (пожалуйста укажите информацию):**
- OS: [например Windows, macOS]
- Версия 1C:Code-Style-V8 [например, 0.2.3.15]
- Версия 1C:EDT [например, 2021.2.3.15]


**Дополнительная информация**
- Добавьте здесь любую дополнительную информацию о проблеме
- Пример кода на котором воспроизводится ошибка,
- Версию типовой конфигурации 1С + объект в котором воспроизводится проблема
- Ссылки на публичные проекты 1С в котором воспроизводится проблема
59 changes: 59 additions & 0 deletions .github/ISSUE_TEMPLATE/check.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
name: Проверка по стандарту
about: Предложите проверку по существующему стандарту. Вначале ознакомьтесь с соглашением
по проверкам.
title: 'Стандарт NNN: <Название проверки>'
labels: standards
assignees: ''

---

Пожалуйста, в начале, [прочитайте соглашения по проверкам](https://github.com/1C-Company/v8-code-style/blob/master/Check_Convention.md).

**Название проверки**
Напишите краткое название проверки

**Английское название проверки**
Напишите английское название проверки, отображаемое в английском интерфейсе 1C:EDT, или оставьте пустым, если нет возможности перевести.

**Правило анализа кода/метаданных**
Детально опишите алгоритм, порядок действий по поиску проблемного места в коде или метаданных.
Укажете максимально полно все условия, при которых состояния кода/метаданных НЕ являются ошибкой.

**Мета-информация (пожалуйста, заполните если знаете):**
- Номер стандарта: [например: 124]
- Код проверки: [например: my-check-id]
- Тип ошибки: [например: PERFORMANCE или WARNING и т.д.]
- Критичность: [например: MINOR]
- Код ошибки АПК: [например: 539, если аналогичная проверка существует]

**Параметры проверки**
Опишите параметры проверки, которые вы хотели бы настраивать, Например: длинна символов, длинна числа.


**Текст ошибки**
Предложите пример сообщения об ошибке, отображаемый в 1C:EDT.

**Пример некорректного решения**
Приведите пример(ы) некорректного кода (или метаданных)
```bsl
Параметры = Новый Структура("Ключ1, Ключ2, Ключ3, Ключ4");
```

**Описание, почему так делать нельзя**
Укажите описание для разработчика 1С, почему такой код является некорректным.

**Пример корректного решения**
Приведите пример(ы) корректного кода (или метаданных) для текущего правила.
```bsl
Параметры = Новый Структура;
Параметры.Вставить("Ключ1", "");
Параметры.Вставить("Ключ2", "");
Параметры.Вставить("Ключ3", "");
Параметры.Вставить("Ключ4", "");
```

**Дополнительные материалы**
- Ссылка на стандарт на сайте ИТС
- Скриншоты с примерами некорректного состояния кода/метаданных
- Скриншоты с примерами исправленного состояния кода/метаданных
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
63 changes: 62 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,67 @@
1С:Стандарты разработки V8 - CHANGELOG - ИСТОРИЯ ИЗМЕНЕНИЙ
# 1С:Стандарты разработки V8 - CHANGELOG - ИСТОРИЯ ИЗМЕНЕНИЙ

[TOC text bullet hierarchy]

## 0.1.0

Выпуск бета-версии для 1C:EDT 2021.2

### Новые фичи

- Автосортировка метаданных, сортировка объектов верхнего уровня по умолчанию, для подчиненных настраивается
- Выбор подходящего тип общего модуля из списка при создании нового

### Новые проверки

#### Метаданные

- Длина имени объекта метаданного должна быть меньше чем 80
- Приложение должно использовать управляемый режим блокировки данных
- Общий модуль имеет некорректный тип
- Глобальный общий модуль должен оканчиваться на суффикс Глобальный
- Клиент-серверный общий модуль должен оканчиваться на суффикс КлиентСервер
- Клиентский общий модуль должен оканчиваться на суффикс Клиент
- Не заполненено ни представление объекта, ни представление списка

#### Формы

- В полях форм со списками выбора следует всегда устанавливать свойство **РежимВыбораИзСписка** в значение Истина.

#### Код модулей

- Проверка конструктора структуры содержащего больше 3х ключей
- Выполнение запроса в цикле с учетом локальных вызовов в модуле
- Проверка ОбменДанными.Загрузка в обработчике события
- Конструкция "Попытка...Исключение...КонецПопытки" не содержит кода в исключении

#### Запросы

- Временная таблица должна содержать индексы
- Ограничение максимальной длины числа в запросе
- Строковый литерал должен содержать CamelCase
- Соединение с подзапросом

#### Права ролей

- Право роли содержит текст ограничения доступа (RLS)
- Установлено право "ИнтерактивноеУдаление"
- Установлено право "ИнтерактивноеУдалениеПомеченныхПредопределенныхДанных"
- Установлено право "ИнтерактивноеУдалениеПредопределенныхДанных"
- Установлено право "ИнтерактивноеПометкаУдаленияПредопределенныхДанных"
- Установлено право "ИнтерактивноеСнятиеПометкиУдаленияПредопределенныхДанных"
- Право "Активные пользователи" на корень конфигурации установлено только у стандартной роли
- Право "Администрирование" на корень конфигурации установлено только у стандартной роли
- Право "Режим "Все функции"" на корень конфигурации установлено только у стандартной роли
- Право "Администрирование расширений конфигурации" на корень конфигурации установлено только у стандартной роли
- Право "Администрирование данных" на корень конфигурации установлено только у стандартной роли
- Право "Интерактивное открытие внешних обработок" на корень конфигурации установлено только у стандартной роли
- Право "Интерактивное открытие внешних отчетов" на корень конфигурации установлено только у стандартной роли
- Право "Вывод" на корень конфигурации установлено только у стандартной роли
- Право "Сохранение данных пользователя" на корень конфигурации установлено только у стандартной роли
- Право "Automation" на корень конфигурации установлено только у стандартной роли
- Право "Внешнее соединение" на корень конфигурации установлено только у стандартной роли
- Право "Толстый клиент" на корень конфигурации установлено только у стандартной роли
- Право "Тонкий клиент" на корень конфигурации установлено только у стандартной роли
- Право "Веб-клиент" на корень конфигурации установлено только у стандартной роли
- Право "Обновление конфигурации базы данных" на корень конфигурации установлено только у стандартной роли
- Право "Журнал регистрации" на корень конфигурации установлено только у стандартной роли
Original file line number Diff line number Diff line change
Expand Up @@ -191,13 +191,17 @@ public boolean performOk()
{
prefs.remove(AutoSortPreferences.KEY_TOP_NODE);
if (prefs.nodeExists(AutoSortPreferences.KEY_TOP_NODE))
{
prefs.node(AutoSortPreferences.KEY_TOP_NODE).removeNode();
}
}
if (buttons.get(AutoSortPreferences.KEY_SUBORDINATE_OBJECTS).getSelection())
{
prefs.remove(AutoSortPreferences.KEY_SUBORDINATE_NODE);
if (prefs.nodeExists(AutoSortPreferences.KEY_SUBORDINATE_NODE))
{
prefs.node(AutoSortPreferences.KEY_SUBORDINATE_NODE).removeNode();
}
}
prefs.flush();
}
Expand Down Expand Up @@ -487,7 +491,9 @@ private final class TopCheckStateProvider
public boolean isChecked(Object element)
{
if (element instanceof EReference)
{
return AutoSortPropertyPage.this.topObjects.getOrDefault(((EReference)element).getName(), false);
}
return false;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,10 +116,14 @@ public static boolean isSortSubOrdinateObjects(IProject project)
public static boolean isAllowedToSort(IProject project, EReference listRef)
{
if (ListConstants.TOP_OPBJECT_LISTS.contains(listRef))
{
return isSortAllTop(project) || isSortTopList(project, listRef);
}

if (ListConstants.SUBORDINATE_OBJECT_LISTS.contains(listRef))
{
return isSortSubOrdinateObjects(project) || isSortSubordinateList(project, listRef);
}

return false;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,25 +64,35 @@ public Void execute(IBmTransaction transaction, IProgressMonitor monitor)
for (SortItem item : items)
{
if (monitor.isCanceled())
{
return null;
}

if (!item.getListRef().isMany())
{
continue;
}

EObject parent = transaction.getTopObjectByFqn(item.getFqn());
if (parent != null)
{
Object value = parent.eGet(item.getListRef());
if (!(value instanceof List))
{
continue;
}

List<?> elements = (List<?>)value;
if (elements.size() < 2)
{
continue;
}

SortCommand command = new SortCommand(parent, item.getListRef(), item.getSorter());
if (command.canExecute())
{
command.execute();
}
command.dispose();

}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,9 @@ public SortJob(IDtProject dtProject, ISortService sortService, IWorkspaceOrchest
protected IStatus run(IProgressMonitor monitor)
{
if (dtProject.getWorkspaceProject() == null)
{
return Status.CANCEL_STATUS;
}

Object handler = workspaceOrchestrator.beginBackgroundOperation("Sort-MD-objects", //$NON-NLS-1$
Arrays.asList(dtProject), ProjectPipelineJob.BUILD);
Expand All @@ -85,7 +87,9 @@ protected IStatus run(IProgressMonitor monitor)
execute(monitor);
}
if (monitor.isCanceled())
{
queue.clear();
}
}
finally
{
Expand Down
Loading

0 comments on commit 06b7c0e

Please sign in to comment.