1C-Company / v8-code-style

Расширение для 1C:EDT, которое помогает разрабатывать конфигурации/приложения по стандартам 1С для платформы "1С:Предприятие 8".
Eclipse Public License 2.0
175 stars 53 forks source link

Ложное срабатывание проверки: <bsl-legacy-check-module-extension> #1439

Open pa240775 opened 7 months ago

pa240775 commented 7 months ago

Название/код проверки: Текст метода имеет отличия от базового метода, что не допустимо в случае расширения "Изменение и контроль"

Код проверки: bsl-legacy-check-module-extension

Версия плагина: 0.7.0.108

Пример кода/метаданных содержащих ошибку

&ИзменениеИКонтроль("ПКО_Документ_ПКОВнутренняяПередача_Получение_ПередЗаписьюПолученныхДанных") Процедура КОЛ_ПКО_Документ_ПКОВнутренняяПередача_Получение_ПередЗаписьюПолученныхДанных(ПолученныеДанные, ДанныеИБ, КонвертацияСвойств, КомпонентыОбмена) //++ПерфильевДЮ 01.12.2023 Если ЕстьИсправлениеИлиСторно(ДанныеИБ, ПолученныеДанные, КомпонентыОбмена) Тогда Возврат; КонецЕсли;

ПередМержеванием_ПКО(ПолученныеДанные, ДанныеИБ, КомпонентыОбмена);

Мержевание_ПКО(ПолученныеДанные, ДанныеИБ, КонвертацияСвойств, КомпонентыОбмена);

ПослеМержевания_ПКО(ПолученныеДанные, ДанныеИБ, КомпонентыОбмена);
#Удаление
ПолученныеДанные = ?(ДанныеИБ = Неопределено, ПолученныеДанные, Неопределено);  
#КонецУдаления
УстановитьОтменуМеханическойЧисткиДвижений(ДанныеИБ);

КонецПроцедуры

Расширяемая процедура из конфигурации Процедура ПКО_Документ_ПКОВнутренняяПередача_Получение_ПередЗаписьюПолученныхДанных(ПолученныеДанные, ДанныеИБ, КонвертацияСвойств, КомпонентыОбмена) Если ЕстьИсправлениеИлиСторно(ДанныеИБ, ПолученныеДанные, КомпонентыОбмена) Тогда Возврат; КонецЕсли;

ПередМержеванием_ПКО(ПолученныеДанные, ДанныеИБ, КомпонентыОбмена);

Мержевание_ПКО(ПолученныеДанные, ДанныеИБ, КонвертацияСвойств, КомпонентыОбмена);

ПослеМержевания_ПКО(ПолученныеДанные, ДанныеИБ, КомпонентыОбмена);

ПолученныеДанные = ?(ДанныеИБ = Неопределено, ПолученныеДанные, Неопределено);
УстановитьОтменуМеханическойЧисткиДвижений(ДанныеИБ);

КонецПроцедуры

Параметры = Новый Структура("Ключ1, Ключ2, Ключ3, Ключ4");

image

Почему это НЕ ошибка

код идентичный, отличается только блоком #Удаление#КонецУдаления В конфигураторе ошибок применения расширения нет МенеджерОбменаЧерезУниверсальныйФормат.zip МенеджерОбменаЧерезУниверсальныйФорматРасширение.zip

Дополнительные материалы

pa240775 commented 7 months ago

почему-то после оформления нашли причину: &ИзменениеИКонтроль("ПКО_Документ_ПКОВнутренняяПередача_Получение_ПередЗаписьюПолученныхДанных") Процедура КОЛ_ПКО_Документ_ПКОВнутренняяПередача_Получение_ПередЗаписьюПолученныхДанных(ПолученныеДанные, ДанныеИБ, КонвертацияСвойств, КомпонентыОбмена) //++ПерфильевДЮ 01.12.2023

комментарий после "(" Но вопрос остается. Конфигуратор такое пропускает без ошибки, а EDT выдает ошибку, но быстрое исправление не предлагает действие по исправлению, как описано в справке по EDT