Решение ошибок "Нет кнопки Создать на основании" или "Задвоились пункты в меню Создать на основании"

30.08.21

Разработка - БСП (Библиотека стандартных подсистем)

Статья будет полезна всем, кто только начал разбираться с вариантами использования БСП и кто дорабатывает стандартные конфигурации. Надеюсь, что этот небольшой труд сэкономит Вам минимум полдня работы, а для начинающих станет первым шагом к освоению принципов работы БСП!

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Пример на котором решал данную задачу. Расширение "Тендер" для Business Automation Software for small company. PROF (1.6.15.1) она же УНФ!
.rar 226,39Kb
3 3 000 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Задача: добавить два новые документа в типовую конфигурацию “Bas small business” (УНФ). Причем один из документов должен вводиться на основании другого.

Ошибка №1 В пользовательском режиме кнопка «Создать на основании» не появилась

Ход решения: как оказалось, недостаточно просто определить, какой документ является основанием для другого. Нужно понимать, что все типовые конфигурации используют БСП (Библиотека стандартных подсистем), т.е. готовые программные блоки, общие при создании любой конфигурации. Например, работа и отображение кнопок Печати, Создать на основании и не только являются частью механизма БСП. Помогла мне разобраться в этом подходе статья с ИТС "Подключаемые команды" .

В итоге мне пришлось добавить согласно инструкции процедуры и функции в модуль формы и в модуль менеджера нового документа.

Вот пример модуля менеджера моего нового документа. Привожу этот пример, т.к. поменял процедуру ДобавитьКомандуСоздатьНаОсновании не так, как в инструкции.

После этого, о чудо! Кнопка "Создать на основании" появилась, но тут появилась вторая ошибка №2:

Меню задвоилось! Вспомнил, что подобную ошибку встречал уже в своей практике, но решение сразу не нашел. Тогда решил упереться и докопаться до причины. Оказалось

Общий.Модуль.ПодключаемыеКоманды процедура ВывестиКоманды

В этом месте в таблице значений ВидыКоманд две строки СозданиеНаОсновании!

Вот тут я понял, что если убрать одну из строк в этой таблице, тогда задвоения пунктов меню не будет! Все дело в том, что одну команду создает одна процедура, другую вторая. Причину мне сформулировать трудно, т.к. могу ошибаться. Но по-моему мнению, выполняется штатная процедура УНФ, которая добавляет команду и процедура которая относится к программной прорисовке команд от БСП.

В итоге задача решается двумя вариантами:

1. ОбщийМодуль.СозданиеНаОснованииПереопределяемый  отключаем использование добавления команд ввода на основании в одном из случаев.

Но этот способ может повлиять на работу в других местах программы, где этот механизм нужен. Хотя я проверил документ ЗаказПокупателя (стандартный документ) и убедился, что кнопки Создать на основании остались. Но, на всякий случай, решил задачу вторым вариантом:

2. Там где формируется ТЗ ВидыКоманд таблицу нужно аккуратно свернуть, но для этого нужно поменять две процедуры ОбщийМодуль. ПодключаемыеКомандыПереопределяемый

И ОбщийМодуль.ПодключаемыеКоманды процедура ВидыКоманд()

Вывод: для сопровождения типовых конфигураций крайне важно знать, как работает БСП

Вступайте в нашу телеграмм-группу Инфостарт

БСП УНФ Создать на основании;

См. также

БСП (Библиотека стандартных подсистем) Программист Платные (руб)

Синтакс-помощник БСП - cправочник по библиотекам стандартных подсистем и электронных документов. В состав справочника входит описание экспортных процедур и функций, размещенных в областях кода ПрограммныйИнтерфейс БСП и БЭД.

3254 руб.

21.11.2024    11786    45    24    

51

БСП (Библиотека стандартных подсистем) Универсальные функции Программист 1С 8.3 1С:Библиотека стандартных подсистем Бесплатно (free)

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

06.02.2026    2031    manul1c    5    

17

Рефакторинг и качество кода БСП (Библиотека стандартных подсистем) Механизмы платформы 1С Программист 1С:Предприятие 8 1С:Библиотека стандартных подсистем Бесплатно (free)

Использование Библиотеки стандартных подсистем позволяет разработчикам 1С значительно ускорить процесс создания решений за счет готового универсального кода, поддерживаемого и обновляемого официальным вендором. В статье рассказывается про роль и применение «Библиотеки стандартных подсистем» (БСП), примеры интеграции и подключения подсистем.

23.09.2025    9518    AlexeyPROSTO_1C    1    

18

БСП (Библиотека стандартных подсистем) Программист 1С:Предприятие 8 1С:Библиотека стандартных подсистем Бесплатно (free)

Уже заезженная тема с выводом в Word макетов при помощи БСП, но некоторые коллеги все равно спрашивают. Поэтому размещаю тут материал, как это сделать за три простых шага. Решение, которым я успешно пользуюсь в случаях, когда не нужна универсальность подключаемых внешних печатных форм.

16.09.2025    5140    _seerco2002    0    

34

Нейросети БСП (Библиотека стандартных подсистем) Инструментарий разработчика Программист 1С:Предприятие 8 1С:Библиотека стандартных подсистем Бесплатно (free)

Telegram-бот для разработчиков 1С, работающих с БСП. Если не знаете нужный под задачу метод или не помните название, то опишите боту задачу и получите список подходящих экспортных методов из общих модулей БСП.

02.09.2025    6579    krasnov322    22    

42

Анализ учета БСП (Библиотека стандартных подсистем) 1С:Предприятие 8 1С:Библиотека стандартных подсистем Бесплатно (free)

Расширение для конфигураций на базе БСП 3.х. Позволяет создавать новые отчеты путем соединения или объединения других отчетов.

22.05.2025    5171    212    seperblunt    9    

28
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Hatson 540 16.11.21 19:18 Сейчас в теме
Этого не достаточно. Нужно прописать объект метаданных в процедуру
СозданиеНаОснованииПереопределяемый.ПриОпределенииОбъектовСКомандамиСозданияНаОсновании(Объекты);
TerveRus; JIEX@; yaroslavch; +3 Ответить
2. MaxTolya 17 03.04.23 12:42 Сейчас в теме
Кроме этого (проверено опытным путем на ЕРП), если добавить в эту же процедуру и тот документ, который вводим на основании, а в модуле менеджера этого документа сделать заглушки функций ДобавитьКомандыСозданияНаОсновании и ДобавитьКомандуСоздатьНаОсновании, то задвоения строк не будет.
// Определяет список команд создания на основании.
//
// Параметры:
//   КомандыСозданияНаОсновании - ТаблицаЗначений - Таблица с командами создания на основании. Для изменения.
//       См. описание 1 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//   Параметры - Структура - Вспомогательные параметры. Для чтения.
//       См. описание 2 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//
Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
	
КонецПроцедуры

// Добавляет команду создания документа "мо_АктОНепрохождениеВходногоКонтроля".
//
// Параметры:
//   КомандыСозданияНаОсновании - ТаблицаЗначений - Таблица с командами создания на основании. Для изменения.
//       См. описание 1 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//
Функция ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании) Экспорт

	Возврат Неопределено;
КонецФункции

Показать
Enziger; dimanich70; +2 Ответить
Для отправки сообщения требуется регистрация/авторизация