Заставка в 1С:Предприятие — это первое, что видят пользователи при запуске программы. Стандартный логотип с надписью "1С:Предприятие 8" может не отражать корпоративный стиль вашей компании или просто надоесть со временем. К счастью, платформа позволяет заменить её на собственное изображение, логотип организации или даже анимированный сплеш-скрин.
Многие администраторы и разработчики 1С сталкиваются с этой задачей при брендировании программ для заказчиков или внутреннего использования. Однако не все знают, что способов замены заставки существует несколько — от простых (через настройки конфигуратора) до программных (с использованием встроенного языка). В этой статье мы разберём все актуальные методы, их плюсы и минусы, а также типичные ошибки, которые могут возникнуть в процессе.
Важно понимать, что заставка в 1С бывает двух типов: статическая (обычное изображение) и динамическая (с анимацией или прогресс-баром загрузки). Второй вариант требует более глубоких знаний в программировании, но выглядит профессиональнее. Мы рассмотрим оба варианта, чтобы вы могли выбрать оптимальный для ваших задач.
Способ 1: Замена заставки через конфигуратор (самый простой метод)
Если вам нужно быстро поменять стандартную заставку на собственное изображение без программирования, этот способ подойдёт идеально. Он работает в большинстве типовых конфигураций (Бухгалтерия 3.0, УТ 11, ЗУП 3.1 и др.) и не требует правки кода.
Для замены выполните следующие шаги:
- Откройте Конфигуратор в режиме
1С:Предприятие(с правами администратора). - Перейдите в меню
Файл → Открыть...и выберите вашу информационную базу. - В дереве объектов конфигурации найдите ветку
Общие → Картинки. - Щёлкните правой кнопкой мыши и выберите
Добавить. - Загрузите ваше изображение (рекомендуемый формат —
.pngили.jpg, размер не более800×600 pxдля лучшего отображения). - Сохраните конфигурацию (
Конфигурация → Сохранить конфигурацию) и обновите базу (Конфигурация → Обновить конфигурацию базы данных).
Теперь нужно привязать загруженную картинку к заставке. Для этого:
- В дереве конфигурации найдите объект
ЗаставкаПриЗапуске(обычно располагается вОбщие → Прочие). - В свойствах объекта укажите путь к вашей картинке в поле
Картинка. - Перезапустите 1С в пользовательском режиме — новая заставка должна отобразиться.
⚠️ Внимание: В некоторых конфигурациях (например, 1С:ERP) объект ЗаставкаПриЗапуске может отсутствовать. В этом случае потребуется создать его вручную или использовать программный метод (см. Способ 3).
Преимущества этого метода:
- 🔹 Не требует знания 1С-программирования.
- 🔹 Сохраняется при обновлении конфигурации (если не затрагиваются общие объекты).
- 🔹 Подходит для большинства типовых решений.
Недостатки:
- 🔸 Не работает в управляемых формах некоторых конфигураций (например, 1С:Документооборот).
- 🔸 Нельзя добавить анимацию или прогресс-бар.
Сохранить картинку в формате PNG или JPG|
Разрешение не более 800×600 px для лучшего отображения|
Фон изображения должен быть однородным (без прозрачности, если формат JPG)|
Проверьте, что файл не превышает 500 КБ (иначе загрузка будет медленной)-->
Способ 2: Замена через внешнюю обработку (для нетиповых конфигураций)
Если в вашей конфигурации нет объекта ЗаставкаПриЗапуске или вы работаете с 1С:Управление холдингом, 1С:Комплексная автоматизация, где стандартные методы не срабатывают, можно использовать внешнюю обработку. Этот способ универсален и подходит даже для сильно модифицированных баз.
Алгоритм действий:
- Скачайте или создайте обработку для замены заставки (пример кода см. ниже).
- Подключите её к вашей базе через
Файл → Открыть...в конфигураторе. - Запустите обработку в режиме
1С:Предприятие. - Укажите путь к новому изображению и примените изменения.
Пример кода для обработки (вставляйте в модуль объекта):
Процедура ЗаменитьЗаставку(Команда)
ПутьКФайлу = "C:\Temp\МойЛоготип.png"; // Укажите свой путь
Картинка = Новый Картинка(ПутьКФайлу);
// Сохраняем картинку в справочник "ХранилищеНастроек"
Настройки = ХранилищеНастроек.Создать();
Настройки.Вставить("ЗаставкаПриЗапуске", Картинка);
Настройки.Записать();
Сообщить("Заставка успешно заменена! Перезапустите 1С.");
КонецПроцедуры
Где искать готовые обработки:
- 📁 Инфостарт (раздел "Обработки для администрирования").
- 📁 Портал ИТС (требуется подписка).
- 📁 Форумы 1С (например, forum.1c.ru).
⚠️ Внимание: При использовании внешних обработок всегда проверяйте их код на наличие вредоносных вставок. Запускайте только обработки из проверенных источников или написанные самостоятельно.
Плюсы метода:
- 🔹 Работает в любых конфигурациях, включая нетиповые.
- 🔹 Можно автоматизировать замену для нескольких баз.
Минусы:
- 🔸 Требует прав администратора.
- 🔸 При обновлении конфигурации может потребоваться повторное применение обработки.
Способ 3: Программная замена заставки (для разработчиков)
Если вы разрабатываете собственную конфигурацию или модифицируете типовую, самый гибкий способ — программная замена заставки через встроенный язык. Этот метод позволяет не только поменять картинку, но и добавить анимацию, прогресс-бар или даже интерактивные элементы.
Основные шаги:
- Создайте новый объект конфигурации
ЗаставкаПриЗапуске(если его нет). - В модуле приложения (
ОбщийМодуль.МодульПриложения) добавьте обработчик событияПриНачалеРаботыСистемы. - Напишите код для отображения вашей заставки.
Пример кода для статической заставки:
Процедура ПриНачалеРаботыСистемы() Экспорт
Заставка = Новый Картинка("C:\Images\SplashScreen.png");
ФормаЗаставки = Новый Форма;
ФормаЗаставки.ЭлементыФормы.Добавить("Картинка", Тип("ПолеКартинки"));
ФормаЗаставки.ЭлементыФормы.Картинка.Картинка = Заставка;
ФормаЗаставки.Открыть();
Задержка(3000); // Показываем 3 секунды
ФормаЗаставки.Закрыть();
КонецПроцедуры
Для динамической заставки с прогресс-баром можно использовать следующий подход:
Процедура ПоказатьЗаставкуСПрогрессом()
Форма = Новый Форма;
Форма.ЭлементыФормы.Добавить("Картинка", Тип("ПолеКартинки"));
Форма.ЭлементыФормы.Добавить("Прогресс", Тип("ПолеПрогресса"));
Картинка = Новый Картинка("C:\Images\Logo.png");
Форма.ЭлементыФормы.Картинка.Картинка = Картинка;
Форма.ЭлементыФормы.Прогресс.Максимум = 100;
Форма.Открыть();
Для Сч = 1 По 100 Цикл
Форма.ЭлементыФормы.Прогресс.Значение = Сч;
Задержка(30); // Имитация загрузки
КонецЦикла;
Форма.Закрыть();
КонецПроцедуры
Где размещать код:
| Тип конфигурации | Место размещения кода | Примечание |
|---|---|---|
| Управляемое приложение | ОбщийМодуль.МодульПриложения |
Используйте событие ПриНачалеРаботыСистемы |
| Обычное приложение | ГлобальныйМодуль |
Можно использовать процедуру ПриНачалеРаботыСистемы или ПриОткрытии |
| Тонкий клиент | ОбщийМодульКлиентский |
Требуется проверка подключения к серверу |
⚠️ Внимание: В 1С:Предприятие 8.3.20+ появились ограничения на отображение модальных форм в событииПриНачалеРаботыСистемы. Если заставка не показывается, используйте альтернативный подход с задержкой черезПодключаемыйОбработчик.
Критическая особенность: При программной замене заставки в тонком клиенте или веб-клиенте изображение должно быть загружено на сервер или встроено в конфигурацию как ресурс. Локальные пути (например, C:\Images\...) работать не будут!
Если заставка отображается криво или растягивается, проверьте соотношение сторон изображения. Оптимальный размер для большинства конфигураций — 600×400 px с разрешением 96 dpi.
Способ 4: Замена заставки через реестр Windows (для опытных пользователей)
Этот метод подходит для локальных установок 1С (не для клиент-серверного варианта) и позволяет заменить заставку без доступа к конфигуратору. Он работает на уровне операционной системы и требует прав администратора.
Инструкция:
- Закройте все сеансы 1С:Предприятие.
- Откройте Редактор реестра (
Win + R→ введитеregedit). - Перейдите по пути:
HKEY_CURRENT_USER\Software\1C\1Cv8\8.3\{ИД_вашей_базы}\Splash(где
{ИД_вашей_базы}— уникальный идентификатор вашей информационной базы). - Создайте новый строковый параметр с именем
Picture. - В качестве значения укажите полный путь к вашему изображению (например,
C:\1C\Splash\logo.png). - Перезапустите 1С.
Как найти {ИД_вашей_базы}:
- 🔍 Откройте файл
1CEStart.cfgв папке%APPDATA%\1C\1cv8\. - 🔍 Найдите раздел с названием вашей базы — там будет строка
ID=....
Ограничения метода:
- 🔸 Работает только для файлового варианта 1С.
- 🔸 При обновлении платформы настройки могут сброситься.
- 🔸 Не поддерживает анимацию.
⚠️ Внимание: Неправильное редактирование реестра может привести к сбоям в работе 1С или операционной системы. Перед изменениями обязательно сделайте резервную копию реестра (Файл → Экспорт...).
Что делать, если после изменения реестра заставка не поменялась?
1. Проверьте, что путь к изображению указан корректно (без опечаток и с правильными слешами).
2. Убедитесь, что файл изображения доступен для чтения (права доступа).
3. Попробуйте перезапустить службу 1C:Enterprise 8.3 Server Agent (если используется).
4. В некоторых версиях 1С параметр реестра может игнорироваться — в этом случае используйте программный метод (Способ 3).
Способ 5: Использование расширений конфигурации (для 1С:Предприятие 8.3.10+)
Если вы работаете с 1С:Предприятие 8.3.10 или новее, можно использовать расширения конфигурации для замены заставки. Этот метод безопаснее, чем прямая правка конфигурации, так как не затрагивает оригинальные объекты.
Пошаговая инструкция:
- В конфигураторе откройте вашу базу и создайте новое расширение (
Конфигурация → Поддержка → Расширения конфигурации → Создать). - В дереве расширения добавьте новый объект
ЗаставкаПриЗапуске(если его нет в основной конфигурации). - Настройте свойства объекта:
- Укажите путь к картинке в свойстве
Картинка. - При необходимости добавьте обработчики событий (например,
ПриОткрытиидля анимации).
- Укажите путь к картинке в свойстве
- Сохраните расширение и обновите конфигурацию базы данных.
- 🔹 Не ломает поддержку типовой конфигурации.
- 🔹 Легко откатить изменения (достаточно отключить расширение).
- 🔹 Можно распространять на несколько баз.
- 📂 Внутри расширения (как встроенный ресурс).
- 📂 В общей папке на сервере (указывайте сетевой путь, например,
\\Server\1C\Images\logo.png). - 🔹 Причина: Кэш 1С не обновлён.
- 🔹 Решение: Очистите кэш вручную:
- Закройте все сеансы 1С.
- Удалите папку
%APPDATA%\1C\1cv8\(или%LOCALAPPDATA%\1C\1cv8\для тонкого клиента). - Перезапустите 1С.
- 🔹 Причина: Неподходящее разрешение картинки.
- 🔹 Решение: Используйте изображения с соотношением сторон
4:3(например,800×600 pxили1024×768 px). Для проверки отображения используйте инструменты вроде Paint.NET или Photoshop. - 🔹 Причина: Путь к изображению указан локально (например,
C:\Images\logo.png). - 🔹 Решение: Разместите изображение на сетевом диске или встройте его в конфигурацию как ресурс. Для клиент-серверного варианта используйте пути вида
\\Server\Shared\1C\Splash\logo.png. - 🔹 Причина: Неправильный путь или отсутствие прав доступа.
- 🔹 Решение:
- Проверьте путь к файлу (должен быть указан без опечаток).
- Убедитесь, что у пользователя 1С есть права на чтение файла.
- Если используется сетевой путь, проверьте доступность ресурса с других компьютеров.
- 🔹 Причина: Неправильно настроена задержка в коде.
- 🔹 Решение: Отрегулируйте время отображения в обработчике события. Например, в коде:
Задержка(3000); // 3000 мс = 3 секундыУвеличьте или уменьшите значение в миллисекундах.
- 🔸 Версию платформы 1С (в некоторых старых версиях, например, 8.2, замена заставки не поддерживается).
- 🔸 Наличие прав администратора на компьютере.
- 🔸 Антивирус или брандмауэр, который может блокировать доступ к файлам.
- 🔹 Последовательной смены статических картинок (через таймер в коде).
- 🔹 Использования APNG (анимированный PNG) — требует дополнительных обработок.
- 🔹 Внедрения Flash-анимации (устаревший метод, не рекомендуется).
- 🔹 В конфигураторе удалите или отключите объект
ЗаставкаПриЗапуске. - 🔹 Если использовали реестр, удалите параметр
Pictureв веткеHKEY_CURRENT_USER\Software\1C\1Cv8\.... - 🔹 Для расширений отключите или удалите расширение, ответственное за заставку.
Преимущества расширений:
Пример кода для расширения (добавление прогресс-бара):
Процедура ПриОткрытии(Отказ)
Прогресс = ЭлементыФормы.Прогресс;
Для Инд = 1 По 100 Цикл
Прогресс.Значение = Инд;
Задержка(20);
КонецЦикла;
КонецПроцедуры
Где хранить изображения для расширений:
⚠️ Внимание: В 1С:Предприятие 8.3.18+ появилась возможность подключать расширения через файл настроек (.cfe). Это упрощает распространение изменений на множество баз без ручного подключения.
Расширения конфигурации — самый безопасный способ кастомизации заставки для типовых решений, так как они не нарушают целостность оригинальной конфигурации и сохраняются при обновлениях.
Типичные ошибки и их решение
При замене заставки в 1С пользователи часто сталкиваются с типичными проблемами. Рассмотрим самые распространённые из них и способы их устранения.
1. Заставка не меняется после всех манипуляций
2. Изображение отображается растянутым или обрезанным
3. Заставка показывается только на одном компьютере
4. При запуске 1С появляется ошибка "Не найден файл картинки"
5. Заставка отображается слишком долго или коротко
Если ни один из способов не помог, проверьте:
FAQ: Частые вопросы по замене заставки в 1С
Можно ли поставить анимированную заставку (GIF) в 1С?
Нет, 1С:Предприятие 8.3 не поддерживает формат .gif для заставок. Однако можно имитировать анимацию с помощью:
Самый надёжный способ — создать несколько статических кадров и переключать их в коде с задержкой.
Как вернуть стандартную заставку 1С?
Чтобы вернуть оригинальную заставку, выполните одно из действий:
После этого перезапустите 1С — стандартная заставка вернётся.
Будет ли работать заставка в веб-клиенте и мобильном приложении 1С?
Зависит от способа замены:
- 🔹 Конфигуратор/расширения — работают в веб-клиенте, если картинка загружена как ресурс.
- 🔹 Реестр Windows — не работает в веб-клиенте и мобильном приложении.
- 🔹 Программный метод — работает в веб-клиенте, если код адаптирован под тонкий клиент.
Для мобильного приложения 1С замена заставки не поддерживается — оно использует стандартный сплеш-скрин операционной системы.
Можно ли сделать разные заставки для разных пользователей?
Да, это возможно с помощью программного кода. Например, можно:
- 🔹 Привязать заставку к роли пользователя (в коде проверять
Пользователь.Роли). - 🔹 Использовать хранилище настроек для сохранения индивидуальных картинок.
- 🔹 Загружать заставку из профиля пользователя (например, по пути
\\Server\Users\{ИмяПользователя}\Splash.png).
Пример кода для динамической заставки:
Процедура ПоказатьЗаставкуПоРоли()
ТекущийПользователь = ПользователиИнформационнойБазы.ТекущийПользователь();
Если ТекущийПользователь.Наименование = "Администратор" Тогда
Картинка = Новый Картинка("C:\1C\Splash\Admin.png");
Иначе
Картинка = Новый Картинка("C:\1C\Splash\User.png");
КонецЕсли;
// Далее код отображения заставки
КонецПроцедуры
Как сделать заставку с логотипом компании и текстом (например, "Добро пожаловать, {ИмяПользователя}")?
Для этого нужно:
- Подготовить шаблон картинки с логотипом и местом для текста.
- В коде динамически добавлять текст поверх картинки. Пример:
Процедура СоздатьПерсонализированнуюЗаставку()
// Загружаем шаблон
Шаблон = Новый Картинка("C:\1C\Splash\Template.png");
// Получаем имя пользователя
ИмяПользователя = ПользователиИнформационнойБазы.ТекущийПользователь().Наименование;
// Добавляем текст на картинку
Рисовальщик = Новый РисовальщикКартинки(Шаблон);
Рисовальщик.Текст(100, 300, "Добро пожаловать, " + ИмяПользователя, ШрифтСистемный, ЦветЧерный, 20);
// Показываем результат
Форма = Новый Форма;
Форма.ЭлементыФормы.Добавить("Картинка", Тип("ПолеКартинки"));
Форма.ЭлементыФормы.Картинка.Картинка = Рисовальщик.Картинка;
Форма.Открыть();
КонецПроцедуры
Для удобства можно сохранять сгенерированную картинку в кэш, чтобы не создавать её при каждом запуске.