Механизм "ввода на основании" в 1С:Предприятие — один из ключевых инструментов автоматизации бизнес-процессов, который экономит время бухгалтеров, кладовщиков и менеджеров. С его помощью можно быстро создавать новые документы на базе уже существующих, избегая ручного дублирования данных. Например, на основании заказа покупателя формируется счет на оплату, а из приходной накладной — карточка товара в справочнике.
Однако у новичков этот процесс часто вызывает вопросы: где найти кнопку, почему не отображаются нужные виды документов, как исправить ошибку "Недостаточно прав" или почему данные не переносятся корректно. В этой статье разберем пошаговые инструкции для разных конфигураций (1С:Бухгалтерия 8.3, 1С:Управление торговлей 11, 1С:Зарплата и управление персоналом), а также типичные "подводные камни", с которыми сталкиваются пользователи.
Особое внимание уделим настройке прав доступа, так как именно из-за них чаще всего возникают проблемы. Также рассмотрим, как работать с вводом на основании в управляемых формах и обычных формах, поскольку интерфейс и логика там отличаются. Если вы уже пробовали использовать этот механизм, но получали ошибки — в конце статьи есть FAQ с решениями наиболее распространенных проблем.
Для опытных пользователей приготовили список недокументированных возможностей ввода на основании, которые позволяют автоматизировать рутинные операции (например, массовое создание документов по шаблону или перенос данных между разными базами).
Что такое "ввод на основании" и зачем он нужен
Механизм "ввода на основании" — это функция 1С:Предприятие, которая позволяет создавать новые объекты (документы, элементы справочников, записи регистров) на базе уже существующих. Главное преимущество — автоматическое заполнение полей данными из исходного объекта, что сокращает время на ручной ввод и минимизирует ошибки.
Примеры использования:
- 📄 Создание счета на оплату на основании заказа клиента (переносятся реквизиты покупателя, номенклатура, цены).
- 📦 Формирование расходной накладной из заказа поставщику (автоматически подставляются товары, количества, цены закупки).
- 👥 Генерация приказа о приеме на работу на основании резюме кандидата (переносятся ФИО, должность, дата трудоустройства).
- 💰 Создание платежного поручения из счета на оплату (подставляются реквизиты банка, сумма, назначение платежа).
Без этого механизма пользователям пришлось бы вручную копировать данные из одного документа в другой, что занимает много времени и чревато ошибками (например, неверно указанная сумма или не тот контрагент).
Важно понимать, что логика заполнения полей зависит от конфигурации. В некоторых решениях (например, в 1С:ERP) можно гибко настраивать правила переноса данных через обработки или дополнительные реквизиты. В стандартных конфигурациях (например, 1С:Бухгалтерия 8.3) набор доступных документов для ввода на основании ограничен типовой функциональностью.
Где находится кнопка "Ввод на основании" и как ей пользоваться
Кнопка "Ввод на основании" может располагаться в разных местах в зависимости от режима работы (управляемые формы или обычные формы) и версии платформы. Рассмотрим оба варианта.
В управляемых формах (актуально для 1С:Предприятие 8.3 и новее):
- Откройте документ, на основании которого нужно создать новый (например,
Заказ покупателя). - В верхней панели инструментов найдите кнопку "Создать на основании" (или "Ввод на основании" в старых версиях). Она обычно расположена рядом с кнопками "Провести", "Печать" и "Действия".
- Нажмите на стрелку рядом с кнопкой — откроется список доступных документов для создания.
- Выберите нужный тип документа (например,
Счет на оплату покупателю).
В обычных формах (актуально для 1С:Предприятие 8.2 и некоторых старых конфигураций):
- Откройте документ-источник.
- В меню "Действия" (или "Все действия") найдите пункт "Ввод на основании".
- В открывшемся окне выберите тип создаваемого документа.
Если кнопки нет:
- 🔍 Проверьте, что у вас есть права на создание документов этого типа (см. раздел про настройку прав).
- 🔧 Возможно, в вашей конфигурации этот механизм отключен или перенастроен. Обратитесь к администратору 1С.
- 📂 Убедитесь, что документ-источник проведен (непроведенные документы часто блокируют ввод на основании).
Если в списке нет нужного документа, попробуйте обновить конфигурацию или проверьте, не скрыт ли он в настройках ролей.
Пошаговая инструкция: как сделать ввод на основании в 1С 8.3
Разберем процесс на примере создания счета на оплату на основании заказа покупателя в конфигурации 1С:Управление торговлей 11.4.
Шаг 1. Откройте документ-источник
Перейдите в раздел "Продажи" → "Заказы покупателей" и выберите нужный заказ. Убедитесь, что он проведен (статус должен быть "Проведен", а не "Не проведен").
Шаг 2. Нажмите "Создать на основании"
В верхней панели нажмите кнопку "Создать на основании" (или "Действия" → "Создать на основании" в старых версиях). Откроется список доступных документов.
Шаг 3. Выберите тип документа
В списке найдите "Счет на оплату покупателю" и кликните по нему. Система автоматически создаст новый документ и перенесет в него данные из заказа:
- 📌 Контрагент (покупатель)
- 📌 Номенклатура (товары/услуги)
- 📌 Количество и цены
- 📌 Валюта и курс (если заказ в иностранной валюте)
Шаг 4. Проверьте и сохраните документ
Убедитесь, что все данные перенеслись корректно. При необходимости отредактируйте:
- 🔹
Дата оплаты(по умолчанию может стоять текущая дата). - 🔹
Срок оплаты(если нужно указать другой). - 🔹
Банковские реквизиты(если счет для другого расчетного счета).
Нажмите "Провести и закрыть".
☑️ Проверка перед сохранением документа
Если при создании счета возникла ошибка "Недостаточно прав", см. раздел про настройку прав доступа.
Типичные ошибки и как их исправить
Даже опытные пользователи иногда сталкиваются с проблемами при вводе на основании. Разберем самые распространенные ошибки и способы их решения.
Ошибка 1: Кнопка "Ввод на основании" отсутствует
Причины и решения:
- 🔐 Недостаточно прав. Проверьте настройки ролей (см. следующий раздел).
- 📛 Документ не проведен. Проведите документ-источник и попробуйте снова.
- 🛠 Конфигурация изменена. Возможно, кнопка скрыта через настройку интерфейса. Обратитесь к программисту 1С.
Ошибка 2: Данные не переносятся или переносятся некорректно
Чаще всего это происходит из-за:
- 🔄 Разных версий конфигураций. Например, если заказ создан в УТ 10.3, а счет пытаетесь создать в УТ 11.4.
- 📝 Отсутствующих реквизитов. Проверьте, что все обязательные поля в документе-источнике заполнены.
- 🤖 Ошибок в правила обмена. Если используете обмен данными между базами, проверьте настройки синхронизации.
Ошибка 3: "Недостаточно прав для выполнения операции"
Это самая частая проблема. Решается через настройку ролей:
- Зайдите в
Администрирование → Пользователи и права → Настройка прав пользователей. - Выберите роль пользователя (например, "Бухгалтер" или "Менеджер по продажам").
- Проверьте, что в правах разрешено создание документов нужного типа.
Что делать, если права настроены, но ошибка остается?
Иногда проблема кроется в настройках Профилей групп доступа. Попробуйте временно назначить пользователю роль Администратор и проверьте, появляется ли кнопка. Если да — проблема точно в правах.
Ошибка 4: В списке нет нужного документа
Возможные причины:
- 📋 Документ не поддерживает ввод на основании в вашей конфигурации. Проверьте документацию или обратитесь к разработчику.
- 🔧 В настройках конфигурации отключена возможность создания этого типа документов на основании. Это можно исправить через
Конфигуратор(требуются права администратора).
Настройка прав доступа для ввода на основании
Чтобы пользователи могли создавать документы на основании, необходимо правильно настроить роли и права доступа. Рассмотрим процесс на примере конфигурации 1С:Бухгалтерия 8.3.
Шаг 1. Откройте настройки прав
Перейдите в раздел "Администрирование" → "Пользователи и права" → "Настройка прав пользователей".
Шаг 2. Выберите роль пользователя
Найдите роль, которую нужно изменить (например, "Бухгалтер" или "Кладовщик"), и откройте её настройки.
Шаг 3. Настройте права на документы
В разделе "Права" найдите вкладку "Документы". Убедитесь, что для нужных типов документов (например, "Счета на оплату", "Реализация товаров и услуг") установлены флажки:
- 📝 "Чтение" (разрешает просматривать документы).
- ✏️ "Добавление" (разрешает создавать новые документы).
- 🔄 "Ввод на основании" (специальное право для этого механизма).
Шаг 4. Сохраните изменения
Нажмите "Записать и закрыть", затем обновите сеанс пользователя (выйдите и зайдите заново в 1С).
Если после настройки прав кнопка так и не появилась, проверьте:
- 🔹 Не конфликтуют ли права с другими ролями пользователя.
- 🔹 Не установлены ли ограничения на уровне
Профилей групп доступа.
Права на "Ввод на основании" настраиваются отдельно от прав на создание документов. Даже если у пользователя есть право создавать счета, это не гарантирует доступ к вводу на основании.
Расширенные возможности: массовый ввод и автоматизация
Для опытных пользователей и программистов 1С механизм ввода на основании можно использовать более гибко. Рассмотрим несколько продвинутых сценариев.
1. Массовое создание документов
Если нужно создать несколько документов на основании одного (например, счета для каждого товара из заказа), можно использовать обработку или внешнюю печатную форму. Пример кода для массового создания счетов:
// Пример кода для конфигуратора 1С 8.3
Процедура МассовыйВводНаОсновании()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЗаказыПокупателей.Ссылка КАК Ссылка
|ИЗ
| Документ.ЗаказПокупателя КАК ЗаказыПокупателей
|ГДЕ
| ЗаказыПокупателей.ПометкаУдаления = ЛОЖЬ
| И ЗаказыПокупателей.Статус = &Статус";
Запрос.УстановитьПараметр("Статус", Перечисление.СтатусыЗаказовПокупателей.Подтвержден);
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
НовыйСчет = Документы.СчетНаОплатуПокупателю.СоздатьДокумент();
НовыйСчет.ЗаполнитьНаОсновании(Выборка.Ссылка);
НовыйСчет.Записать();
КонецЦикла;
КонецПроцедуры
2. Перенос данных между разными базами
Если у вас несколько баз 1С (например, УТ и Бухгалтерия), можно настроить обмен данными так, чтобы документы автоматически создавались на основании в другой базе. Для этого:
- Настройте план обмена между базами.
- В правилах обмена укажите соответствие документов (например,
ЗаказПокупателяв УТ →ПоступлениеТоваровв Бухгалтерии). - Используйте обработку загрузки данных для автоматического создания документов на основании.
3. Кастомизация правил заполнения
Если стандартные правила переноса данных вас не устраивают, можно их изменить через Конфигуратор:
- Откройте конфигурацию в режиме
Конфигуратор. - Найдите документ, для которого хотите изменить правила (например,
СчетНаОплатуПокупателю). - В модуле документа найдите процедуру
ОбработкаЗаполненияи отредактируйте её под свои нужды.
Пример изменения процедуры заполнения:
Процедура ОбработкаЗаполнения(Источник, Цель)
// Стандартное заполнение
Цель.Контрагент = Источник.Контрагент;
Цель.Договор = Источник.Договор;
// Добавляем кастомную логику: если сумма заказа > 100 000, устанавливаем скидку 5%
Если Источник.СуммаДокумента > 100000 Тогда
Для Каждого Строка Из Цель.Товары Цикл
Строка.Цена = Строка.Цена * 0.95;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Перед изменением конфигурации сделайте резервную копию базы! Ошибки в коде могут привести к неработоспособности системы.
Сравнение ввода на основании в разных конфигурациях 1С
Механизм ввода на основании работает во всех конфигурациях 1С, но есть нюансы в зависимости от типа решения. В таблице ниже сравнили ключевые особенности для популярных конфигураций.
| Конфигурация | Поддерживаемые документы для ввода на основании | Особенности | Типичные ошибки |
|---|---|---|---|
| 1С:Бухгалтерия 8.3 | Счета, платежные поручения, реализация товаров, поступление денежных средств | Автоматическое заполнение ставок НДС и счетов учета. Поддержка валютных операций. | Ошибки при несовпадении счетов учета в заказе и счете. |
| 1С:Управление торговлей 11 | Заказы, счета, накладные, возвраты, акты выполненных работ | Гибкие настройки переноса данных по номенклатуре (цены, скидки, характеристики). | Проблемы с переносом серийных номеров или характеристик товаров. |
| 1С:Зарплата и управление персоналом | Приказы о приеме/увольнении, кадровые перемещения, начисления зарплаты | Автоматическое заполнение графиков работы и табельных номеров. | Ошибки при несовпадении данных в справочнике Физические лица. |
| 1С:ERP | Все документы, включая производственные заказы и бюджетные операции | Поддержка сложных бизнес-процессов (например, создание заказа на производство на основании заказа клиента). | Конфликты при обмене данными между подсистемами. |
| 1С:Розница | Чеки, возвраты, инвентаризации, перемещения товаров | Автоматическое заполнение данных по кассовым сменам и складам. | Ошибки при работе с несколькими торговymi точками. |
Если вы работаете с нетиповыми конфигурациями или сильно доработанными решениями, механизм ввода на основании может вести себя нестандартно. В таких случаях рекомендуем обратиться к разработчику, который вносил изменения.
В 1С:ERP и 1С:КА 2 ввод на основании поддерживает создание документов не только внутри одной подсистемы, но и между ними (например, из заказа клиента в CRM можно создать производственный заказ).
FAQ: Ответы на частые вопросы
Можно ли сделать ввод на основании для справочников, а не только для документов?
Да, но это зависит от конфигурации. Например, в 1С:Управление торговлей можно создать карточку номенклатуры на основании заказа поставщику, если номенклатура еще не внесена в справочник. Для этого:
- Откройте заказ поставщику.
- В табличной части выделите строку с новой номенклатурой.
- Нажмите "Действия" → "Создать элемент справочника".
В некоторых конфигурациях эту возможность нужно включать через настройки или доработку.
Почему при вводе на основании не переносятся цены или количества?
Это может происходить по нескольким причинам:
- 🔹 В документе-источнике не заполнены обязательные реквизиты (например,
Тип ценилиВалюта). - 🔹 В настройках конфигурации отключен перенос цен (проверьте модуль документа).
- 🔹 Используется нестандартный
Тип цен, который не поддерживается в целевом документе.
Решение: откройте документ-источник и проверьте заполненность всех полей. Если проблема остается — обратитесь к программисту 1С для настройки правил переноса.
Как сделать ввод на основании для нескольких документов одновременно?
Стандартными средствами 1С это невозможно, но есть обходные пути:
- Используйте обработку для массового создания документов (пример кода приведен в разделе про автоматизацию).
- Настройте групповую обработку через
Все функции→Обработки→Групповая обработка справочников и документов. - В некоторых конфигурациях (например, 1С:УТ 11) есть возможность выделить несколько документов в списке и выбрать "Создать на основании" для всех выделенных.
Можно ли отменить ввод на основании, если документ уже создан?
Нет, механизма "отмены" ввода на основании в 1С не существует. Однако вы можете:
- 🗑 Удалить созданный документ (если он не проведен и не используется в других операциях).
- 🔄 Сделать сторнирующий документ (например, для реализации товаров — возврат товара).
- 📝 Отредактировать документ вручную, если нужно исправить отдельные поля.
Если документ уже проведен и связан с другими операциями, его удаление может нарушить целостность данных. В таких случаях лучше создать корректирующий документ.
Как настроить ввод на основании для нестандартных документов?
Если вам нужно, чтобы ввод на основании работал для документов, которых нет в стандартном списке, потребуется доработка конфигурации:
- Откройте конфигуратор (
Файл→Конфигуратор). - Найдите документ, для которого хотите добавить возможность ввода на основании.
- В модуле документа добавьте процедуру
ОбработкаЗаполненияс логикой переноса данных. - В форме документа добавьте команду "Ввод на основании" и свяжите её с нужными типами документов.
Пример кода для добавления новой команды:
Процедура ДобавитьКомандыВводНаОсновании(КомандныйИнтерфейс)
КомандныйИнтерфейс.Действия.Добавить("ВводНаОснованииНовыйДокумент",
Новый Действие("ВводНаОснованииНовыйДокумент",
Новый ОписаниеОперации("Создать новый документ на основании",
ЭтотОбъект)));
КонецПроцедуры
Для сложных доработок рекомендуем обратиться к сертифицированному партнеру 1С.