TGViewer
Записки IT специалиста Записки IT специалиста @interface31 · 9K subscribers
Post #5322 2.85K
​​Как правильно обновлять 1С

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

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

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

И тут появляется «народный умелец», который говорит, что все это фигня и он быстро и недорого обновит базу из последнего CF и будет все тоже самое, даже лучше. Он сто раз так делал.

И обновляет, и уходит в закат. А дальше события могут развиваться образом самым увлекательным и непредсказуемым.

Поэтому разберем почему так делать нельзя. Фирма 1С ведь не со зла и не от вредности ставит ограничения по релизам, с которых можно выполнить обновление.

Каждая информационная база содержит данные пользователя или просто данные и объекты конфигурации – метаданные и эти метаданные могут меняться от релиза к релизу.

Допустим в обновлении А добавлен какой-то новый реквизит и при первом запуске обработчик обновления его заполняет по какому-либо алгоритму.

В обновлении Б он начинает участвовать в каких-то механизмах. И разработчики предполагают, что он у вас есть и заполнен. Поэтому и ограничивают предыдущие версии конфигураций на те, где этот обработчик выполнялся и заполнял реквизит.

А что будет если мы сразу накатим конфигурацию Б (из CF-файла, который представляет полный файл конфигурации), без промежуточных обновлений.

Реквизит у нас в базе появится, но он будет пустой, так как обработчик обновления, его заполняющий в релизе Б отсутствует. И вот тут мы уже приехали.

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

А все почему? Да потому что ожидает увидеть где-то определенное значение, но не видит его. И хорошо, если пустое значение там допустимо. Ну просто будет не попадать куда-то то, что попадать должно.

А если нет? То у нас могут сломаться целые направления учета, когда бухгалтер будет смотреть и не понимать почему программа делает неправильные проводки, хотя все заполнено правильно.

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

Поэтому в ход идут всякие обработки, которые на скорую руку делают «как надо», т.е. лечат симптомы, не устраняя саму болезнь. А база постепенно превращается в чудовище Франкенштейна, где что-то тронуть страшно, а вдруг все «поплывет».

А кто виноват? Ну конечно же 1С, ведь это все знают, он косая, кривая и никогда нормально не работает.

В общем – не делайте так, всегда соблюдайте цепочку релизов.
  • 👍 35
  • 🤡 3
  • 🥱 3
  • 😢 1
  • 🤮 1
More from @interface31
  1. Oct 3, 2026Как узнать все смонтированные файловые системы? Раньше можно было сказать: загляните в /et…
  2. Oct 3, 2026Автоматический перезапуск Aspia в Docker Не так давно мы рассказывали, как запустить попул…
  3. Oct 3, 2026Post #6834
  4. Oct 2, 2026До первого сервис-пака не ставить На фоне некоторых коллег, которые бегут ставить свежий с…
  5. Oct 2, 2026Post #6832
  6. Oct 2, 2026Без лишнего шума и пыли вышла Aspia 3.0. Ключевые изменения в выжимке ниже: 1️⃣ Архитектур…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →