Обновление релиза измененной типовой конфигурации
Разработка - Конфигурирование 1С
Скачиваем (https://users.v8.1c.ru) и устанавливаем нужные релизы конфигурации на компьютер в папку по умолчанию.
Не забываем делать бекап рабочей базы.
Все сравнение и объединение я делаю в копи рабочей базы.
Открываем "поддержка" выбираем пункт "обновление конфигурации"
Выбираю пункт искать в tmpits
Выбираю версию релиза на которую буду обновлять. Начинается процесс сравнения...
В результате получаем кучу изменений.
Меняю фильтр на "Показывать только дважды измененные свойства". Объектов становиться в разы меньше. Как правило в эти объекты были внесены "наши изменения"
Начинаем сравнивать изменения. Открываем первый объект и нажимаем"шестеренку"
Сверху выводятся процедуры и функции. Начинаем по одной просматривать их.
1. Если в процедуре только "наши изменения", то снимаем флажок. Эту процедуру не будем обновлять.
2. Если в процедуре только типовые изменения, то такую процедуру оставляем без изменений. С флажком и режим объединения "Взять из новой конфигурации поставщика"
3. Если в процедуре есть "наши изменения" и типовые, то нужно менять режим объединения на:
-Объединять с приоритетом новой конфигурации поставщика
-Объединять с приоритетом основной конфигурации
Выбор зависит каких изменений больше типовых или "наших".
Ниже я выбираю первый режим(На практике я чаще всего выбираю режим "Объединять с приоритетом новой конфигурации поставщика"). Теперь в нижнем экране нужно убрать все закомментированные строчки //MRG (анг. merger - слияние)
Убрать нужно только закоментированный(//MRG) "старый типовой код". Красным отметил те строчки, которые буду удалять.
"Наши изменения" тоже комментируются (//MRG). У этих строчек убираю комментарий (//)
Если бы я выбрал второй способ (Объединять с приоритетом основной конфигурации), то "наши изменения" не были бы закомментированы, но был бы закомментирован новый типовой код.
После того, как все процедуры отредактированы жмем "ок". Теперь "шестеренка" с зеленой галкой.
Типовые "Роли" и "Определяемые типы" Объединить с приоритетом основной конфигурации. Для того чтобы "Наши изменения" не удалились, а добавились новые типовые.
Объединение форм документов и справочников, в которых есть "Наши изменения" приходится делать отдельно (вручную) с таких форм я снимаю галочку объединения.
По этой причине желательно меньше вносить изменения в типовые формы. ( Управляемые формы. Изменение формы списка или формы объекта без внесения изменений в типовые формы )
После того как все объекты проверенны и объединены. Нажимаем кнопку "выполнить".
Конфигурация объединяется и сохраняется. Запуска в предприятии. Проходят процессы обновления.
После этого я сохраняю cf с новым релизом. Таких cf будет несколько, как правило конфигурацию обновляем не так часто и релизы накапливаются. В дальнейшем эти cf буду по очереди загружать в рабочую базу.
После того как cf загружен и база обновлена нужно ее запустить и выполнить в ней обязательные "процедуры обновления". Ход выполнения можно отслеживать встроенной в БСП обработкой "Результаты обновления программы"
Если обработка показывает, что процедуры обновления вообще не запускались, то фоновое задание нужно запустить вручную.
P.S. Чтобы "Наши изменения" не пропали с обновлением их нужно обязательно комментировать.
Чтобы облегчить этот процесс создадим шаблон
выберем новый шаблон
заполним название. Поставим галочку включать в контекстное меню.
Текст шаблона(Автоматически подставит текущее время):
// begin <?»", ДатаВремя, «»> ФИО №
// end <?»", ДатаВремя, «»> ФИО №
При написании кода из контекстного меню выбираем "наш шаблон"
Специальные предложения
Кратко просмотрел, на мой взгляд у вас подробно и грамотно расписано.
Что скажете насчет этих статей:
А в общем всё подробно описано. Обязательно буду использовать в качестве руководства для начинающих.
(15)
Выдержка из документации на платформу.
Текущую информационную базу данных можно сохранить в файл на диске. Для сохранения данных в файл нужно выбрать пункт Администрирование ‑ Выгрузить информационную базу данных в файл. На экран выводится стандартный диалог выбора файла. Следует выбрать каталог и указать имя файла, в который будут записаны данные.
Механизм выгрузки предназначен:
● для получения образа информационной базы независимо от способа хранения данных;
● для переноса информационной базы из одной СУБД (или файлового варианта) в другую СУБД (или в файловый вариант).
Перед выполнением выгрузки информационной базы рекомендуется выполнить процедуру тестирования (средствами конфигуратора или отдельной утилиты) и исправить все обнаруженные проблемы.
Не рекомендуется использовать данный способ для создания резервной копии информационной базы по следующим причинам:
● может возникнуть ситуация, при которой файл выгрузки будет невозможно загрузить, если в информационной базе, из которой производилась выгрузка, существовали ошибки;
● длительное время создания;
● необходимость монопольного доступа к базе данных;
● высокие требования к оперативной памяти.
ПРИМЕЧАНИЕ. Работа информационной базы в монопольном режиме не переводит базу данных MS SQL в однопользовательский режим (single user).
Там же, на ИТС, в разделе БП.
Средства СУБД как правило у админа, это надо согласовывать, а ДТ-ку выгрузить без проблем, выкинуть пользователей ночью можно.
Перед выполнением выгрузки информационной базы рекомендуется выполнить процедуру тестирования
хм. а я обратное читал, что надо перед тестированием выгрузку сделать ))
Хотя логика понятна.
Документация написана для юристов. Чтобы потом не попасть на иски. На самом деле (сугубо ИМХО) выгрузка в dt (ОБЯЗАТЕЛЬНО с последующей загрузкой из dt в копию) - это и есть единственный гарантированный бекап. Если делать копию средствами SQL, то все ошибки в базе просто скопируются, и копии будут сбойные. А потом база окончательно гавкнется, вот тут то и обнаружится, что копии не годятся :(. А уж если база из dt загрузилась, то критичных ошибок там нет, только битые ссылки максимум.
База может запускаться, но при попытке открыть список документов или какой нить документ, может вылететь с ошибкой.
Но такие ошибки как правило отлавливаются уже на рабочей базе.
Вряд ли же есть привычка загружать выгруженный dt, чтобы проверить, ч
Ну у нас например можно потом если полный ахтунг у админа поднять SQL на любой момент времени, но самому там ковыряться что-то не айс.
Подробнее:
К сожалению, поймал баг:
1) какой нибудь модуль объединить с помощью внешней программы (kdiff3), появится зеленая галка.
2) затем через правую кнопку мыши выбрать на этом же модуле "Показать различия в модуля..." и выйти из kdiff3, не сохраняя изменения
3) снова зайти в шестеренку с зеленой галкой, чтобы посмотреть результаты объединения
итог: 1с валится с критической ошибкой без возможности сохранить результаты объединения. Для больших конфигураций это может вылиться в большую потерю времени.
я ставлю фильтр показывать отличия основной от старой -тогда показывает объекты, которые меняли только мы
можно Объединять и с приоритетом основной. НО -обычная форма скопирует все элементы форм (такую лучше ручками) , а управляемая добавит только новые элементы форм после этого просто проверить
так что использование расширений не всегда оптимально с точки зрения производительности.
(19) Для начала объяснить, что доработанную конфигурацию будет проблематично обновлять и с каждой новой доработкой все проблематичнее. Если руководство и глав бух разумные, то откажутся сразу, так как об оперативном обновление можно забыть.
Также можно обсудить и прийти к решению, когда можно обойтись без доработок. Вариант, что там проводки не так формируются не обсуждаются. Надо показать что не так делают.
У нас пытались предложить подправить, после нескольких бесед с руководством, отказались от этой идеи, как не разумной.
Прослушайте курс Богачева по Эксперту, он там это разбирает.
Да и если вы сами немного понимаете в принципах работы 1С то должны понимать что расширение это не скомпилированный код, который компилируется когда он нужен, отсюда и падение производительности.
Почему:
1. Если режим вызова "после" или "перед" - то и в коде их переносить никакой проблемы не вызывает
2. Если режим "Вместо" - то в коде ты увидишь, что логику исправляемой функции поменяли, а расширение будет работать как ни в чем не бывало, и если особенно не повезет, то не будет, например заполнять новый реквизит, что приведет к левым движениям.
3. Изменения в формах единственное слегка оправданное место, но и с этим как повезет - форму перекосило, а ты даже сравнить не можешь, чисто веселая игра "найди 2 отличия"
ИМХО рсширения оправданы для:
1. Конфа все еще на замке - расширение дает до 2 часов экономии на принятии изменений. Загрузка конфы поставщика по сравнению со сравнением/объединением.
2. Командный интерфейс
3. "динамическое обновление" - потом все убрать в конфу
4. иногда формы, но проще в поддержке - мелочи делать кодом, а крупные переделки - рисовать свою форму
Как обновлять расширениями? Мне такой способ не известен.
Расширениями, кстати, сами 1с теперь патчат типовые конфы, устраняя свои же косяки. Вполне рабочий вариант.
Вообще расширения оправданы везде, где они помогают. Где мешают, там не оправданы. Всё просто.
1) Если планируется переписать конфигурацию, то значит обновления не нужны. Все что надо, надо дорабатывать, а не пытаться обновлять.
2) Если же нужны обновления и доработки конфигурации, то делать это внешними обработками и отчетами и независимые подсистемы. Что бы на обновления это не влияло.
3) Избегать конторы которые просят доработать ЗУП и БУХ, потому что им там что то не нравится, за исключением крупных контор, где целый отдел.
А если работаешь в конторе, где и ЗУП и БП и всё просят доработать? Вопрос риторический, расширения в помощь пришли.
просто добавь в свой чек-лист кроме тестирования правок конфигурации тестирование своих расширений.
в любом случае ты ДОЛЖЕН документировать свои доработки , в том числе свое представление о функциональной структуре изменяемого чужого приложения.
Вы я так понимаю не особо сталкивались с очень сильно дописанным конфигурациям, а это значит что не все ваши утверждения верны.
При обновление таких конфигураций есть особенности.
1. Фильтр при обновление ERP не всегда удобен, в этом случае мы не видим какие объекты помечены на удаление и какие удалены (а это частая проблема в ERP). Плюс к этому если вы не пользуетесь системами юнит тестирования то вас ожидает сюрприз в конце вашей работы, например не отработка фоновых обработчиков.
2. Очень часто производится переименование процедур и функций, да что уж там модулей тоже, что при вашем подходе приводит конфигурацию либо к бардоку в модулях со старыми процедурами и функции либо вообще к неработоспособности.
эти ключевые причины мешают использовать описанный вами выше мехнаизм.
Я делаю проще, в процессе обновления я затираю весь код которые был доработан, а потом добиваю его через сравнение объединение, что позволяет как минимум вычистить мусор в модулях, при этом я сразу могу удивить какие модули были помечены, переименованы или удалены. Что оптимизирует процесс обновления и чистоту конфигурации.
А вообще лучше всего побывать автоматизировать данные моменты, т.к. на обновление не типовых конфигураций может уходить до 24 часов просто переноса кода.
Отсюда резюме: ваш описанный метод можно применять, на обычных формах, которые по сути сейчас статичны и максимум на БП и РТ остальные же конфигурации к сожалению подвержены достаточно большим изменениям и ваш описанный метод может подходить не всегда.
интересный опыт.
1. кто вам допилил зуп, не ваши сотрудники? зуп 3.хх?
2. в каком объеме? кол-во новых объектов, кол-во новых реквизитов типовых объектов, кол-во измененных процедур,
кол-во измененных форм,кол-во измененных макетов(скд в т.ч.) и т.п., просто порядок величин 1,10,100...
3. как происходит передача изменений? ведь не зная что для чего делалось можно вместо рукавов ширинку пришить :)
4. стоимость обслуживания меньше ставки 1с-ника средней квалификации?
1. ЗУП 3.1.10, пилил франч и потом я, когда сюда устроился (в этом году). Франч изосрал всю конфигурацию, внеся изменения куда можно и куда нельзя.
2. Порядка 100 изменений плюс-минус. Есть изменения в т.ч. в расчетной части - свой алгоритм доплаты до оклада по больничному листу. Есть доработки в части НДФЛ. Но основное - это измененные формы. У меня были мысли, как изменения в формах минимизировать, вынеся с модули и генерируя элементы кодом, но на это просто нет времени.
3. а вот это мне самому интересно. Из-за того что у нас очень долгое подписание договоров в компании - на практике не проверял. Типа, мы даем cf, а они возвращают cf актуального релиза с перенесенными изменениями.
4.
Нам оценили год обслуживания в 45 т.р. Т.к. у них это на 80% автоматизировано, я надеюсь, что качество будет выше, чем ручное обновление. Критичный функционал они допроверяют руками.
Я программист в одном лице, мне заниматься обновлениями уже в лом, честно говоря. Могу, но если это можно не делать - пусть делают они. Компания мое мнение поддерживает - что рутину надо скидывать на сторону.
тоже не слышал, но общался с франчами, которые писали подобное, может и они, не знаю, они полностью процесс не автоматизировали все равно. Частично и потом программист проверяет. Вообще не представляю, как можно автоматизировать обновление сильно доработанной конфы. У меня вот этой осенью такая БИТовская "поехала", БИТ начал удалять реквизиты, которые критично участвуют во всех доработанных (им же) отчетах, формах. Боюсь как бы не пришлось заново писать вообще. На третьем релизе только в одной форме до 40 новых функций появилось, первые два уже осилил. Сижу вот кумекаю ))
Всегда необходимо - тщательно обновлять.
Это включает:
1. Бекапы - сделать.
2. Анализ изменений.
(которые были + которые в типовой прошли)
3. Накат обновы.
(написано кратко - в реальности, это ХХХХХХХХХХХХХХХХХХХ времени может занять. Зависит от объёма работ и мощности ПК и сервера 1с)
4. Тестирование.
(в идеале - все участки/пользователи - сами проверят.
В реальности - это далеко не всегда так)
Далее - возврат к п. 3 (или даже 2) или Завершение (бекап - хранить долго!).
А ещё вы не учли тот нюанс удаляемых процедур и функций поставщиком. Их нужно удалять только в том случае, что на них сторонний разработчик не делал ссылок в модулях (например на общие модули). А если их не удалять - то они будут хламиться.
Отдельная песня про измененные обычные формы - насколько помню, автоматически никогда корректно не менялось, приходилось все ручками.
Плюс при сравнении/объединении конфигураций не всегда корректно отображается цветовая палитра объектов (смотреть
Поэтому в сильно измененной конфигурации лично я обновлялся за два-три прохода. Сначала не измененные и немного измененные объекты, потом - сложнота.
Похоже у вас скриншот неправильный к этому примеру. В тексте идет речь про объединение с приоритетом основной конфигурации, а на скрине стоит режим "Объединение с приоритетом новой конфигурации поставщика" и в окне объединения видно, что комментируется наш код из основной конфигурации.
См. также
Управляемые формы. Изменение формы списка или формы объекта без внесения изменений в типовые формы (без использования расширений) 88
Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Работа с интерфейсом
Вносим изменения в типовые формы объектов (документы, справочники, журналы, обработки, общие формы). Не снимая с поддержки эти формы. Создаем программно элементы из общего модуля. Для примера рассмотрю добавление колонки "Скрепка" в форму списка документа. Если к документу привязан файл, то в списке в новой колонке должна отображаться "скрепка".
12.11.2019 4951 John_d 22
1C:Предприятие для программистов: Запросы и отчеты. Второй поток. Онлайн-интенсив с 17 марта по 16 апреля 2020 г. Промо
Данный онлайн-курс предусматривает углубленное изучение языка запросов и возможностей системы компоновки данных, которые понадобятся при разработке отчетов, работающих на платформе “1С:Предприятие” в рамках различных прикладных решений. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей различных прикладных решений, которые используют в своей работе отчеты разного назначения.
6500 рублей
Обработка расширением на клиенте 25
Статья Программист Нет файла v8::УФ 1cv8.cf Бесплатно (free) Расширения Универсальные функции
Описываю нетривиальный прием работы с расширением, который позволит относительно быстро реализовывать некоторые обработки данных. Суть: обработка данных на клиенте с использованием методов, которые реализованы разработчиком конфигурации на форме объекта. Если эти методы есть вне модуля формы объекта (общий модуль, модуль менеджера, модуль объекта)- лучше сделать обработку более простым способом.
31.10.2019 3142 EvgenURNN 9
Об общих реквизитах 73
Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования Структура метаданных
Общие реквизиты. Что за ними скрывается?
28.10.2019 5665 YPermitin 28
Перенос данных УТ 10.3 => УТ 11 / КА 2 / ERP 2 (ЕРП 2) (документы, остатки и справочная информация из "1С:Управление торговлей, ред. 10.3" в УТ 11 / КА 2 / ERP 2). Обновлен до УТ 10.3.56.х, УТ 11.4.10.х, КА 2.4.10.х и ERP 2.4.10.х! Промо
Уже более 100 компаний приобрели перенос и выполнили переход на УТ 11 / КА 2 / ERP 2 с помощью нашей разработки! Обработка перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2 позволяет перенести не только остатки на указанную дату (как типовой перенос), но и все возможные документы за выбранный период. При выходе новых релизов этих программ оперативно выпускаем обновление обработки. Предоставляем техническую поддержку. Можем сделать бесплатный тестовый перенос!
29700 руб.
Реализация продвинутой обработки запросов HTTP сервиса 16
Статья Программист Нет файла v8 1cv8.cf Россия Windows Бесплатно (free) Обмен данными 1С Конфигурирование 1С
Стандартный функционал маршрутизации не позволяет использовать regexp при обработке адреса, организация модуля приводит к дублированию кода. Так же при ошибке исполнения нет фиксации в журнале регистрации. В статье опишу свой взгляд на решение обозначенных проблем.
05.10.2019 1757 malikov_pro 0
От чего можно отказаться при разработке расширений 1С 80
Статья Программист Нет файла v8 Бесплатно (free) Практика программирования БСП (Библиотека стандартных подсистем) Расширения
Разработка расширений 1С и оптимизация через механизм БСП: Дополнительные отчеты и обработки.
23.09.2019 6360 independ 23

Просмотры 5268
Загрузки 0
Комментарии 72
Создание 29.11.19 14:14
Обновление 29.11.19 14:14
№ Публикации 1158512
Рубрики Конфигурирование 1С
Кому Программист
Тип файла Нет файла
Платформа Платформа 1С v8.x (все механизмы)
Конфигурация Конфигурации 1cv8
Операционная система Не имеет значения
Страна Не имеет значения
Отрасль Не имеет значения
Налоги Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Бесплатно (free)
Код открыт Да
Перенос данных КА 1.1 / УПП 1.3 => БП 3.0 (перенос остатков, документов и справочников из "1С:Комплексная автоматизация 1.1" / УПП 1.3 в "1С:Бухгалтерия 3.0")
|
