Меню

Сабсистемс Сабсистемс Мегапрайс Мегапрайс Разработки Разработки Отзывы Отзывы Информация Информация Новости Новости Помощь по 1С! Помощь по 1С!
Регистрация Войти
Страницы: 1
Ответить
RSS
Методика изменения типовых конфигураций с максимальным сохранением поддержки и обновления.
 
Не буду делать много вступлений. Сразу перейду к технической части.

1) Добавление новых объектов и реквизитов. Добавляйте смело все что захотите - справочники, документы, регистры, интерфейсы, роли.

Добавление реквизитов существующих метаданных не влечет за собой проблем с обновлением. Т.к. любые добавленные вами метаданные - справочники, документы, а самое главное новые реквизиты в объектах типовых справочников (например в УТ10 добавленный справочник Производители и реквизит справочника Номенклатура Производитель) не учавствуют в типовых обновлениях. А обновление не производит полную замену реквизитов объекта.

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

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

При установке обновлений, даже если 1С поменяла эти объекты,  с вашими добавленными реквизитами и главное данными этих реквизитов ничего не случится! Обновление не производит ни их удаление из конфигурации, ни удаление данных этих реквизитов.

В случае если необходимо добавить очень большое количество реквизитов. Лучше не трогать типовой справочник вообще (они итак бывают перегружены реквизитами). Наилучшее решение создать дополнительный справочник подчиненный этому. И внести в него все реквизиты. Вы очень лкго сможете обращаться к этому справочнику или из него к владельцу для получения информации.

Пример такого справочника: ПартнерыСведенья с реквизитами для служебного использования - ID клиента на сайте, наименование на сайте, адрес почты (для быстрой работы без регистра контактной информации), множество реквизитов например с указанием отправки письма клиенту, каких либо опций извещения, дополнительные какие либо учетные функции для своих документов и модулей. У нас такой справочник насчитывает больше 25 реквизитов.

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

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

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

3) Изменение форм. Мы хотим вывести наши реквизиты в типовую форму, или вообще переписать форму тк она нам неудобна - пользователи часто просят максимально упрощенный интерфейс. Что делать если надо переписать формы заказа клиента. И что делать если потом выйдет обновление.

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

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

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

Доступим стоит наиболее сложная задача - изменение формы документа. Ответ на самом деле очень простой. ЧТобы не изменять типовую форму и не боятся за то что все накроется медным тазом - для создания своей формы лучше всего скопировать типовую форму (добавив свой префикс) - вносить в нее что душе угодно и назначить ее основной для этого объекта.

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

Наименее всего в обновлениях 1С меняет формы справочников, в которых практически отсутствуют какие либо серъезные изменения влияющие на весь учет.

Пытайтесь создавать собственные рабочие места (менеджеров, склада, сервиса и т.д.). В них можно размещать свои списки журналов документов, справочников, создавать подборы.

Рабочие места очень легко размещать в интерфейсах, пользователи забудут как вообще лезть в типовое меню.

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

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

Для всех добавленных регистров можно совершать их движения через подписки на события. И прописывания движений в своих глобальных модулях.
 
5) Изменение типовых глобальных модулей. Редкостная ситуация но имеет место быть. Вообще все изменения типовых модулей, либо использование своих глобальных процедур - лучше ничего не придумаешь, как создать свои глобальные модули (хватает и одного, двух) в которые выносить все что душе угодно. Никакого влияния на обновления не будет. Теже самые подписки и прочее - все пишем в своих модулях.

6) Интерфейсы - самое вкусное. Ха надо изменить полный интерфейс? Интерфейс манагера или закупщика ? Ничего проще нет.

Я б назвал это самое простое что можно только сделать чтобы не влияло на обновления. Это даже самое популярное что просят пользователи УТ10. Убрать нафиг у манагера все лишнее - оставить только что надо. Или сделать мегаинтерфейс закупщика продавца одновременно. Зачем изменять типовой? Чтобы он успешно накрылся обновлением и вы потом делали все заного?

Ответ перед глазами и был озвучен ранее - делаем копипаст типового. И меняем перемениваем там что душе угодно. Назначение пользователю такого интерфейса не изменится ни при каком обновлении программы.

Надо изменить роли? Не хотите потом часами при обновлении рыться в рлях и хотите чтобы всегда было все четко. Копируем типовой - делаем в нем что надо. Все.

7) Максимальный вынос в свои обработки.

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

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

8)  Отчеты - тут даже писать нечего. Можете их нашлепать своих хоть 100500 миллионов и вывесить в своих интерфейсах.

9) Создайте подсистемы в конфигурации и объедините все свои добавления в подсистему. Вам будет очень легко ей управлять.

а) Сделайте подсистему, в которой отметьте все добавленные вами объекты - справочники, документу, модули, интерфейсы, роли, подписки и прочее - вы всегда сможете легко отбирать и работать со своим решением.

б) сделайте подчиненную подсистемы - если вы изменяли все таки типовые объекты. Отметьте в ней все типовые объекты которые были вами затронуты. Естественно в ситуациях, когда нет выхода кроме как исправлять типовой модуль 0 только максимальное комментирование своих действий поможет отследить ваши изменения. Рекомендую придумать универсальную пометку ваших изменений, которой вы будете отмечать все такие модули.

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

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

Поставить плюс на Инфостарте
 
Спасибо, отличная статья. Жаль, что тогда, когда я приступал к доработке типовой конфигурации, я ничего этого не знал.
Все приходилось искать самому.
Передо мной сейчас стоит очередная задача. Я доработал конфигурацию, а именно - создал свою подсистему объектов  Важно отметить, что я ни одного объекта типовой конфигурации не изменял и не дополнял, а только создавал новые объекты : справочники, документы, обработки, отчеты, план счетов, картинки, общие макеты, общий модуль.
Теперь мне нужно все эти объекты сохранить отдельным файлом, чтобы иметь возможность ставить созданную подсистему на другие базы с типовой конфигурацией.  Пожалуйста, подскажите, как это сделать, чтобы сохранить и переносить, только новые объекты, а не сохранять их вместе с "несущей" типовой конфигурацией?
 
Цитата
Николай пишет:
еперь мне нужно все эти объекты сохранить отдельным файлом, чтобы иметь возможность ставить созданную подсистему на другие базы с типовой конфигурацией. Пожалуйста, подскажите, как это сделать, чтобы сохранить и переносить, только новые объекты, а не сохранять их вместе с "несущей" типовой конфигурацией?
К сожалению никак. Я уже несколько лет жду данной возможности.
Придется поставлять все с конфигурацией.
Единственное что можно сделать создать поставку, в которой исключить из поставки типовые все объекты и включить только свои доработки.
Страницы: 1
Ответить
Читают тему
Форма ответов
Текст сообщения*
Загрузить файл или картинкуПеретащить с помощью Drag'n'drop
Перетащите файлы
Ничего не найдено
Отправить Отменить