Обработка для поиска повторов строк.
Обработка находит одинаковые строки в разных текстовых файлах.
Контроль файлов - только с сервера или с указанием имени компьютера в сети!
\\ИмяКомпьютера\Каталог\...
Настраивается - Количество одинаковых строк,
любой тип/маска файла: txt, xml, bsl, os, md, js... все файлы любых типов *.*
Поиск по вложенным под-каталогам, выбор кодировки,
удобное открытие файлов в одно нажатие... в Вами выбранном редакторе WordPad, NotePad++, Visual Studio Code...
Но копировать текст целыми блоками в коде программы - нужно в разумных пределах. Иногда это нужно, для структуры или запроса, но надо знать и контролировать такие моменты.
Данная обработка призвана помочь оценить масштабы "одинаковости" кода и помочь в улучшении (рефакторинге) кода и его структурном изменении.
Обработка находит набор одинаковых строк (с порогом срабатывания по количеству одинаковых строк - не менее 10-50 для кода 1С).
Чтобы исключить "правильные" "лесенки" строк окончания условий вида:
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
НО, если повторяются более 100 строк... такой "лесенки" быть не может?! Надо уже как то от такого избавляться! Выносить общие блоки в отдельные функции например. Менять как-то структуру объектов, заняться Рефакторингом.
В моём примере 2 документа имеют более 121 одинаковых строк, поэтому порог срабатывания - надо подбирать под себя...
Возможности отбора:
- по одной или всем вложенным папкам (дереву) выбранной папки
- фильтр по типу(расширению)-txt, xml, bsl, os, md, js...
- использование кодировки текста: UTF-8 / ANSI(Windows) / OEM (DOS) / Системная
Файлы *.os и *.bsl - откуда они и зачем?
Воодушевленный статьями про синхронизацию 1С-хранилища и GIT, такими как:
- //infostart.ru/public/903269 - Синхронизация хранилища 1С и git-репозитория с применением OneScript и Gitsync
- //infostart.ru/public/721600 - Использование git при разработке на 1С
- //infostart.ru/public/811452 - Практика применения инструментов продвинутого разработчика 1С
получаются файлы с типами *.bsl или вообще без расширения... которые "автоматически" получаются после разложение хранилища конфигурации в "нормальную структуру папок" с помощью gitsync, за что отдельное спасибо Артуру Аюханову (artbear), (обязательно всем смотреть его статью //infostart.ru/public/811452/)
Файлы с типом *.os - написаны на 1С... точнее на языке OneScript (описание от автора: Андрей Овсянкина (Evil Beaver) - см. //infostart.ru/public/548028/) и для них тоже захотелось использовать копипастамер.
Данная обработка является "наследницей" обработки 2014г //infostart.ru/public/294285 (автор в курсе) с существенными улучшениями, доработкой и переводом на управляемые формы для 8.3 Пришлось переделывать передачу таблиц значений клиент-сервер (статья про это //infostart.ru/public/240022/)
Код открыт, дорабатывайте кому как нравится.
обработка для 8.2 - открываются через Файл - Открыть...
для 8.3 - можно использовать как внешнюю обработку для БСП любой версии 3.1.х
+++++++++++++++ Изменения +++++++++++++++
28.08.2024 добавлена возможно загрузки внешней обработки для любой версии БСП - 3.1.Х.XXX
улучшен интерфейс обработки для платформы 1С 8.3.25.
15.11.2019 улучшен файл для Обычных форм (совместима с 1С 8.2):
* отбор по любой маске файла... а не только типу файла,
* для анализа - в таблице сразу отражаются файл1, файл2, и номера строк повтора в файлах.
* Улучшен результат показывает число повторов, среднюю длину повторов, % повторяющихся строк.