При разработке узкоспециализированных решений на базе 1С часто возникает дилемма: писать конфигурацию с нуля или взять за основу мощный флагманский продукт, такой как 1С:Бухгалтерия 3.0. Второй вариант кажется привлекательным из-за наличия готовых механизмов учета, но он несет в себе огромный «балласт» в виде регламентированной отчетности, интеграций с государственными системами и рекламных блоков. В этой статье мы подробно разберем, как превратить тяжеловесную систему в легкий и быстрый инструмент для решения ваших задач.
Рассмотрим два основных пути, которые выбирают разработчики. Первый — «Метод отсечения», когда из БП 3.0 удаляется всё ненужное. Второй — «Метод конструктора», когда на базе «Библиотеки стандартных подсистем» (БСП) собирается только необходимый функционал. Проанализируем ситуацию: если вам нужен бухгалтерский движок и отчеты, лучше «резать» БП. Если же вам нужен только складской учет (например, «домашний склад»), эффективнее использовать БСП.
Разберем по шагам, что именно можно безболезненно удалить из типовой конфигурации, чтобы сократить размер cf-файла и ускорить работу системы. Практика показывает, что при грамотном подходе вес конфигурации можно уменьшить с 450 Мб до 190 Мб, что дает прирост скорости при сохранении и сравнении объектов до 50%.
Удалить.... Выясним причину их нахождения в базе: они нужны только для переноса данных. Если вы создаете новую систему, смело удаляйте их, предварительно очистив ссылки на них в ОпределяемыеТипы.ЕГАИС, ВетИС (Меркурий), ГИС МТ (Честный знак) и ЭДО. Если вы не планируете торговать маркированным товаром или алкоголем, эти подсистемы — первый кандидат на вылет. Удаление общих модулей с названиями Интеграция... и ОбменСГосударственнымиИнформационнымиСистемами... значительно ускорит поиск по текстам конфигурации.Сканеры штрихкода и Терминалы сбора данных, если они нужны для склада. Остальные макеты драйверов в общих макетах занимают много места в cf.Рассмотрим более профессиональный подход. Вместо того чтобы ломать готовую структуру, мы можем собрать свою конфигурацию из «кирпичиков». Для этого воспользуемся инструментарием «Конструктор БСП». Посмотрим на алгоритм работы с ним:
Выберем только базовые подсистемы, без которых современная конфигурация на управляемых формах будет неудобной:
Пользователи — для управления правами доступа.Контактная информация — для хранения адресов и телефонов.Печать — для формирования печатных форм.Дополнительные отчеты и обработки — для расширения функционала без изменения кода.Проанализируем результат: вы получите «чистую» базу, соответствующую всем стандартам 1С, но без единого лишнего документа. Это идеальный фундамент для написания своего складского учета («Чулана»).
Одной из главных проблем БП 3.0 является медленный запуск из-за отрисовки «Информационного центра» и различных рекламных баннеров. Выясним, как это отключить. Вместо правки типовых форм, лучше создать свою Рабочую область рабочего стола.
Рассмотрим пример кода, который можно разместить в модуле управляемого приложения для подавления лишней активности при старте:
Процедура ПриНачалеРаботыСистемы()
// Отключаем проверку обновлений через интернет
Константы.ПроверятьОбновлениеПрограммы.Установить(Ложь);
// Отключаем показ новостей и рекламных баннеров
Константы.ИспользоватьНовости.Установить(Ложь);
// Переопределяем параметры сеанса для подавления типовых алертов
// (зависит от конкретной версии БСП)
КонецПроцедуры
Если вы опасаетесь физически удалять объекты (боясь нарушить связи), мы рекомендуем использовать механизм ФункциональныеОпции. Разберем этот метод подробнее. Создайте общую функциональную опцию, например, РаботаВРежимеСклада. Привяжите к ней все интерфейсные элементы бухгалтерского учета: счета-фактуры, регламентированные операции, закрытие месяца.
В чем преимущество? Визуальное облегчение. Для пользователя (и для системы при отрисовке интерфейса) этих объектов не будет существовать, пока константа опции равна Ложь. Это значительно снижает когнитивную нагрузку на пользователя и ускоряет работу тонкого клиента.
При массовом удалении объектов вы неизбежно столкнетесь с ошибками компиляции. Проанализируем, где они возникают чаще всего:
ПодпискиНаСобытия в ветке Общие.ВладелецФайлов или ОбъектСДополнительнымиРеквизитами). Перед удалением справочника или документа обязательно исключите его из всех ОпределяемыеТипы.ОбновлениеИнформационнойБазыБП содержат тысячи строк кода для конвертации данных с версии 2.0 на 3.0. Если вы начинаете проект с нуля, этот код вам никогда не понадобится. Его очистка дает самое большое ускорение при выполнении глобального поиска.Подводя итог, можно сказать: «строить — не ломать». Если вам не нужен именно бухгалтерский учет, наиболее правильным решением будет использование Демонстрационной конфигурации БСП в качестве основы. Если же бухгалтерские проводки и стандартные отчеты (ОСВ, Карточка счета) вам жизненно необходимы, приготовьтесь к кропотливой двухнедельной работе по вырезанию Интеграций, Отчетности и Удаленных объектов.
Помните, что отказ от поддержки (снятие с замка) — это серьезный шаг. После такой глубокой модификации типовое обновление станет практически невозможным. Однако для специфических задач, таких как «домашний склад», это оправданная цена за высокую скорость работы и отсутствие информационного мусора.