Обновление конфигурации

1. Shaka13 27.02.16 19:29 Сейчас в теме
Решил обновить нетиповую УТ, делаю впервые. будут вопросы, рассчитываю на вашу поддержку между киданиями помидорами, и чтоб не плодить тему буду писать в одной теме.
УТ 10.3.29.1, т.е. 2 года конфигурация не обновлялась, хочу прыгнуть на 10.3.35.2.
1. вопрос возможно ли пригнуть сразу через все промежуточные версии?
2. начал сравнивать изменения, в нескольких модулях есть странное на мой взгляд изменения, в процедуре есть пустая строка, причем в конфигурации поставщика это просто строка, а в основной в этой пустой строке присутствует табуляция из 4-х пробелов, что это такое, зачем это сделали и надо ли это переносить при обновлении?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
2. CaptainMorgan 27.02.16 20:13 Сейчас в теме
(1) Вознаграждение достойное.

На 1-й вопрос ответ утвердительный.
Делается это так:
Надо взять с партнёрского ИТС полную установку конфигурации 10.3.35.2 и выполнить обновление минуя все промежуточные конфигурации.

2 вопрос это уже само по себе технология обновления доработанных конфигураций.
Естественно, если часть кода имеет отличия в виде пустых строк и табуляций надо сделать типовым.

По идее процесс обновления доработанной конфигурации - творческий. И поэтому надо разбираться с каждой доработкой индивидуально.

Для начала надо составить список изменённых объектов. Такой список есть?
tar.gz; Shaka13; +2 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. CaptainMorgan 27.02.16 20:13 Сейчас в теме
(1) Вознаграждение достойное.

На 1-й вопрос ответ утвердительный.
Делается это так:
Надо взять с партнёрского ИТС полную установку конфигурации 10.3.35.2 и выполнить обновление минуя все промежуточные конфигурации.

2 вопрос это уже само по себе технология обновления доработанных конфигураций.
Естественно, если часть кода имеет отличия в виде пустых строк и табуляций надо сделать типовым.

По идее процесс обновления доработанной конфигурации - творческий. И поэтому надо разбираться с каждой доработкой индивидуально.

Для начала надо составить список изменённых объектов. Такой список есть?
tar.gz; Shaka13; +2 Ответить
4. Cooler 22 27.02.16 21:37 Сейчас в теме
(1) Shaka13,
1. вопрос возможно ли пригнуть сразу через все промежуточные версии?
Прыгнуть можно через любое число релизов. Вот только последствия такого прыжка могут быть непредсказуемыми, да еще и проявиться далеко не сразу. Тема неоднократно обсуждалась, например, тут.

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

Разумеется, такие изменения переносить совершенно необязательно.
furman2000; artfa; Shaka13; +3 Ответить
5. Shaka13 27.02.16 21:44 Сейчас в теме
(4) Cooler, так что с этим делать остальной код идентичен, различий нет в модулях
7. Cooler 22 27.02.16 21:59 Сейчас в теме
(5) Shaka13,
так что с этим делать
По-моему, это очевидно: игнорировать.
3. Shaka13 27.02.16 21:22 Сейчас в теме
Спасибо!
По первому вопросу понятно. я беру полную последнюю конфигурацию и минуя все промежуточные версии делаю обновления, с учетом доработок.
На текущей версии я взял и сравнил основную базу и базу поставщика, получился отчет, в аттаче.
По поводу второго вопроса, например
6. Xershi 1490 27.02.16 21:45 Сейчас в теме
(3) Shaka13, если были доработки, то сохраняешь конфигурацию. И делаешь бэкап базы. Потом слил новую конфу, полностью заменил ей старую. Если все пошло, то нужно только посмотреть какие были доработки в старой и добавить их!
9. CaptainMorgan 28.02.16 05:45 Сейчас в теме
(3) При обновлении доработанной конфигурации лучше всего следовать такой схеме:
-Сделать список изменённых объектов

Действия с тестовой ИБ
-Сохранить существующую конфигурацию. Конфигурация условно называется "Оригинал"
-Обновить до типовой
Внимание
При обновлении снимаем галки с изменённых объектов
По ходу дела анализируем отличия. В случае незначительных изменений - галку ставим.
-Сохранить. Конфигурация условно называется "Промежуточная"
-Первый запуск
Здесь возможны различные сообщения об ошибках. Их устраняем.
В ходе устранения возможно надо будет брать часть кода из конфигурации "Оригинал"

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


Действия с рабочей ИБ
-Обновить до типовой
-Объединить с "результирующей"
-Сохранить
-Первый запуск
8. R_G_B 27.02.16 22:07 Сейчас в теме
1.Прыгнуть можно, но прыжок через релизы не лучшее решение для первого опыта обновления доработанной конфигурации.
К необходимости восстанавливать работоспособность доработок может добавиться потеря данных (удаление метаданных до их конвертации) или некорректные данные в БД (не выполненные конвертации).
2. Само собой обращать внимание и переносить нужно только изменение несущие смысловую нагрузку.

см. например http://infostart.ru/public/18562/
furman2000; Papilion; Shaka13; +3 Ответить
10. CaptainMorgan 28.02.16 05:57 Сейчас в теме
Почему обновление надо делать на тестовой а не сразу на рабочей.

При обновлении доработанной конфигурации могут возникнуть ситуации, в которых данные информационной базы могут оказаться утерянными и для их восстановления будет требоваться значительные усилия.

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

И чтобы не начинать всё с начала, можно просто откатить ИБ к предыдущему состоянию.

Периодические выгрузки по ходу дела не замедлят, а в итоге могут ускорить весь процесс.
11. nbeliaev 830 28.02.16 10:24 Сейчас в теме
А я как-то делал так - выгрузил конфу, которую надо обновить. Загрузил конфу поставщика той же версии, добавил путем копипаста из выгруженной конфы недостающие объекты - в итоге можно обновлять и не парится, что что то потеряется при обновлении (по умолчанию флажки с добавленных объектов сняты, а остальные объекты у нас уже на замочках. это я про окно сравнения). Так получается обновил - запустил Предприятие, опять обновил и т.д. На финальном обновление копипастим код из выгруженной конфы. Единственное, что может код не работать, если в нем были вызовы из общих модулей или к примеру модальные вызовы диалоговых окон - но это уже все мелочи.
12. Shaka13 28.02.16 15:10 Сейчас в теме
Спасибо!
Я примерно так и планировал сделать обновление, бекап. сделать обновление бекап и т.д.
По ходу вопросы;
1. Есть ли способ или инструмент проверить, все ли прошло успешно и база рабочая?
2. Как обновления накатить на рабочую базу?
3. Конкретный вопрос по моей базе, там много изменение форм различных документов. В модулях различий нет. но есть в свойствах такого плана:
Колонка[2]
Изменение размера колонки
< 0
> 1
Как понять, что это за колонка в конкретной форме и и что это за размер?
13. frankeinstein 28.02.16 17:16 Сейчас в теме
(12) Shaka13, 1. После обновления сделать полный синтаксический контроль модулей. В БД проверить на заполненность новых объектов (если объекты перенесены-объединены неправильно, то они будут иметь другой идентификатор и будут восприниматься системой как новый объект, значения соответственно потеряются).
14. frankeinstein 28.02.16 17:22 Сейчас в теме
(12) Shaka13, 2.Если протестировал на копии, результат устраивает, то чтобы не повторять все шаги заново на рабочей базе, нужно:
1) сделать обновление через поддержку с типовой конфигурацией, все сделать по умолчанию; тогда ты не потеряешь обновление конфигурации поставщика, что поможет при дальнейших обновлениях;
2) загрузить предварительно выгруженную конфигурацию, приготовленную в тестовой базе
15. frankeinstein 28.02.16 17:25 Сейчас в теме
(12) Shaka13, 3. на размеры колонок можно забить, это скорее всего примерно как с пробелами, никакого смыслового значения для работы не имеет
16. Shaka13 28.02.16 17:27 Сейчас в теме
(15) frankeinstein, там в основном такие изменения процентов на 80, 20 это то, что менялось или добавлялось, и чо надо сохнарить, просто для себя хочу понять
кстати запустил обновления на этапе сравнения, все имененные объекты стоят с отжатым чекбоксом это так и должно быть или это просто настройки по умолчанию такие?
17. CaptainMorgan 28.02.16 17:36 Сейчас в теме
(12) Вы пишите "Конкретный вопрос по моей базе, там много изменение форм различных документов. В модулях различий нет. но есть в свойствах такого плана:
Колонка[2]
Изменение размера колонки
< 0
> 1
Как понять, что это за колонка в конкретной форме и и что это за размер?"

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

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

Если бухгалтера всё устроит, то сразу можно считать обновление успешно завершённым.

А если бухгалтер заметит, что пропала "очень нужная" ему функциональность, то просто переносить из "Оригинальной" конфигурации именно то, что попросят.

Такой вариант тоже можно использовать.
18. Shaka13 28.02.16 17:38 Сейчас в теме
(17) CaptainMorgan, хороший совет, тем более там изменений минимум и те, что бросаются в глаза, т.е. несут определенный смысл по пальцем одной руки пересчитать можно
ЗЫ просто страшно, никогда не делал, а есть необходимость
20. frankeinstein 28.02.16 17:59 Сейчас в теме
(18) Shaka13, есть отличная статья про обновление нетиповых конфигураций.
http://infostart.ru/public/18562/
Когда изучишь его, все будет просто.
Многие профи, которые давно занимаются 1С, делают все по старинке и тратят очень много времени. А зря. Лучще, как говорится, один раз заточить топор, чем сэкономить немного времени, но рубить тупым.
В общем, очень рекомендую ознакомиться и сразу взять на вооружение.
21. Shaka13 28.02.16 18:01 Сейчас в теме
(20) frankeinstein, читал, там немного замудренно, может не с первого раза пойму )))))))
22. Xershi 1490 28.02.16 19:03 Сейчас в теме
(20) frankeinstein, и что формы переписанные можно объединить? Когда кардинально отличаются?
23. frankeinstein 29.02.16 04:57 Сейчас в теме
(22) Xershi, когда кардинально, не пробовал ))) такие обычно создаю отдельно от типовой и устанавливаю основной
24. nbeliaev 830 29.02.16 10:24 Сейчас в теме
(23) frankeinstein, при всем уважении, но создание доп. формы и назначение ее основной - если вижу, что так сделано, то стараюсь вернуть доработанную, но типовую. Ведь при обновлении такая добавленная Вами форма никаким образом не затрагивается, а соответственно потом надо сидеть и разбираться что было переписано в типовой (в плане вызовов из общих модулей чего либо), чтобы добавленная заработала. ИМХО - никогда так не делаю ))
25. Xershi 1490 29.02.16 11:52 Сейчас в теме
(23) frankeinstein, в любом случае обновление доработанной конфы типовой это ручная работа!
26. frankeinstein 29.02.16 12:19 Сейчас в теме
(25) Xershi, Несомненно, притом творческая и дающая большой кусок хлеба программистам. Но вектор фирмы 1С однозначен: сначала обновление онлайн; теперь механизм расширений...
19. frankeinstein 28.02.16 17:45 Сейчас в теме
Про колонки забудь, объединение приведет их к состоянию как в типовой конфе. Чекбоксы снимаются у измененных объектов, чтобы случайно не затерлись - да, сделано специально.
27. ewqewqewq 01.03.16 18:08 Сейчас в теме
попробуй через обновлятор 1с
28. CaptainMorgan 01.03.16 20:14 Сейчас в теме
(27) А что такое "Обновлятор"?
Это какая-то программа?
Разве уже есть программное обеспечение, которое может сравниться с интеллектом программиста.
Мне кажется, что реализация алгоритма, который анализирует отличия конфигураций и формирует безошибочно результирующую конфигурацию - дело достаточно далёкого будущего.

Как в той притче о "ишаке и визире" - либо "обновлятор", либо сервер зависнет, прежде чем завершится процесс.
29. CaptainMorgan 01.03.16 20:25 Сейчас в теме
А вообще, конечно можно поразмышлять о возможности создания алгоритма выполняющего все действия программиста анализирующего отличия в модулях и принимающего решение какое из отличий можно считать правильным.

Так то, основываясь на актуальных возможностях платформы лучше всего все доработки выносить в подписки и расширения.
В этом случае обновление конфигурации не будет вызывать проблем, даже у начинающих программистов.
30. CaptainMorgan 01.03.16 20:26 Сейчас в теме
В этом случае обновление конфигурации не будет вызывать проблем, даже у начинающих программистов.

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

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

Джунгли - ни кто не отменял...
31. CaptainMorgan 01.03.16 20:32 Сейчас в теме
Элементарно.
Если стать на позицию программиста, у которого дома дети есть хотят.
Есть предложение взят на обслуживание конфигурации, в которую надо сделать незначительные доработки, стоимость которых исчисляется несколькими тысячами.

Но!

После внесения изменений во все документы - обновлением конфигурации могут заняться единицы.
Естественно заказчик по началу попробует обратится к "знатокам", но в итоге вернётся к "первоисточнику".

К стати это замечательный способ "привязки" клиента.
32. CaptainMorgan 01.03.16 20:41 Сейчас в теме
Что, собственно, мы тут и наблюдаем.
Похоже Shaka13 "сдулся".

Задача оказалась не "по зубам".

Как я уже сказал "Джунгли" ни кто не отменял.

Я вот тоже, подумал и из своего опыта сделал вывод, опять же, для себя.
Задания, в тех конфигурациях, в которых уже покопался "спец" стоили на порядок выше, чем в кристально чистых типовых.

Так что надо помогать друг другу, или как минимум не мешать...
33. CaptainMorgan 01.03.16 20:49 Сейчас в теме
По началу, помню было задание, достаточно дороге.
Адаптация конфигурации под требования заказчика.

Была там обычная УПП, а через год стала "золотая".
Практически, всё реализовал через подписки, задокументировал, в коде оставил все комментарии.

Фирма на работу взяла молодого мальчика. Я, с дуру, провёл совместно с ним пару обновлений. И всё...

С тех пор стараюсь в коде не делать поясняющих комментариев и не заниматься обучением молодёжи.
34. CaptainMorgan 01.03.16 20:58 Сейчас в теме
К стати, интересно было бы узнать, кто каким образом "привязывает" заказчика именно к себе.

Вообще. Какие способы существуют "заарканить" богатого клиента?

Вот один из способов уже озвучен.
-Искусственное создание сложностей для "другого" программиста.
Только разговоры про "интеллигентный" вид, обфускацию кода и установки паролей, мне кажется не стоит говорить.
35. Cooler 22 01.03.16 22:06 Сейчас в теме
Неее, это уже не "Рассказы старого моряка", это "Жалобы старого пердуна". Неинтересно.
36. CaptainMorgan 02.03.16 03:46 Сейчас в теме
(35) О! И флюгер тоже здесь.
Как же в наше время, с интересом прожить без "трольчатинки"?
Да, пожалуй никак.
На многих форумах в сети это любимое блюдо.
Только, к сожалению столь непрофессионального тролля, как этот флюгер, сложно поискать.

Флюгер, Я же тебе уже говорил, научись сначала красиво и по делу разговаривать а потом уже в тролли подавайся.
Рабоче-детски-крестьянский лепет здесь неуместен.
Здесь, к твоему сведению, поднят очень интересный вопрос, затрагивающий проблемы возникающие с обновлением.
И, собственно эти самые искусственные проблемы, как способ защиты конфигурации от посторонних специалистов, возомнивших себя "1С-программистами".
37. Shaka13 02.03.16 10:21 Сейчас в теме
я вернулся, возвращаюсь к вопросу о формах, выше я писал:
например есть в отчете сравнения:
Колонка[2]
Изменение размера колонки
< 0
> 1
как понять где эта колонка и где меняется ее размер?
решил пойти путем, оставить только те измененные формы, в которых присутствуют добавленные процедуры и кнопки
38. Xershi 1490 02.03.16 12:27 Сейчас в теме
(37) Shaka13, название прочитать, проанализировать форму. Или посмотреть список реквизитов формы.
39. Shaka13 02.03.16 13:47 Сейчас в теме
(38) Xershi, не понятно, название чего? проанализировать на предмет чего и по каким критериям? реквизиты документа, есть, а где реквизиты формы?
40. R_G_B 02.03.16 19:00 Сейчас в теме
насколько я помню в отчете о сравнении указывается элемент управления которому принадлежит колонка и на какой панели формы этот элемент расположен. Вместо имени колонки указан индекс, а искать нужный элемент обычной формы вам правильно рекомендуют в списке элементов управления.
Проанализировать предположительно предлагается указанные в отчете и предварительно найденные в списке элементы управления с их многочисленными свойствами.
Реквизиты формы расположены на одноименной закладке "Реквизиты" как в редакторе обычных форма так и редакторе форм управляемого приложения.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот