Как обновлять не типовую конфигурацию 7.7

Опубликовал Nicholas Mikuslas (Nicholas) в раздел Администрирование - Системное

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

Рассмотрим данный вопрос на примере конфигурации 1С:Зарплата и Кадры.

Предположим, что у нас есть:

  1. Измененная конфигурация 1С:Зарплата и Кадры 7.70.310.
  2. Новый релиз типовой конфигурации 1С:Зарплата и Кадры 7.70.315.
Для начала выясним, что же конкретно изменилось со времен релиза 310.

Создание пустых баз типовых релизов

Скачаем обновления конфигураций с сайта 1С (релиз 7.70.310 и 7.70.315).

Распакуем архивы в пустые каталоги, например, CurrentBase и NewBase для 310-го и 315-го релизов соответственно.

Каталог базы данных 1С

Запускаем 1С предприятие и добавляем, созданные ранее типовые конфигурации, в список информационных баз.

Запуск 1С:Предприятия

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

Запускаем Конфигуратор для текущей базы (CurrentBase, типовой релиз 7.70.310). При первом запуске необходимо указать параметры базы данных.

Выбор формата хранения данных

Оставляем все как есть, нажимаем ОК. Заходим в меню «Конфигурация» - «Открыть конфигурацию». Появится предупреждение.

Конфигурация является специализированной

Нажимаем ОК. Откроется окно конфигурации. После этого сохраняем изменения (меню «Файл» - «Сохранить»). 

Аналогичные действия необходимо проделать с новой базой (NewBase, типовой релиз 7.70.315).

Сравнение типовых релизов

Запускаем 1С:Предприятие в режиме Конфигуратор для базы CurrentBase. Заходим в меню «Конфигурация» - «Объединение конфигураций», выбираем файл 1CV7.MD и каталога NewBase. Программа сравнит две конфигурации и выведет список изменившихся объектов.

Объединение конфигураций

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

Отчет об изменениях конфигурации

Процесс обновления не типовой конфигурации

Если изменений много, то рекомендую обновлять группами объектов (справочники, документы и т.д.), периодически сохраняясь. Но нужно учитывать их зависимости. Например, в первую очередь обновляются Константы и Перечисления, т.к. они могут использоваться в документах и прочих объектах. Журналы документов нужно обновлять после того как сохранены все изменения в документах.

Итак, мы имеем список измененных объектов конфигурации. Приступим к обновлению.

Запустим 1С:Предприятие в режиме Конфигуратор для базы, которую необходимо обновить. Заходим в меню «Конфигурация» - «Объединение конфигураций», выбираем файл 1CV7.MD и каталога NewBase (типовой релиз 7.70.315). Будем объединять небольшими группами, поэтому нажимаем кнопку «Выкл. все».

Константы

Здесь мы имеем только один добавленный объект. Константа новая, изменить ее не могли, поэтому смело помечаем её и нажимаем кнопку «ОК».

Константы

Откроется окно конфигурации с добавленной константой.

Новый элемент метаданных

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

Свойства константы

Сохраним изменения (меню «Файл» - «Сохранить»).

Перечисления

Снова запускаем объединение конфигураций, нажимаем кнопку «Выкл. все». Дабы не повторяться, для следующих групп объектов, я не буду напоминать об этом.

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

Перечисления

Нажимаем «ОК», сохраняем конфигурацию.

Глобальный модуль, общие талицы

Первым делом заглянем в распечатку, которая у нас перед глазами. Общие таблицы у нас не менялись, изменился только текст глобального модуля. Поэтому можно не обращать внимание на грозное предупреждение «Объект удален». Мы просто не будем обновлять все общие таблицы.

Глобальный модуль

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

Комментарии в коде

Далее можно пойти двумя путями:

  1. Скопировать текст всего глобального модуля из нового типового релиза, затем внести все доработки, сделанные программистами.
  2. Если Вы распечатали изменения в конфигурации с подробной информацией типа: «Добавлены строки (261, 261)», то можно найти соответствующие изменения в новой типовой конфигурации и скопировать их в обновляемую.

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

Откроем второе окно конфигуратора для базы NewBase. Скопируем текст глобального модуля (меню «Действия» - «Выделить все», затем «Действия» - «Скопировать») и заменим им текст "глобальника" обновляемой конфигурации.

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

Все доработки в нашей базе прокомментированы определенным образом, поэтому запустим поиск по строке вида: «//Modified ОАО "Рога и Копыта"». Затем доработанные блоки кода по очереди перенесем в обновляемую базу.

Комментирование доработок

Этот процесс не быстрый и достаточно кропотливый, т.к. помимо поиска места, куда вставить измененный код, нужно еще иметь представление что этот код делает и проанализировать, станет ли он работать в новой редакции.

Продолжение следует...

 

См. также

Добавить вознаграждение
Комментарии
1. Александр Лыткин (TrinitronOTV) 28.10.11 08:37 Сейчас в теме
"Этот процесс не быстрый и достаточно кропотливый, т.к. помимо поиска места, куда вставить измененный код, нужно еще иметь представление что этот код делает и проанализировать, станет ли он работать в новой редакции" - вот с этим полностью согласен
статья стоит внимания, спасибо
2. Алексей Константинов (alexk-is) 6072 28.10.11 09:10 Сейчас в теме
3. vkr (vkr) 102 28.10.11 10:48 Сейчас в теме
(0) Еще очень желательно делать ДВЕ копии типового релиза НОВОЙ конфигурации.
Дело в том, что, например, если в обновляемой конфигурации (Бух, ТиС, УСН и т.п.)
Вами был изменен План счетов, а фирма 1С в новом релизе также его изменила,
то нужно сначала в одну из копий нового релиза внести Ваши изменения,
а потом уже накатывать его на старый релиз...
И таких "технологических" мелочей достаточно много...
Я стараюсь ВСЕ изменения документировать в XLS-файлах (для каждой базы) -
с точным указанием Объекта/Формы/Модуля/Строки и причины/даты изменения,
чтобы в следующий раз не искать с квадратными глазами все различия... :D
Удачи Вам!
4. Татьяна Федорова (fedorova_tv) 8 28.10.11 11:03 Сейчас в теме
Спасибо за статью! Давно интересовал этот вопрос.
5. Александр Лыткин (TrinitronOTV) 28.10.11 12:03 Сейчас в теме
alexk-is пишет:

(1) Вот ещё материал по теме http://infostart.ru/public/18551/

вам спасибо за ссылку, поучительно
6. Александр Батырев (forexclubalex) 28.10.11 14:39 Сейчас в теме
по сравнению с этой статьей http://infostart.ru/public/18551/ текущая намного проще новичкам!На мой взгляд)
7. A (Kochevnic) 28.10.11 20:52 Сейчас в теме
8. Алексей (artspeed) 163 01.11.11 16:44 Сейчас в теме
На текущий момент, думаю конфигурация АК47 полностью заменяет ручной режим объединения/обновления нетиповых конфигураций. Стоит один раз разобраться, и обновление будет занимать в десятки раз меньше времени, чем занятие копипастом.
Просьба не судить. Мое личное мнение. Не в целях рекламы.

Автору "+" за хороший материал.
10. Ирина (irina_ph) 02.11.11 08:10 Сейчас в теме
Спасибо.Вот бы еще рубрику по обновлению нетиповой 8-ки...
11. Игорь Гладкий (smooth) 171 02.11.11 15:27 Сейчас в теме
12. rimma_n (rimma_n) 165 02.11.11 17:29 Сейчас в теме
Как приятно читать такую подробную и доступно написанную статью!
по своему опыту знаю, как трудно писать всяческие руководства пользователю
13. krupp 02.11.11 22:52 Сейчас в теме
вместо того, чтобы распечатывать и т.д. - откройте сравнение нетиповой со старой типовой в одном окне, нетиповой с новой типовой в другом окне и сравнивайте по очереди. можно копировать куски кода прямо из окна сравнения.
вобще странно читать такие вещи сейчас, а не 10 лет назад... неужели эта тема сейчас актуальна?
но автору однозначно плюс за методичное и качественное описание!
14. Nicholas Mikuslas (Nicholas) 694 03.11.11 06:56 Сейчас в теме
(13) krupp, Ваш метод также заслуживает внимания. Распечатывать мне больше нравится по следующим причинам. На распечатанном листке удобно отмечать какие объекты обновлены. Иногда обновление занимает несколько дней, либо может вообще прерываться на неопределенный срок, в этом случае пометки на листочке будут очень полезны. Также я иногда помечаю номера строк модулей, которые необходимо обновить, а также делаю другие заметки.
Обычно у меня открыто сразу несколько конфигураций (обновляемая, копия обновляемой, старая типовая, новая типовая) и, по необходимости, я копирую куски кода из разных конфигураций.
Десять лет назад, или хотя бы лет шесть, мне была бы очень полезна подобная статья. К сожалению тогда у меня не было ни навыков, ни возможности ее написать. Сейчас, на закате ЗиК, статья не так актуальна, но, считаю, она будет полезна многим. Переход на ЗУП иногда достаточно сложен, некоторым крупным предприятиям необходим чуть ли не год, чтобы осуществить переход в полном объеме. Поэтому, считаю, что, по меньшей мере, еще год - два ЗиК будет жить.
15. Vlad Dyukov (vl88) 04.11.11 08:12 Сейчас в теме
статья интересная и с картинками визуально понятная!
16. Артем Т (Twirus) 09.11.11 13:53 Сейчас в теме
Спасибо, интересная статья.
17. cleose (Лена_Лена) 10.11.11 21:53 Сейчас в теме
Спасибо, сохранила себе в заклади.
18. Олег Почекутов (PochekutovOleg) 15.11.11 17:01 Сейчас в теме
19. Татьяна Н (Ntnka) 15.11.11 17:38 Сейчас в теме
Тема еще как актуальна,спасибо за помощь!
20. Инна (westinka) 22.11.11 14:01 Сейчас в теме
вообще, те кто с таким вообще сталкивается, как обновление нетиповых конфигураций, надеюсь большинство, должны брать себе за привычку вставлять комментарии - что добавлено/изменено, а об изменении таблиц (как и приведено в данной статье) указывать, какая таблица изменена и что изменено. а если таблица меняется глобально, то есть смысл оставить старую с другим название, типа "была" приписать. и мне лично тоже удобнее все же сравнивать по документам, без печати, т.к. если изменений много, слишком нечитабельным отчет выходит. :) к тому же лишний пробел 7.7 так же считает за изменений
21. Влад Иваниченко (Winterrr) 23.11.11 03:16 Сейчас в теме
спасибо, интересная статья.
от себя - обновление значительно измененной конфы я обычно начинал с внесения новых объектов (например, справочников, документов) в новый релиз.
22. vkr (vkr) 102 23.11.11 22:08 Сейчас в теме
To All
К месту, наверное, будет напомнить о существовании обработки DlgCompare,
которая позволяет сравнивать элементы экранных форм и даже вносить изменения в конфигурации...
Nicholas; +1 Ответить
23. Никита Тарасов (abstrct) 24.11.11 11:35 Сейчас в теме
Сбасибо, стало немного проще
24. Инна (westinka) 07.12.11 08:22 Сейчас в теме
явно, что статья будет полезна тем, кто с подобным еще не сталкивался. те, кто сталкивался, конечно в основном уже имеют свой опыт.
К месту, наверное, будет напомнить о существовании обработки DlgCompare,
которая позволяет сравнивать элементы экранных форм и даже вносить изменения в конфигурации...

и да, очень полезная обработка
25. Vi Kr (rikony) 10.01.12 18:17 Сейчас в теме
развернуто написано !
ждемс продолжения.
26. oks nosk (1996oks) 18.01.12 11:49 Сейчас в теме
Спасибо, очень актуально. Трудно наверное представить, что в отдаленных уголках нашей родины еще куча народу работает на 7.7.При этом "химичат" в конфиг кому ни лень 2-3 раза в пятилетку, а потом хотят переходить на 8ку и приходиться "колдовать", чтобы обновиться для переноса в 8ку.
Еще раз спасибо!!!!
27. samsomus 24.01.12 16:52 Сейчас в теме
спасибо, доходчиво и просто
28. i i (ivanbor) 24.01.12 16:56 Сейчас в теме
29. oks nosk (1996oks) 27.01.12 12:53 Сейчас в теме
(14) Nicholas, (28) ivanbor, (13) krupp, (1) TrinitronOTV, (2) alexk-is, (3) vkr, (8) artspeed, (6) forexclubalex,и всем кто может помочь

SOS!!! Обновляю не типовую бюдж ЗиК 7.7 с 313 на 320 релиз. Подготовила 320 релиз, внесла в него все изменения. Начинаю Загружать измен конфу в 313 Предупреждение"Выбранный файл не явл потомком данного файла.При реструкт может произойти разрыв данных. продолжить?" Я ей "ОК", далее при сохранении метаданных выскакивает служебное сообщение "Частичная потеря информации при преобразов значений.НадбавкаПенсии/Стаж", потом еще через какое -то время выдает заключение"Нет возможности удалить документы по которым существую движения!ВременноеПрекращениеДействияНадбавки" и все....

Проверила и сверила все ссылки (через поиск) на ВременноеПрекращениеДействияНадбавки, все настройки документа, даже ссылки НадбавкаПенсии/Стаж. Ничего. Я уже думаю, может файл не там беру (в каталоге новой базы 1Cv7.md).
Может кто что подскажет!!!!!!
30. Nicholas Mikuslas (Nicholas) 694 29.01.12 04:43 Сейчас в теме
(29) 1996oks,
Делайте не через "Загрузить измененную конфигурацию", а через "Объединение конфигураций". В таком случае хотя бы видно будет какие данные вы накатываете.
31. vkr (vkr) 102 30.01.12 08:02 Сейчас в теме
(29) На всякий случай - сначала тренируйтесь на кошечках (т.е., на копии базы) !!!
32. elis lis (elis99) 30.01.12 08:14 Сейчас в теме
Привыкла помечать все свои изменения следующим образом. Если несколько строк вставки:
//+++++++++++++++
вставленные строки
//+++++++++++++++

если изменена одна строка, то
измененная строка //+++++++++

В результате изменения по коду находятся по раз-два глобальным поиском. И потом сверяешь количество найденных //++ в старой базе и в новой. А вот поля и диалоги - это уже приходятся документировать или помнить.
33. oks nosk (1996oks) 30.01.12 13:40 Сейчас в теме
Ох, ребята, боюсь сглазить, но вроде я ее победила. И ведь зарекалась после чужих "очень-умелых" ручек (не в обиду им будет сказано)...... Спасибо Вам всем за поддержку и советы. Опыт-он бесценен!!!!. Все //++++++ нашла вроде, сверила кол-во и т.д., ну а уж если чего не догядела в полях и диалогах, не смертельно, будем исправлять по пути....
Теперь новые высоты---перенос на любимую 8-ку....
Еще раз спасибо!
34. Андрей Бударный (WhiteShadow) 68 29.02.12 10:14 Сейчас в теме
подскажите, как скачать 483 релиз типовой бухи? на сайте 1с не нашел... ткните носом или поделитесь если есть у кого... заранее спасибо...
35. Иван Василишин (Notorius) 29.02.12 10:45 Сейчас в теме
найди обучение на этом сайте
36. Maxxi (Maxxi) 29.02.12 10:48 Сейчас в теме
Сперва нужно копию сделать, потом накатить на оригинал новый релиз, на копии нужно сравнивать с таким же релизом и разнице переносить в новый релиз