← Назад к вопросам
Что такое команда?
1.0 Junior🔥 211 комментариев
#Объекты метаданных#Формы и интерфейс
Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Команда в 1С (Команда)
Команда в 1С это элемент пользовательского интерфейса, который выполняет определённое действие при клике пользователя. Команда это основной способ взаимодействия пользователя с приложением.
Определение
Команда это:
- Действие которое выполняется в приложении
- Кнопка, пункт меню или ссылка в интерфейсе
- Обработчик события связанный с командой
- Визуальное представление (название, иконка, горячая клавиша)
Структура команды
// Команда: "Создать документ"
// Основные свойства:
Наименование = "Создать документ" // текст в кнопке
Представление = "Создать" // отображаемое имя
Только = Ложь // видна всегда
Описание = "Создаёт новый документ продажи"
Картинка = Картинки.СоздатьДокумент // иконка кнопки
КартинкаРазмер = СреднийРазмер
Ускоритель = "Ctrl+N" // горячая клавиша
ВидИспользования = КнопкаПанелиИнструментов
Типы команд по способу вызова
1. Команда кнопки
// На форме документа есть кнопка "Сохранить"
// Расположение: панель инструментов
Процедура СохранитьНажатие()
// Выполняется при клике на кнопку
Объект.Записать();
КонецПроцедуры
2. Команда пункта меню
// Меню: Документ → Провести
// Расположение: основное меню
Процедура ПроводитьНажатие()
Объект.Провести();
КонецПроцедуры
3. Команда контекстного меню
// Правый клик на элемент таблицы → "Удалить"
// Расположение: контекстное меню таблицы
Процедура УдалитьСтрокуНажатие()
Строка = Элементы.Таблица.ТекущаяСтрока;
Таблица.Удалить(Строка);
КонецПроцедуры
Создание команды в конфигураторе
Форма → Команды → Добавить команду
Свойства команды:
- Имя: "СохранитьДокумент"
- Название: "Сохранить"
- Описание: "Сохраняет документ в базе"
- Ускоритель: "Ctrl+S"
- Картинка: выбрать из галереи
Практический пример
// На форме есть команда "Рассчитать сумму"
Процедура РассчитатьСуммуНажатие()
// Шаг 1: Получить данные из формы
КоличествоТовара = Объект.Количество;
ЦенаТовара = Объект.Цена;
// Шаг 2: Выполнить вычисление
Сумма = КоличествоТовара * ЦенаТовара;
// Шаг 3: Обновить форму
Объект.Сумма = Сумма;
// Шаг 4: Показать результат
Сообщить("Сумма рассчитана: " + Сумма + " руб");
КонецПроцедуры
Расположение команд на форме
Панель инструментов
┌─────────────────────────────┐
│ [Создать] [Сохранить] [Удалить] ... │
└─────────────────────────────┘
Основное меню
Документ
├─ Создать
├─ Сохранить
├─ Провести
├─ Отменить проведение
└─ Удалить
Контекстное меню (при правом клике)
┌─ Добавить строку
├─ Удалить строку
├─ Вставить строку выше
└─ Вставить строку ниже
Группировка команд
// На форме можно группировать команды
// Группа "Основные операции":
├─ Сохранить
├─ Провести
└─ Отменить проведение
// Группа "Действия":
├─ Копировать
├─ Переместить
└─ Отправить
Управление доступностью команды
// Команда может быть активна или неактивна
Процедура ПриОткрытииФормы(Отмена, СтандартнаяОбработка)
// Если документ проведён — деактивировать команду "Удалить"
Если Объект.Статус = "Проведён" Тогда
Элементы.УдалитьКоманда.Доступна = Ложь;
Иначе
Элементы.УдалитьКоманда.Доступна = Истина;
КонецЕсли;
КонецПроцедуры
Процедура ОбъектПриИзменении(Отмена)
// При изменении документа включить кнопку "Сохранить"
Элементы.СохранитьКоманда.Доступна = Истина;
КонецПроцедуры
Визуальное оформление команды
// Команда "Предупреждение" с красной иконкой
Процедура ПредупреждениеНажатие()
Элементы.ПредупреждениеКоманда.Картинка = Картинки.Предупреждение;
Элементы.ПредупреждениеКоманда.ЦветТекста = ЦветЧисло(255, 0, 0); // красный
КонецПроцедуры
Обработчики команд
// Когда пользователь нажимает на команду,
// вызывается процедура с суффиксом "Нажатие"
Процедура ИмяКомандыНажатие()
// Код команды здесь
КонецПроцедуры
// Альтернативно, можно назначить обработчик вручную
Процедура МояОбработчик(Элемент)
// Код команды здесь
КонецПроцедуры
Быстрые клавиши (Ускорители)
// Команда "Сохранить" имеет ускоритель Ctrl+S
// Пользователь может нажать Ctrl+S вместо клика на кнопку
// Распространённые ускорители:
Ctrl+S - Сохранить
Ctrl+P - Печать
Ctrl+N - Новый документ
Ctrl+Z - Отмена
Ctrl+Y - Повтор
Del - Удалить
F5 - Обновить
Команды в разных типах форм
На форме документа
- Создать новый
- Сохранить
- Провести / Отменить проведение
- Удалить
- Печать
- Отправить
На форме справочника
- Создать элемент
- Сохранить
- Удалить
- Копировать
- Выбрать
На форме отчёта
- Обновить
- Сохранить
- Печать
- Экспорт в Excel
- Экспорт в PDF
Стандартные команды платформы
Платформа автоматически создаёт команды:
ПолучитьСтандартныеКоманды();
// Возвращает:
// "Записать" - Ctrl+S
// "ОтменитьПроведение" - Ctrl+Q
// "Провести" - Ctrl+P
// "Удалить" - Del
// "Отмена" - Ctrl+Z
// "Повтор" - Ctrl+Y
Практический пример: полная команда
// На форме счёта создана команда "Рассчитать НДС"
Процедура РассчитатьНДСНажатие()
// Проверка предусловия
Если Не Объект.НД Тогда
ВызватьИсключение("Выберите НД");
КонецЕсли;
// Вычисление
Для каждого Строка Из Объект.Товары Цикл
Строка.НДС = Строка.Сумма * 0.18;
Строка.СуммаСНДС = Строка.Сумма + Строка.НДС;
КонецЦикла;
// Итого по документу
ИтогоСумма = 0;
ИтогоНДС = 0;
Для каждого Строка Из Объект.Товары Цикл
ИтогоСумма = ИтогоСумма + Строка.Сумма;
ИтогоНДС = ИтогоНДС + Строка.НДС;
КонецЦикла;
Объект.ИтогоСумма = ИтогоСумма;
Объект.ИтогоНДС = ИтогоНДС;
Объект.ИтогоСуммаСНДС = ИтогоСумма + ИтогоНДС;
// Сообщение об успехе
Сообщить("НДС рассчитан: " + ИтогоНДС + " руб");
КонецПроцедуры
Чеклист при создании команды
- Команда имеет понятное название
- Есть описание для справки
- Установлена подходящая иконка
- Назначена горячая клавиша (если нужна)
- Обработчик команды выполняет одну функцию
- Команда проверяет предусловия
- Результат отображается пользователю
- Команда управляет доступностью (Доступна)
- Проведено тестирование
Итого: команда это основной способ взаимодействия пользователя с приложением в 1С, представляющий собой кнопку, пункт меню или ссылку, которая выполняет определённое действие.