Giter VIP home page Giter VIP logo

dt-project-checks's Introduction

Build Coverage Lines of Code Bugs Code Smells Technical Debt

1С:EDT Project checks

Расширение для 1C:EDT, которое проверяет структурную целостность проектов "1С:Предприятия 8".

Проверки по стилю кодирования, логическим ошибкам кода и метаданных, разработка по стандартам 1С располагаются в проекте: https://github.com/1C-Company/v8-code-style/

Установка

Внимание! Расширение включается в дистрибутив 1C:EDT и не требует дополнительной установки.

Плагин 1С:EDT Project checks поставляется в виде репозитория Eclipse. Ручная установка расширения может выполняться следующими способами:

  • непосредственно из p2-репозитория, опубликованного на серверах фирмы 1С.
  • из локальной копии p2-репозитория, распакованного в локальную папку из предварительно скачанного zip-архива.

В строку выбора репозитория для установки (Work with) вставьте адрес репозитория:

Версия P2-репозиторий ZIP-архив репозитория
0.3.0 для 1C:EDT 2022.2 https://edt.1c.ru/downloads/releases/plugins/dt-project-checks/edt-2022.2/0.3.0/repo/ https://edt.1c.ru/downloads/releases/plugins/dt-project-checks/edt-2022.2/0.3.0/repo.zip
0.2.0 для 1C:EDT 2022.1 https://edt.1c.ru/downloads/releases/plugins/dt-project-checks/edt-2022.1/0.2.0/repo/ https://edt.1c.ru/downloads/releases/plugins/dt-project-checks/edt-2022.1/0.2.0/repo.zip
0.1.0 для 1C:EDT 2021.3 https://edt.1c.ru/downloads/releases/plugins/dt-project-checks/edt-2021.3/0.1.0/repo/ https://edt.1c.ru/downloads/releases/plugins/dt-project-checks/edt-2021.3/0.1.0/repo.zip

Далее для установки нужно выполнить следующие действия:

  • В среде разработки 1C:Enterprise Development Tools (EDT) выберите пункт меню Help – Install New Software (Справка – Установить новое ПО).
  • В открывшемся окне мастера установки в строке Work with воспользуйтесь кнопкой Add... и укажите расположение репозитория.
  • Если установка производится непосредственно из репозитория, опубликованного на серверах фирмы 1С, то скопируйте указанный адрес репозитория
  • Если установка производится из локальной папки, то воспользуйтесь кнопкой Local... и далее по кнопке Local укажите папку, в которую распакован репозиторий.
  • Отметьте компонент 1C:EDT Project checks и нажмите кнопку Next>
  • На следующем шаге система определит зависимости и сформирует окончательный список библиотек к установке, после этого нажмите кнопку Next>
  • Прочитайте и примите условия лицензионного соглашения и нажмите кнопку Finish
  • Дождитесь окончания установки и перезапустите среду 1C:Enterprise Development Tools. Установка завершена.

Участие в проекте

Добро пожаловать! См. правила в соответствующем разделе.

Лицензия

Лицензирование расширений размещенных в данном проекте осуществляется на условиях свободной (открытой) лицензии Eclipse Public License - v 2.0 (полный текст лицензии - https://www.eclipse.org/legal/epl-2.0/)

dt-project-checks's People

Contributors

almaznasibullin avatar dsavenko avatar maksimdzyuba avatar marmyshev avatar nikolay-martynov avatar theshadowco avatar tretyakevich avatar vadimeg avatar wolfandw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dt-project-checks's Issues

Реализовать проверку на наличие дубликатов среди идентификаторов элементов форм

Описание проблемы

При одновременной доработке одной формы двумя и более разработчиками может возникнуть ситуация, что появляются дубликаты среди идентификаторов элементов форм, для этого достаточно добавить каждому из разработчиков новый элемент формы. Наличие дубликатов среди идентификаторов элементов форм "ломает" форму в рантайме.

Описание решения проблемы

Предлагается реализовать проверку с возможность исправления для вышеописанной проблемы наличия дубликатов среди идентификаторов элементов форм.

Дополнительная информация

No response

Реализовать проверку ссылочной целостности для объектов метаданных конфигурации

Описание проблемы

В настоящий момент существует ряд ошибок, связанных с нарушением ссылочной целостности в объектах метаданных конфигурации. Данные ошибки приводят либо к невозможности публикации в ИБ (с совершенно недостаточным уровнем информации для локации и последующего исправления проблемы), либо к ошибкам в рантайме.

Описание решения проблемы

Предлагаю реализовать проверку ссылочной целостности объектов метаданных, с возможностью блокировки публикации в ИБ при обнаружении соответствующих проблем (и до их исправления).
Это позволит:

  1. Предоставлять адресную информацию о проблемах ссылочной целостности
  2. В последующем реализовать механизм быстрого исправления данных проблем

Дополнительная информация

No response

Подъем версий до 0.7.0 и переход на EDT 2024.1

Описание проблемы

Необходимо поднять версии до 0.7.0 и перейти на EDT 2024.1.

Описание решения проблемы

Необходимо поднять версии до 0.7.0 и перейти на EDT 2024.1.

Дополнительная информация

No response

Проверять наличие расширенной подсказки у группы формы

Описание ошибки

При создании группы создается фича extendedTooltip. В файле формы она выглядит примерно так:

        <extendedTooltip>
            <name>ПоляРасширеннаяПодсказка</name>
            <id>460</id>
            <visible>true</visible>
            <enabled>true</enabled>
            <userVisible>
              <common>true</common>
            </userVisible>
            <type>Label</type>
            <autoMaxWidth>true</autoMaxWidth>
            <autoMaxHeight>true</autoMaxHeight>
            <extInfo xsi:type="form:LabelDecorationExtInfo">
              <horizontalAlign>Left</horizontalAlign>
            </extInfo>
        </extendedTooltip>

Если по какой-то причине расширенной подсказки у формы нет, то форма не открывается в предварительном просмотре. Поэтому хорошо бы сделать квикфикс, который бы создавал потерянную фичу у группы.

Как воспроизвести

Создать форму с группой. В текстовом редакторе удалить фичу extendedTooltip

Скриншоты

No response

Ожидаемое поведение

Должна выдаваться критическая ошибка и предлагаться квикфикс для исправления проблемы

Лог рабочей области

!ENTRY com._1c.g5.v8.dt.form.layout 4 0 2022-05-30 12:20:55.879
!MESSAGE LayoutProblem:
null
!STACK 0
java.lang.NullPointerException
at com._1c.g5.v8.dt.form.layout.generation.base.RichElementBaseGenerator.prepare(RichElementBaseGenerator.java:114)
at com._1c.g5.v8.dt.form.layout.generation.base.RichElementBaseGenerator.prepare(RichElementBaseGenerator.java:1)
at com._1c.g5.v8.dt.form.layout.generation.base.GroupBaseGenerator.prepare(GroupBaseGenerator.java:37)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:809)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:1)
at com._1c.g5.v8.dt.form.layout.generation.base.GroupBaseGenerator.prepare(GroupBaseGenerator.java:41)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:809)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:1)
at com._1c.g5.v8.dt.form.layout.generation.base.GroupBaseGenerator.prepare(GroupBaseGenerator.java:41)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:809)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:1)
at com._1c.g5.v8.dt.form.layout.generation.base.GroupBaseGenerator.prepare(GroupBaseGenerator.java:41)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:809)
at com._1c.g5.v8.dt.form.layout.generation.LogicGroupGenerator.prepare(LogicGroupGenerator.java:1)
at com._1c.g5.v8.dt.form.layout.generation.base.GroupBaseGenerator.prepare(GroupBaseGenerator.java:41)
at com._1c.g5.v8.dt.form.layout.generation.MainElementGenerator.prepare(MainElementGenerator.java:74)
at com._1c.g5.v8.dt.form.layout.generation.HippoGenerator.generate(HippoGenerator.java:126)
at com._1c.g5.v8.dt.form.layout.service.HippoLayoutService.layout(HippoLayoutService.java:151)
at com._1c.g5.v8.dt.form.layout.service.HippoLayoutService.createHippoSession(HippoLayoutService.java:124)
at com._1c.g5.v8.dt.form.internal.presentation.wysiwyg.FormWysiwygRepresentation$1.execute(FormWysiwygRepresentation.java:328)
at com._1c.g5.v8.dt.form.internal.presentation.wysiwyg.FormWysiwygRepresentation$1.execute(FormWysiwygRepresentation.java:1)
at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeTask(Reactor.java:706)
at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeAndRollback(Reactor.java:227)
at com._1c.g5.v8.bm.integration.internal.BmModel.executeAndRollback(BmModel.java:215)
at com._1c.g5.v8.dt.form.internal.presentation.wysiwyg.FormWysiwygRepresentation.rebuildInternal(FormWysiwygRepresentation.java:323)
at com._1c.g5.v8.dt.form.internal.presentation.wysiwyg.FormWysiwygRepresentation$2.lambda$0(FormWysiwygRepresentation.java:379)

Версия 1С:Code style V8

edt-2022-1

Версия 1С:EDT

Ruby 2022.1

Операционная система

No response

Дополнительная информация

No response

Не перестраиваются маркеры для проверки form-data-path

Описание ошибки

При смене режима совместимости не перестраиваются маркеры

Как воспроизвести

  • Создать конфигурацию с планом обмена и формой узла
  • Поставить конфигурации режим совместимости 8.3.6 или любой другой из списка
  • Кинуть поле ЭтотУзел из объекта на форму
  • Поменять режим совместимости на 8.3.4 или меньше (можно вручную, исправив файл конфигурации, или через экспорт в конфигуратор, в котором поддерживаются старые режимы совместимости)

Появится маркер
Property "Data path" has incorrect value "Объект.ThisNode": 2 segment "ThisNode" referred to unknown object

  • Вернем режим совместимости в изначальный (дефолтный)
  • Маркер останется на месте

Скриншоты

No response

Ожидаемое поведение

Маркер должен удалиться, т.к. путь у элемента формы становится вновь валидным

Лог рабочей области

Версия 1С:Code style V8

edt-2022-1

Версия 1С:EDT

Ruby 2022.1

Операционная система

No response

Дополнительная информация

No response

Реализовать общую проверку потерянных ссылок на объекты метаданных, нарушающих целостность данных конфигурации

Описание проблемы

В случае наличия критических проблем в структурной целостности конфигурации, вызванных подвисшими ссылками/дублями, конфигурация не может быть опубликована в ИБ. Более того, информация об ошибке в данном случае недостаточна для того, чтобы пользователь мог устранить проблему.

Описание решения проблемы

Реализовать проверку для указанных выше проблем, входящую в группу проверок критических проблем целостности данных EDT (блокирующих публикацию в ИБ)

Дополнительная информация

No response

Поднятие версии com.e1c.g5.v8.dt.check.settings

Описание ошибки

Нужно поднять версию com.e1c.g5.v8.dt.check.settings

Как воспроизвести

  1. Перейдите в ...
  2. Кликните по ....
  3. Прокрутите вниз до ....
  4. Смотрите ошибку в ....

Скриншоты

Ожидаемое поведение

Лог рабочей области

Версия 1С:Code style V8

2022-1

Версия 1С:EDT

2022.1

Операционная система

No response

Дополнительная информация

No response

Сделать проверку некорректных ссылок в справке подсистем

Описание проблемы

Конфигуратор при проверке ссылочной целостности выдает ошибку:
Подсистема.Глоссарий.Справка Неразрешимые ссылки на объекты метаданных (1)
Однако Edt ее не видит

Описание решения проблемы

Надо чтобы ошибка отображалась в навигаторе и была возможность ее исправить

Дополнительная информация

No response

Поднятие версий dt.validation.marker

Описание ошибки

EDT/Platform support: Поднятие версий com._1c.g5.v8.dt.validation.marker

Как воспроизвести

  1. Перейдите в ...
  2. Кликните по ....
  3. Прокрутите вниз до ....
  4. Смотрите ошибку в ....

Скриншоты

No response

Ожидаемое поведение

Лог рабочей области

Версия 1С:Code style V8

edt-2022-3

Версия 1С:EDT

2023.3

Операционная система

No response

Дополнительная информация

No response

Нужна проверка на неверное имя команды элемента формы

Описание проблемы

Иногда бывают ситуации, когда валидность команды выявляется только при импорте из конфигуратора (или при экспорте в информационную базу).
Конфигуратор находит невалидную команду и выдает ошибку "Неверное имя команды элемента формы".
Хотелось бы иметь такую проверку на стороне EDT, чтобы выявлять проблемы на раннем этапе

Описание решения проблемы

Реализовать проверку подобную той, что выполняется в конфигураторе, по тем же правилам

Дополнительная информация

No response

Не понятное срабатывание form-named-element-name Код проверки Имя "#" именованного элемента формы является невалидным именем

Описание ошибки

При работе с формой начала появляться ошибка формы:
Описание Положение Код проверки Имя "#" именованного элемента формы является невалидным именем Properties.# form-named-element-name
На форме нет элементов которые я могу отнести к некорректным. Прикладываю файл формы.

Как воспроизвести

.

Скриншоты

scr_0001

Ожидаемое поведение

Как можно исправить или обойти эту ошибку?

Лог рабочей области

Form.zip
Форма по которой выдается ошибка

Версия 1С:Code style V8

0.1.0.107

Версия 1С:EDT

Ruby 2021.3.0

Операционная система

Windows

Дополнительная информация

No response

Перевод валидации объектов метаданных на новый механизм проверок

Описание проблемы

Перевод валидации объектов метаданных на новый механизм проверок

Описание решения проблемы

Реализовать проверку корректности режима совместимости конфигурации
Реализовать проверку базовых URL навигационных ссылок конфигурации мобильного приложения
Реализовать проверку используемой функциональности конфигурации мобильного приложения
Реализовать проверку уникальности имени объекта метаданных для содержащей его коллекции

Дополнительная информация

No response

Падение в проверке MdReferenceIntegrity

Описание ошибки

java.lang.NullPointerException
	at com.e1c.dt.check.internal.md.MdReferenceIntegrity.scheduleCheckIfFeaturesAreTracked(MdReferenceIntegrity.java:298)
	at com.e1c.dt.check.internal.md.MdReferenceIntegrity$ObjectRemovalContextCollector.collectContextOnObjectRemoval(MdReferenceIntegrity.java:402)
	at com.e1c.g5.v8.dt.internal.check.derived.CombinedModelCheckRemovalContextCollector.collectContextOnObjectRemoval(CombinedModelCheckRemovalContextCollector.java:131)
	at com._1c.g5.v8.internal.derived.BmRawEventHandler.collectScopeOnObjectAssociation(BmRawEventHandler.java:338)
	at com._1c.g5.v8.internal.derived.BmRawEventHandler$1.execute(BmRawEventHandler.java:423)
	at com._1c.g5.v8.internal.derived.BmRawEventHandler$1.execute(BmRawEventHandler.java:1)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeTask(Reactor.java:757)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeTask(Reactor.java:700)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeReadOnlyTask(Reactor.java:146)
	at com._1c.g5.v8.bm.integration.internal.BmModel.executeReadonlyTask(BmModel.java:227)
	at com._1c.g5.v8.internal.derived.BmRawEventHandler.handleEvent(BmRawEventHandler.java:415)
	at com._1c.g5.v8.internal.derived.BmRawEventHandler.handleSyncEvent(BmRawEventHandler.java:169)
	at com._1c.g5.v8.bm.integration.internal.event.StandardEventManager.dispatchSyncEvent(StandardEventManager.java:118)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.performEventProcessing(Reactor.java:848)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.handleEvent(Reactor.java:809)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.handleEvent(Reactor.java:790)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.lambda$1(Reactor.java:161)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeTask(Reactor.java:772)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeTask(Reactor.java:700)
	at com._1c.g5.v8.bm.integration.internal.reactor.Reactor.executeTask(Reactor.java:154)
	at com._1c.g5.v8.bm.integration.internal.BmModel.execute(BmModel.java:209)
	at com._1c.g5.v8.dt.internal.core.platform.bm.InternalImportService.executeImportTask(InternalImportService.java:102)
	at com._1c.g5.v8.dt.internal.core.platform.bm.InternalImportService$ResourceImportRunnable.run(InternalImportService.java:181)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)

Как воспроизвести

из лога на ERP-WE

Скриншоты

No response

Ожидаемое поведение

нет NPE

Лог рабочей области

Версия 1С:Code style V8

0.2.0

Версия 1С:EDT

No response

Операционная система

No response

Дополнительная информация

No response

Добавить проверку для обычных форм

Описание проблемы

Сейчас обычные формы никак не отображаются в навигаторе и нет возможности понять, что они есть и найти их.

Описание решения проблемы

Предлагаю сделать проверку на наличие обычных форм. Для обычной формы выводить ошибку
"Обычные формы не поддерживаются."

Дополнительная информация

No response

Не очищаются маркеры после применения квикфикса form-invalid-item-id

Описание ошибки

Маркеры, для которых отработал квик-фикс, должны удаляться из Problem view

Как воспроизвести

  • Создать форму и вручную сделать несколько дублированных ID у элементов формы
  • Дождаться окончания валидации
  • Найти маркеры, которые соответствуют дублированию идов - form-invalid-item-id
  • Применить квик-фиксы для этих маркеров
  • Дождаться окончания валидации

Скриншоты

No response

Ожидаемое поведение

Неактуальные маркеры автоматически удаляются по окончанию валидации

Лог рабочей области

Версия 1С:Code style V8

edt-2022-2

Версия 1С:EDT

Ruby 2022.2

Операционная система

No response

Дополнительная информация

No response

Подъем версий до 0.5.0 и переход на EDT 2023.2

Описание проблемы

Необходимо поднять версии до 0.5.0 и перейти на EDT 2023.2.

Описание решения проблемы

Необходимо поднять версии до 0.5.0 и перейти на EDT 2023.2.

Дополнительная информация

No response

Валидация модели состава автономной конфигурации и квик-фиксы

Описание ошибки

Модель состава автономной конфигурации может содержать ошибочные (лишние) данные. Требуется их найти и удалить

Как воспроизвести

В ресурсном файле модели лишние записи о неиспользуемых объектах.

Скриншоты

No response

Ожидаемое поведение

Отсутствие лишних записей о неиспользуемых объектах

Лог рабочей области

Версия 1С:Code style V8

0.1.0.141

Версия 1С:EDT

2021.3

Операционная система

No response

Дополнительная информация

No response

Необоснованная ошибка "Имя "#" именованного элемента формы является невалидным именем" для реквизита формы ДеревоЗначений

Описание ошибки

Необоснованно выдается ошибка на реквизит формы ДеревоЗначений
Имя "#" именованного элемента формы является невалидным именем

Как оказалось, ругается на дерево значений формы (при удалении этого реквизита ошибка исчезает)
image

Однако вот файл формы и в нем ничего критичного нет - кроме некорректного индекса элемента командной панели
ФайлФормы.txt

Как воспроизвести

  1. Загрузить информационную базу из архива:
    testIB.zip
  2. Загрузить проект из информационной базы
  3. Наблюдать ошибку в панели ошибок

Кстати, проверил - создал новый проект, новый документ, новую форму документа и добавил реквизит ДеревоЗначений - ошибка повторилась

Скриншоты

No response

Ожидаемое поведение

Ошибки не должно быть

Лог рабочей области

логи.zip

Версия 1С:EDT

Ruby 2021.3.1

Операционная система

Windows

Установленные плагины

1C:Code style V8

Дополнительная информация

EDT-test.zip
архив рабочей области с проектом

При удалении команды остаются ссылки на неё

Описание ошибки

Ошибка в том что в конфигурации остаются ссылки на команды, которые удалены. Проблема становится известна только при передаче изменений в ИБ, в виде:

Неизвестная команда - <Путь к команде>

При этом неочевидно где именно осталась ссылка на команду.

Случаи с оставшимися ссылками:

  1. При удалении формы обработки в командном интерфейсе подсистемы остаётся стандартная команда открытия обработки.
  2. При отключении стандартных команд у объекта, в формах остаётся стандартная команда. Например, ввод на основании.

Ссылки на команды остаются в том случае, если в подсистеме или форме был настроен порядок команд или свойства команды, например, видимость.

Как воспроизвести

Команда в подсистеме при удалении формы обработки.

  1. Создайте новую подсистему, добавьте две обработки "Первая" и "Вторая", добавьте обработкам формы.
  2. Включите обработки в состав подсистемы, установите порядок команд в командном интерфейсе подсистемы, сначала "Первая", потом "Вторая".
  3. Очистите основную форму у обработки "Первая", удалите форму у обработки "Первая". В форме "Удаление объекта" нажмите "Далее".
  4. В таблице "Вносимые изменения" отображается единственное действие "Удалить Форма". Нажмите "Готово".
  5. Запустите проект на выполнение. Появится сообщение об ошибке:

Неизвестная команда - DataProcessor.Первая.StandardCommand.Open.

  1. При этом, если у обработки отключить стандартные команды до удаления формы, то ссылка на команду будет удалена из командного интерфейса подсистемы автоматически.
  2. После удаления формы ни отключение стандартных команд, ни исключение обработки из подсистемы не удаляет ссылку на команду из командного интерфейса подсистемы.

Команды в формах при отключении стандартных команд.

  1. Загрузите проект из демобазы БСП с включенной возможностью изменения. Например, БСП 3.1.4.
  2. У бизнес-процесса "Задание" снимите флаг "Использовать стандартные команды".
  3. Запустите проект на выполнение. Появится сообщение об ошибке:

Неверное имя команды элемента формы. - BusinessProcess.Задание.StandardCommand.CreateBasedOn

  1. При этом из нескольких подсистем ссылка на команду удалена автоматически, а в формах ссылка осталась.

Скриншоты

No response

Ожидаемое поведение

При удалении команды, система удаляет все ссылки на удалённую команду.
Или предлагает список объектов для изменения, содержащих команду, аналогично тому, как при переименовании, удалении реквизита.
Проверка конфигурации выводит индикатор блокирующей ошибки, при наличии ссылок на неизвестные команды. Ведь в таком состоянии конфигурацию запустить на выполнение невозможно.

Лог рабочей области

log.zip

Версия 1С:EDT

2021.2.10.2

Операционная система

Windows

Установленные плагины

Нет плагинов

Дополнительная информация

No response

Имя элемента AutoCommandBar не должно проверяться на пустоту

Описание ошибки

При создании проекта в конфигураторе у элемента AutoCommandBar нет имени. После экспорта в EDT пользователи жалуются на ошибки конфигурации, которые не понятно как исправлять. В UI имя этого элемента поменять нельзя. В платформе отсутствие имени у AutoCommandBar не считается ошибкой.

Как воспроизвести

Удалить в форме имя у AutoCommandBar и пересобрать проект

Скриншоты

image

Ожидаемое поведение

На AutoCommandBar не должна выдаваться ошибка при отсутствии имени

Лог рабочей области

Версия 1С:Code style V8

edt-2022-1

Версия 1С:EDT

Ruby 2022.1

Операционная система

Windows

Дополнительная информация

No response

Поднятие версий com._1c.g5.v8.dt.validation.marker

Описание ошибки

EDT/Platform support: Поднятие версий com._1c.g5.v8.dt.validation.marker

Как воспроизвести

  1. Перейдите в ...
  2. Кликните по ....
  3. Прокрутите вниз до ....
  4. Смотрите ошибку в ....

Скриншоты

No response

Ожидаемое поведение

Лог рабочей области

Версия 1С:Code style V8

edt-2024-1

Версия 1С:EDT

2024.1

Операционная система

No response

Дополнительная информация

No response

EDT не видит битую ссылку в свойстве ХранилищеНастроек формы обработки

Описание ошибки

Запускаю проверку конфигурации с настройкой Поиск некорректных ссылок. Конфигуратор выдает сообщение.

Обработка.Обработка1.Форма.Форма.Форма Неразрешимые ссылки на объекты метаданных (1)

Однако EDT при загрузке проекта из этой информационной базы никаких ошибок не видит.

Как воспроизвести

  1. Загрузите информационную базу из файла Test-выгрузкаИБ.zip
    Test-выгрузкаИБ.zip
  2. Выполните проверку конфигурации с настройкой Поиск некорректных ссылок
  3. Убедится, что сообщение об ошибке есть
  4. Загрузить проект из этой информационной базы и убедится, что EDT никаких ошибок не видит

Скриншоты

image
битая ссылка тут
image
это свойство формы
image

Ожидаемое поведение

EDT должен сообщать о битой ссылке и желательно давать ее исправить.

Лог рабочей области

логи.zip

Версия 1С:EDT

Ruby 2021.2.10

Операционная система

Windows

Установленные плагины

1C:Code style V8, 1C:SSL-support

Дополнительная информация

Дополнительно прилагаю обработку в виде Epf-файла и архив проекта
Обработка1.zip
test.zip

Диагностировать битые ссылки в реквизитах элементов форм

Описание проблемы

Сейчас при удалении перечисления в конфигураторе для реквизитов форм с составным типом, который включал это перечисление образуется битая ссылка. Конфигуратором она диагностируется. Edt ошибки не видит

image

Описание решения проблемы

Хочется чтобы Edt так же диагностировал битые ссылки в реквизитах форм.

Дополнительная информация

No response

Проверка каждого именованного объекта формы на наличие имени

Описание проблемы

В форме много именованных элементов.
У каждого из них должно быть заполнено корректное имя. В некоторых сценариях Платформа позволяет иметь пустое имя (установленное, но пустое), но тогда к такому элементу формы невозможно обратиться из кода.

Описание решения проблемы

Проверка form-named-element-name проверяющая каждый именованный объект

Дополнительная информация

No response

Текст лицензии отображается одной строкой

Описание проблемы

В фиче торчит одностночное название лицензии а не полный ее текст

Посмотреть в свойствах бандла в меню Справочка - О программе - Детали установки

Описание решения проблемы

Отображение всего текста

Дополнительная информация

No response

Поднятие версии md.form.model

Описание ошибки

Необходимо поднять версию md.form.model

Как воспроизвести

Скриншоты

No response

Ожидаемое поведение

Лог рабочей области

Версия 1С:Code style V8

edt-2022-2

Версия 1С:EDT

Ruby 2022.2

Операционная система

No response

Дополнительная информация

No response

EDT не видит битых ссылок в составе Общих реквизитов

Описание ошибки

Конфигуратор при проверке логической целостности выдает ошибку

ОбщийРеквизит.ДатаЗаписи.Состав Неразрешимые ссылки на объекты метаданных (1)

Однако edt не видит никаких проблем в реквизите.

Как воспроизвести

test.zip

EDT-test.zip

  1. Загрузите информационную базу из архива test.zip
  2. Загрузите из нее проект (или из архива EDT-test.zip)
  3. Запустите проверку логической целостности конфигурации с поиском некорректных ссылок конфигуратором - увидите ошибку
  4. Откройте проект edt - ошибки нет

Ошибка так же легко воспроизводится в конфигураторе на пустой базе (по сути это ошибка платформы то же - можно регистрировать):

  1. Создайте общий реквизит с отключенным автоиспользованием
  2. Добавьте в него какой-либо документ (на вкладке состав выберите Использовать)
  3. Обновите конфигурацию
  4. Теперь просто удалите документ кнопкой Del
  5. Выполните проверку конфигурации на логическую целостность

Скриншоты

image

кстати диалоги в конфигураторе на разрешении 4к и масштабировании 175% выглядят просто ужасно
причем я не могу поменять размер данного диалога вот в таком виде и приходится пользоваться

image
image

Ожидаемое поведение

EDT должен видеть битую ссылку состава общего реквизита
Очень желательно, чтобы можно было ее исправить прямо в Edt

Лог рабочей области

логи.zip

Версия 1С:EDT

Ruby 2021.2.10

Операционная система

Windows

Установленные плагины

1C:Code style V8, 1C:SSL-support

Дополнительная информация

Платформа 8.3.12

Подъем версий до 0.6.0 и переход на EDT 2023.3

Описание проблемы

Необходимо поднять версии до 0.6.0 и перейти на EDT 2023.3.

Описание решения проблемы

Необходимо поднять версии до 0.6.0 и перейти на EDT 2023.3.

Дополнительная информация

No response

Исключить BaseForm из проверок для форм

Описание ошибки

BaseForm - служебная сущность и используется для синхронизации заимствованной формы с заимствуемой из базовой конфигурации. Проверки на этой форме приводят к появлению некорректных сообщений об ошибках. См. 1C-Company/1c-edt-issues#423

Как воспроизвести

  • Создать форму расширения от формы с элементами и путями данных
  • Дождаться окончания валидации
  • В списке ошибок будут неожидаемые сообщения про пути к данным

Скриншоты

No response

Ожидаемое поведение

Не должно быть сообщений, связанных с BaseForm

Лог рабочей области

Не требуется

Версия 1С:Code style V8

edt-2022-1

Версия 1С:EDT

Ruby 2022.1

Операционная система

No response

Дополнительная информация

No response

Подъем версий до 0.4.0 и переход на EDT 2022.3

Описание проблемы

Необходимо поднять версии до 0.4.0 и перейти на EDT 2022.3.

Описание решения проблемы

Необходимо поднять версии до 0.4.0 и перейти на EDT 2022.3.

Дополнительная информация

No response

Битые ссылки командного интерфейса форм регистрировать в ошибках конфигурации

Описание проблемы

Просьба регистрировать битые ссылки командного интерфейса форм в ошибках конфигурации.

image

Описание решения проблемы

Битые ссылки командного интерфейса форм регистрировать в списке ошибок конфигурации.

Подъем версий до 0.8.0 и переход на EDT 2024.2

Описание проблемы

Необходимо поднять версии до 0.8.0 и перейти на EDT 2024.2.

Описание решения проблемы

Необходимо поднять версии до 0.8.0 и перейти на EDT 2024.2.

Дополнительная информация

No response

Квик-фикс по проверки путей к данным на форме

Описание проблемы

Часто элемент с путем к данным в котором битая ссылка, не виден на форме или его тяжело найти.

Описание решения проблемы

Добавить квик-фиксы:

  • удаление плохого пути к данным
  • Удаление элемента формы с плохим путем к данным - т.к. он может не отображаться на форме из-за битой ссылки

Дополнительная информация

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.