Назначение
Типовые продукты 1С не учитывают всех особенностей конкретного предприятия, поэтому программисты часто исправляют конфигурации под конкретного заказчика. В том числе модификации подвергаются тексты модулей существующих объектов и их форм. После выхода нового релиза все внесенные в код изменения должны сохраниться. Модуль обновления текстов позволяет процесс модификации кода нового релиза выполнять с минимальным привлечением человеческого труда.
Возможности
Основная задача модуля – перенос изменений из рабочей (пользовательской) в новую конфигурацию. Кроме этого, предусмотрена возможность глобальной замены текста в строке и добавление вызовов общих модулей перед вызовом функций.
Параметры запуска
Перед началом работы модуля нужно указать следующие параметры:
- Выполнять для обработанных модулей. Если флаг установлен в истину, тогда обрабатываться буду все модули без исключения, иначе ранее обновленные модули будут пропускаться.
- Вставлять вызов общих модулей перед вызовом функций. Если флаг установлен в истину, тогда перед вызовами функций общих модулей будет дописываться имя модуля, к которому относится функция.
- Формировать черновики. Если флаг установлен в истину, тогда программа сформирует черновики обновленных текстов модулей.
- Глобальная замена. Если флаг установлен в истину, то в тексте модулей будет произведена замена выражений в соответствии с таблицей замен.
- Путь до каталога с модулями. В указанный каталог будут сохраняться черновики и результаты объединения модулей.
- Таблица замен. Содержит колонки «Условие», «Заменяемая строка» и «Заменяющая строка». Первая колонка содержит условие, при выполнений которого необходимо проводить замену. Условие должно быть написано с использованием стандартных функций встроенного языка 1С и параметра «тек_Строка», который отвечает за текущую строку исправляемого модуля. Во вторую колонку записывается текст, который необходимо заменить на текст из третьей колонки.
Возможные ошибки
В ходе тестирования и использования программы были выявлены типичные случаи, когда обновление текстов модулей происходит некорректно. К ним относятся:
- В новой типовой и в рабочей конфигурации были изменения относительно старого релиза в одном и том же месте.
- Поскольку соответствие между функциями в разных конфигурациях устанавливается по имени, то, если оно изменилось, одна из функций полностью заменится другой.
- В общих модулях имеются экспортные функции с одинаковым названием.
- Неправильно подобран общий модуль для вызова из него экпортной функции.
Во всех указанных случаях в лог работы обновления модулей выводится предупреждение о потенциальной ошибке. Работа над выявленными недостатками ведется. В ближайших релизах будут улучшены алгоритмы обновления текстов.
|