gifts2017

Сравниваем быстро. Или OpenSource наше все.

Опубликовал Иванов Дмитрий (mdmdvd) в раздел Программирование - Инструментарий

Сравниваем быстро. Или OpenSource наше все.

По ходу работы рано или поздно каждый из программистов 1с сталкивается с такой проблемой как обновление "нестандартных" конфигураций.  Эта проблема также известна как "ручное" обновление. Особенно тяжело приходится тем , кто работает с расчетными подсистемами и боками в 1с. По своему опыту хоть и небольшому (примерно 2 года) эти участки являются наиболее часто меняемыми. В этой публикации я изложу свой вариант облегчения проблемы. Итак начнем.

Как в "Очумелых ручках" нам понядобяться:

1. Программа Notepad++. Взять ее можно здесь http://notepad-plus-plus.org/

2. Плагин Compare. Взять здесь http://sourceforge.net/projects/npp-compare/

3. После скачивания и установки программы плагин помещаем в папку plugins установленной программы.

4. Запускаем программу.

Дальнейший алгоритм действий такой. При сравнении и объединении конфигураций в 1с мы можем узнать какие именно модули изменились. Берем два нужных нам модуля: один из "нашей" конфигурации, второй из "ихней конфигурации".

Полностью копируем тексты модулей которые мы сравниваем втекстовые файлы. Например: модульнаш.txt и модульих.txt

Открываем оба файла в notepad++ и выбираем меню плагины-->Compare-->Compare

Результат вы можете видеть на картинке.

В навигационной панели наглядно видня стркутура изменения.

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

надеюсь моя статья была полезна.

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Дмитрий Денисов (Uncore) 25.03.13 12:14
(0) А почему для этого не используете типовой функционал сравнения при сравнении/объединении с файлом конфигурации? По-моему там гораздо удобнее сравнивать даже сильно дописанные модули. Ведь особенно когда их много, будет очень неудобно сохранять их в текстовые файлы и сравнивать.
Кстати, для сравнения текстовых файлов можно также использовать "Файл-сравнить файлы" в 1С.
2. Сергей Ожерельев (Поручик) 25.03.13 12:16
(0) WinMerge или KDiff3 или CodeCompare ужо не канают? Насчет CodeCompare может и соглашусь, 20 метров чересчур, но остальные нормально справляются с кириллицей.
3. Сергей Ожерельев (Поручик) 25.03.13 12:18
(1) Да неудобный он нифига. Сам при сравнении и объединении текстов Winmerge использую.
4. Дмитрий Денисов (Uncore) 25.03.13 12:20
(3) В принципе, всегда хватало. Указанный Winmerge не пробовал, попробую для сравнения.
5. Владимир Водин (BalVlad) 25.03.13 13:07
Использую WinMerge Portable. Удобно и всегда с собой (на флешке). Брал здесь
6. Иванов Дмитрий (mdmdvd) 25.03.13 13:33
У каждого свои вкусы. Спасибо за информацию. Мне просто так нагляднее.
7. Иванов Дмитрий (mdmdvd) 25.03.13 13:35
Кроме того еще и как вариант бэкапа. в слчуае неправильного слияния.
8. Призрак (davdykin) 25.03.13 13:44
О вкусах конечно не спорят, но преимущества данного метода мне непонятны. Во-первых при обновлении через механизм "Поддержка/обновить" можно сравнить, что изменено в вашей конфигурации, а что изменено в конфигурации поставщика. Во-вторых можно посмотреть изменения по процедурам и функциям, что на мой взгляд удобней, чем просматривать изменения всего модуля. В третьих и самое вкусное это частичное обновление модулей, т.е. можно указать какие процедуры из модуля обновлять а какие нет.
cleaner_it; +1 Ответить 2
9. Иванов Дмитрий (mdmdvd) 25.03.13 13:48
(8) davdykin,Это точно у каждого свои предпочтения. Что было здесь наглядно продемонстрировано)
10. Евгений Сосна (pumbaE) 25.03.13 13:57
(8) Добавьте в параметры процедуры/функции или же пробел после запятой и сравнение по процедурам и функциям слетает.
Результат слияния вы не сможете получить.
Поддержка/обновить - это хорошо, только вот что делать если у нас не 3-х сторонние сравнение...

(0) пользуюсь kdiff , notepad++ был бы интересен при поддержки раскраски для 1С текстов.
11. Алекс Ю (AlexO) 25.03.13 14:16
Ерунда.
Я давным-давно для сравнения текстов пользуюсь Total Com - так мне не нужны даже спецпрограммы для сравнения, у меня "все под рукой" и так.
А писать статью..
Автор, написал бы лучше тогда, чем одна программа удобнее другой.
А не просто открытие "я сравниваю два текста!" :)
12. Алекс Ю (AlexO) 25.03.13 14:18
+ (11 ) Запросы сравниваются "на раз", т.к. изначально текстовые.
Е-мое, ну давайте "под вывеской 1С" напишем, как включать компьютер...
13. Иванов Дмитрий (mdmdvd) 25.03.13 14:20
Спасибо за идею. Следующую статью напишу о программах для сравнения. Соберу все что здесь перечислено и устрою своеобразный обзор.
14. Иванов Дмитрий (mdmdvd) 25.03.13 14:23
(12) AlexO, Статья была написана с прицелом для начинающих программистов, которые впервые сталкиваются с познанием запросов. Особенно запросов написанных 1С. Я когда первый раз увидел зарплатные запросы в 1С был мягко говоря удивлен их "грандиозностью".
redwonder87; +1 Ответить
15. q_i 26.03.13 16:46
+ в WinMerge не нужно ничего сохранять ни в какие текстовые файлы. достаточно просто скопировать+вставить тексты в левое и правое окошки и нажать F5. дополнительный бонус - возможность сравнения файлов Excel/Word.
единственный, на мой взгляд, недостаток - нет версии под линукс.
16. Дмитрий Мурыгин (muryginds) 28.03.13 10:53
17. andrey dyak (dyak84) 16.04.14 16:16
Хорошая разработка. Потребовалось сравнить и объединить два родственных общих модуля со своими наработками с совершенно разных конфигураций. Идея и интересная и бесплатная одновременно. Стидно что раньшн до такого не додумался. Автору спасибо так держать.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа