1с обновить типовую доработками
На этой странице мы собрали список статей для начинающих программистов 1С. Данная серия статей будет полезна всем начинающим специалистам по 1С. Собранные статьи рассматривают основные моменты, которые должен знать начинающий 1С-ник. Это может быть полезно и тем, кто приобрел коробку с системой «1С:Предприятие» и намерен обходиться без постороннего обслуживания – Вам несомненно понадобятся начальные знания. Именно такой сборник начальных знаний по 1С мы хотим Вам предложить.
Из данных статей Вы узнаете, как в 1С установить платформу и шаблон конфигурации, научитесь восстанавливать поврежденную информационную базу, работать с формами и списками, изучите основные приемы работы в конфигураторе, познакомитесь с такими понятиями как переменная, оператор, процедуры, функции и многое другое.
Но перед тем как начать хочу рассказать вам о Агентстве интернет
маркетинга - Agencyima .
Эти ребята занимаются тем, что делают жизнь частного специалиста 1С в разы проще. Они увеличивают продажи услуг по доработке 1С с помощью сайта и контекстной рекламы подобранной специально для вас.
В общем переходи по ССЫЛКЕ там все четко расписано!
О чем эта статья
Эта статья продолжает наш цикл «Первые шаги в 1С». В ней рассматривается частая ситуация, в которую попадают внедренцы, администраторы, а также все те специалисты, кому необходимо обновить типовую конфигурацию какой-то «старой» версии на новую или просто развернуть новую базу у клиента, не имея при этом шаблона информационной базы последней редакции.
Описанный процесс обновления детально раскроет ответы на следующие вопросы:
Откуда и какие обновления скачивать?
В какой последовательности и как устанавливать эти обновления?
Когда создавать свой файл поставки и какие при этом есть подводные камни?
Применимость
В качестве примера для разбора последовательности обновлений в статье используется конфигурация 1С:Управление торговлей 11.1, которую необходимо обновить с редации 11.1.2.22 до редакции 11.1.4.11. Но сам алгоритм обновлений, конечно же, актуален и на текущий день для любых типовых конфигураций. Поэтому в качестве практики предлагаем вам самостоятельно проделать аналогичные действия для любых актуальных релизов, чтобы закрепить полученные знания.
Как в 1С установить файлы обновления и шаблоны конфигураций
Довольно распространена ситуация, когда сотрудник приезжает в офис к клиенту устанавливать конфигурацию, открывает коробку с диском, а там записан релиз двухгодичной давности. Пока диск дождется своей продажи, как правило, будет выпущено не одно обновление.
В частности, нас будут интересовать кнопка Конфигуратор, после нажатия которой, могут производиться изменения конфигурации, в том числе обновления (хотя на данный момент это уже не единственный способ обновления конфигураций).
Кнопка 1С:Предприятие необходима для запуска информационных баз в пользовательском режиме.
В чистом виде получить шаблон последней информационной базы бывает не так просто. А количество необходимых обновлений конфигурации может оказаться немалым.
Процесс установки конфигурации – это, по сути, помещение ее шаблона в заданную директорию. Для каждой конфигурации и релиза при установке автоматически создается своя подпапка.
Изначально исходные файлы конфигурации находятся внутри папки SETUP (при поставке начального диска), а обновления – UPDSETUP. На основании шаблона, извлеченного из каталога SETUP можно создать чистую базу, готовую к работе.
Последней версии конфигурации, как правило, в наличии нет, а на сайте обновлений, выкладываются, преимущественно только обновления, которых при этом может понадобиться несколько.
Поэтому, в случае необходимости сэкономить время на переезд между клиентами, можно заблаговременно поступить следующим образом:
- скачать все необходимые обновления;
- сначала взять устаревшую конфигурацию (например, если на Вашем компьютере имеется старая база или установить с диска из коробки 1С шаблон и создать базу) и обновить конфигурацию до актуальной;
- в конфигураторе создать файл поставки;
- у клиента установить последнее обновление и в ту же директорию поместить файл поставки;
- из окна информационных баз можно будет создавать актуальные базы обновленной конфигурации;
- по умолчанию у каждого пользователя создается свой каталог шаблонов, для удобства этот каталог можно разместить и прописать в сетевой папке.
Выполняем на практике. На начальном этапе используем готовую базу, а у клиента создадим новую. С помощью кнопки Конфигуратор открываем на Вашем компьютере старую базу (например, УТ11) и проверяем номер последнего релиза.
1. Лучшая доработка, это доработка без изменения конфигурации. Если возможно, используем справочник "Внешние отчеты и обработки"
2. Если без доработок никак, стараемся создавать новые объекты, в частности:
2.1. При добавлении новых объектов, реквизитов обязательно добавляем префикс
2.2. Создаем общие модуля (для сервера, клиента и пр.), куда стараемся переносить все изменения. Остальные модули вызывают данный код.
2.3. Используем подписки на события для проверки значений, корректировки проведения документов.
2.3. Для новых объектов лучше создать новую роль, а не редактировать старую
2.4. Все новые и измененные объекты включаем в специально созданную для этого подсистему
3. Если необходимо изменить код модуля:
3.1. Выделяем комментарием все сделанные изменения, причем комментарий должен позволять однозначно найти все изменения конфигурации (используя глобальный поиск) и при этом не дать лишних строк. Желательно добавлять метку задачи (код), в рамках которой были изменения, дату и автора решения.
3.2. Старый код не удаляем, а оставляем закомментированным
3.3. Комментарий добавляем перед и после изменений, с открывающим и закрывающим символом соответственно (например: + и -)
3.4. Самое главное, чего, собственно, нигде не встречал и что сильно упрощает жизнь, создаем процедуру "НеТиповыеИзменения". Данная процедура должна содержать в себе копию всех комментариев по сделанным изменениям с указанием процедур в которых были внесены данные изменения . Т.е. при сравнении/объединении модуля мы вначале определяем процедуры, содержащие изменения, и не проходим по всем процедурам модуля.
Как пример на примере пункта 3.5 в конце модуля добавляется процедура:
3.5. С пасибо unichkin. Все изменения по возможности выносить в отдельные процедуры, как один из минусов сложность в анализе изменений в одном месте, отлично подходит при отсутствии пункта 3.4, пример:
3.6 Спасибо Armando . В форме можно переопределять обработчики на свои, а из своих в нужный момент вызывать типовые. Тогда в большинстве случаев процедуры-обработчики событий можно смело заменять и даже дописывать в них ничего не придется:
4. Если необходимо изменить форму:
4.1. Описываем все изменения в процедуре " НеТиповыеИзменения " см. 3.4.
4.2. Кнопки и поля формы возможно добавлять программно, как и настраивать их первоначальную видимость/доступность.
5. Спасибо unichkin. Внедрения стандартов разработки (например: Система стандартов и методик разработки конфигураций для платформы 1С:Предприятие 8 . ), позволит быстрее воспринимать код другого программиста.
Ссылки по теме (для меня это lvl-up, можно рассматривать как продолжение статьи):
Готов выслушать критику, советы по улучшению статьи как с точки зрения содержания, так и с точки зрения оформления.
Рассмотрим задачу, когда нужно обновить типовую конфигурацию, в которую внесены изменения. Рассмотрим на примере конфигурации ЗУП, в которой в документ НачислениеЗарплаты был добавлен новый реквизит пр_ВнутреннийНомер. Предварительно необходимо установить файл нужного обновления.
Открываем конфигурацию в режиме Конфигуратор. Переходим в меню Конфигурация – Поддержка – Обновить конфигурацию (рис. 1):
Рис. 1. Обновление конфигурации
В открывшемся окне Обновление конфигурации выбираем Поиск доступных обновлений (рис. 2)
Рис. 2. Выбор источника обновления
Нажимаем Далее (рис. 3):
Рис. 3. Выбор области поиска файлов обновлений
Далее выбираем обновление и нажимаем Готово (рис. 4):
Рис. 4. Выбор обновления
Т.к. была отмечена галочка Показывать конфигурации (рис. 4), открывается окно с информацией про обновление, нажимаем Продолжить обновление. В следующем окне нажимаем ОК (рис. 5):
Рис. 5. Обновление
Далее открывается окно Обновление Основная конфигурация – Новая конфигурация поставщика, оставляем отмеченными все галочки (это значит, что обновляем все возможные объекты). Находим наш измененный документ НачислениеЗарплаты (рис. 6):
Рис. 6. Документ НачислениеЗарплаты
В документ НачислениеЗарплаты ранее нами был добавлен реквизит пр_ВнутреннийНомер и этот новый реквизит был выведен на форму документа. Снимаем галочку у реквизита пр_ВнутреннийНомер (рис. 6), это значит, что мы собираемся оставить этот новый реквизит в конфигурации. Далее посмотрим изменения в форме документа (ранее мы только добавили новый реквизит на форму, но в обновлении могут быть и другие изменения формы): правой кнопкой мыши по Форма – Показать различия в модулях… (рис. 7):
Рис. 7. Различия в модулях
Открывается окно Сравнение модулей, в котором в обновлении видны изменения в нескольких процедурах формы документа (рис. 8):
Рис. 8. Изменения в обновлении модуля формы документа
Т.к. ранее мы только добавили вывод нового реквизита на форму, то проще обновить форму, а затем заново вывести новый реквизит на форму. Для этого закрываем окно Сравнение модулей, оставляем галочку у Формы в окне Обновление Основная конфигурация – Новая конфигурация поставщика и нажимаем Выполнить (рис. 9):
Рис. 9. Выполнить обновление
На вопрос отвечаем Да (рис. 10):
Рис. 10. Вопрос при обновлении
В следующем окне нажимаем ОК (рис. 11):
Рис. 11. Окно при обновлении
Запускается процесс обновления объектов конфигурации. После выполнения объединения появляется окно, нажимаем ОК (рис. 12):
Рис. 12. Объединение завершено
Теперь нужно вернуть новый реквизит на форму документа, т.к. мы обновили форму из новой конфигурации поставщика, в которой нашего реквизита нет. Для этого открываем форму документа НачислениеЗарплаты, находим наш реквизит пр_ВнутреннийНомер и перетаскиваем его мышкой в группу ГруппаКомментарийОтветственный (рис. 13):
Рис. 13. Добавление реквизита на форму документа
Теперь форма документа обновлена правильно: мы внесли новые изменения поставщика, установив галочку в окне Обновление Основная конфигурация – Новая конфигурация поставщика (рис. 9), и вернули наше изменение формы – добавили наш реквизит пр_ВнутреннийНомер на форму документа (рис. 13).
Далее сохраняем конфигурацию: Конфигурация – Сохранить конфигурацию и обновляем конфигурацию базы данных: Конфигурация – Обновить конфигурацию базы данных (рис. 14):
Рис. 14. Сохранение конфигурации
При обновлении конфигурации базы данных появляется окно Реорганизация информации, нажимаем Принять (рис. 15):
Рис. 15. Принятие изменений при обновлении конфигурации базы данных
После завершения процесса обновления в Конфигураторе запускаем конфигурацию в режиме Предприятие и завершаем процесс обновления.
Компания 1С является лидером на рынке программ для автоматизации деятельности предприятий.
1С:Бухгалтерия, 1С:Управление торговлей, 1С:Зарплата и управление персоналом, 1С:Управление производственным предприятием — стали визитными карточками компании 1С и активно используются не только на маленьких и средних, но и на крупных предприятиях.
Компания 1С обладает огромным штатом высококвалифицированных специалистов, которые регулярно совершенствуют имеющиеся разработки, но идентичного бизнеса не бывает, поэтому всегда найдется клиент задачи которого не покрываются типовым функционалом.
Вот тут в игру вступают сторонние разработчики, фриланс программисты 1С, профильные компании, франчайзи 1С с благими намерениями доработать типовое решение в соответствии с пожеланиями клиента.
Как показывает практика не все доработки дают положительный эффект. Перекроенные до неузнаваемости конфигурации – верный путь остаться без обновлений от поставщика, тобишь компании 1С.
В чем причина? Некоторые считают, что причина такой ситуации связана с уровнем профессионализма сторонних разработчиков. Существует мнение, что виновато несовершенство архитектуры решений типовых решений. Какое же предположение верное? На самом деле проблемы с обеих сторон: 1С игнорирует правильные подходы к доработке типовых решений, а многочисленные сторонние разработчики предпочитают работать по старинке, не затрачивая времени на изучение новых возможностей и не изучают порой очень важную и нужную документацию.
Проблема
Повторимся, что типовые решения от 1С не могут выполнить все «пожелания» компаний на 100% и единственный способ их реализовать – обратиться к сторонним разработчикам или взять разработчика в штат. В случае, когда «пожелания» затрагивает типовые механизмы (объекты, формы, алгоритмы), то конфигурация становится непригодной для автоматического обновления.
Обновить ее можно, но делать это придется в ручном режиме. А если делать это будет не совсем компетентный программист 1С, вчерашний студент, который привлек низкой стоимостью на свои услуги, то высока вероятность что-нибудь поломать.
В итоге клиент получает: желаемый функционал, проблемы с обновлением и зависимость от сторонних разработчиков (при отсутствии штатного программиста 1С).
Документирование
Перед те как Вы решите дорабатывать конфигурацию, первое, что необходимо освоить – процесс документирования. Без этого все последующие советы можно выкинуть в утиль.
Все вносимые изменения без исключения должны фиксироваться. Документация по внесенным изменениям должна дополнять информацию, из хранилища конфигурации или другой системы контроля версии. Документация не должна писаться ради документации, документы должны своевременно обновляться.
Если эта задача выполняется, и разработчики имеют дело с такими документами, то количество ошибок, возникающих в процессе актуализации версий конфигураций с поставщиком, будут стремиться к нулю.
Конфигурирование
Осознавая тот факт, что создать универсальное коробочное решение, готовое к работе практически невозможно, привести бизнес-процессы компаний к какому-то общему знаменателю – непосильная задача, компания 1С пришла к мысли что решением может стать предоставление возможности самостоятельного конфигурирования.
Не всегда документация по возможным настройкам успевает дозреть вместе с программным решением. В итоге начинается изобретение велосипедов: задачи в несколько кликов, как показывает практика, реализовывается в виде квадратных колес, накачанных не самым качественным кодом.
Нужны примеры квадратных колес?
Заказчику всегда не хватает полей в стандартных документах/справочниках и он желает добавить свои. Исполнить это желание проще без открытия конфигуратора. Активировать использование дополнительных реквизитов в настройках и потом быстренько создать все необходимые поля. Созданные таким образом реквизиты не затрагивают конфигурации, и они пригодны для использования в отчетах.
Другой распространённый пример – создание дополнительных печатных форм. Ни одна типовая конфигурация не способна обеспечить клиента всеми необходимыми печатными формами, поэтому разработку недостающих, отдают на аутсорсинг.
Одну и ту же печатную форму можно сделать разными способами: воспользоваться механизмом, предоставляемым БСП (библиотека стандартных подсистем) или написать код напрямую в модуль формы/менеджера определенного объекта. Результат будет один и тот же – клиент получит желаемое, а вот поддержка решения усложнится.
Примеры велосипедов с квадратными колесами масса, а вывод один – изучайте рабочий инструмент максимально детально и внимательно. Ищите как проблему обойти, найти альтернативное решение, и влезайте в типовые механизмы в случаях, когда без этого действительно не обойтись.
Многие задачи эффективно решаются без открытия конфигуратора. Не ленитесь следить за технологическими новинками, участвуйте в форумах, где делятся люди своим опытом.
Хотелось бы резюмировать все вышесказанное и добавить пару мыслей, которые нет желания расписывать на несколько томов, а выразить их тезисно:
1. Типовая 1С:Бухгалтерия и 1С:Зарплата и управление персоналом в 99,999% случаев покрывают потребности бизнеса в регламентированном учете, поэтому внимательно то, что Вам предлагает компания 1С. Доработки Бухгалтерии и ЗУП – последнее дело. Не допускайте доработок без крайней необходимости.
2. Если что-то не получается – виновато не программное обеспечение! Как показывает наш опыт работы с различными компаниями — дело или в некорректных настройках, или в ошибках в данных. Ошибки, если над ними не работать накапливаются и превращаются в огромную гору проблем, чем дольше проблемные ситуации остаются нерешенными, тем глубже потом придется копать.
3. Представим часто встречающуюся ситуацию, когда в компании появилась новая операция (комиссия, лизинг и т.д.). Для того чтобы новинка не вышла боком, мы рекомендуем выделить время и деньги один раз, чтобы разобраться, как корректно с точки зрения рекомендаций и методологии 1С ее отражать и обучить этому персонал, который будет в дальнейшем с этим работать. Это намного эффективнее, чем потратить время и деньги потом, чтобы исправлять ошибки, перепроводить документы и заново закрывать периоды.
4. Релизы всегда должны быть последними. Свежие релизы решают много проблем.
5. Обновлять необходимо весь комплекс продуктов: свежая бухгалтерия и старый ЗУП – это потенциальная проблема в обменах.
И напоследок о наболевшем
Запомните: учет будет в порядке при правильных настройках и правильном отражении хозяйственных операций.
Если не изучать возможности того функционала, который предлагается в типовых конфигурациях, то придется раз за разом привлекать программиста 1Сника и прибегать к ручному управлению. Ручной труд будет множиться в геометрической прогрессии. Сломанный автоматический учет сделает невыносимой работу бухгалтера и зависимой от программиста 1С.
Каждый раз, когда на глаза попадается база, в которой: львиная доля учёта осуществляется ручными операциями; автоматически не закрывается месяц (вот уже сто лет как не закрывается); корректировкой поправили проводки, но не поправили регистровые записи, по лицу начинают играть желваки и проскакивает нервный тик.
Бейте по рукам 1Сника, который открыл конфигуратор и полез в нем что-то программировать. Бейте больно. Мы испытываем чувство величайшего гнева, когда видим перед собой изуродованную непрофессиональным фрилансером типовую 1С:Бухгалтерию – в которой механизмы, заложенные авторами, работают через раз или вообще не работают.
Есть крайне редкие случаи, когда доработки Бухгалтерии и ЗУП действительно необходимы. Но в этих случаях осуществлять их должны профессионалы высочайшего уровня, и главный вопрос, который Вам стоит задать им: «Я хочу обновлять свою базу с каждым релизом, выпускаемым «1С»?
Развивайтесь. Учитесь. Растите профессионально. Добивайтесь совершенного владения инструментом 1С. Повышайте свой профессиональный уровень, обращайтесь с вопросами к профессионалам, разбирайте проблемы по мере возникновения.
Читайте также: