1с как добавить команду в еще
подобный код не прокатывает. Может кто подскажет куда смотреть?!
(1) суть в том что общая команда имеет свойства к каким объектам она относится. Если она не относится к вашему объекту, то чего хотеть?
(2) хм.. если бы так. берем в качестве примера общую команду "СтруктураПодчиненности" - к каким объектам она относится?!
(4) Логично..но я специально привел пример с командой "СтруктураПодчиненности" - у нее нет никаких параметров
(6) Ок, убедили - в Ваше случае есть, в моем случае нету. Я понимаю о чем Вы говорите, но у меня это параметр пустой (смотрю типовую УТ11)
Могу еще цитату с ИТС по подсистеме привести:
"Прежде всего необходимо принять решение по поводу списка документов, справочников и ПВХ для которых требуется выводить отчет Структура подчиненности. Затем задать список типов выбранных объектов в типах параметра общей команды СтруктураПодчиненности"
(3) не каждую команду можно запихнуть.
В УТ 11.3 у данной команды нет оснований и судя по коду она через БСП добавляется!
(27) я изучил этот код до того как написать на форум :) Принцип там похож на (15) т.е. есть клиентская команда в модуле формы и далее по списку.
(15) Вся фишка именно в том, что бы имея общую команду ее вызвать, точнее добавить ее на форму (без промежуточного вызова какой-то клиентской процедуры)
(16) Если это вообще возможно, то по-идее сначала нужно добавить общую команду в коллекцию команд формы с правильным именем (которое я тебе и предложил подсмотреть) без назначения действия, а потом уже назначить ее кнопке.
Все, что мне нужно это добавить программно кнопку на форму документа (кнопку со ссылкой на общую команду), общая команда без параметров.
А у параметрически добавленных общих команд на форме имя именно такое выводит, в стиле "ОбщаяКоманда.СтруктураПодчиненности"?
Гы! По твоему скриншоту можно предположить, что нужно таки сразу создавать кнопку без редактирования коллекции команд формы, но имя должно быть без промежуточной точки:
(18) Пробовал - не работает (если создать кнопку без указания "ИмяКоманды" - она даже на форме не отразится)
(20) Странно. Ведь и в СП написано и на твоем скриншоте из (13) видно, что для общих команд в "ИмяКоманды" должна быть пустая строка.
(23) Странно не то слово.
Если в конфигураторе "кинуть" общую команду на форму то в поле "ИмяКоманды" будет заполнено как "ОбщаяКоманда.СтруктураПодчиненности" - в отладчике "ИмяКоманды" будет пустое. но когда программно создаешь кнопку и оставляешь "имя команды" пустое то эффект ровно такой же как если в конфигураторе создать кнопку и не указать "Имя команды". ее просто не будет не форме.
а СП я тоже читал. но видимо чего то не понял, или понял но нет, или не так понял.
(24) Ну, в СП буквально следующее: "Если кнопка связана не с командой формы , содержит пустую строку" (для свойства "ИмяКоманды").
А ты точно пробовал указывать имя команды БЕЗ точки после "ОбщаяКоманда"? Ну и если у тебя общая команда все-таки параметризирована, то не получится, я думаю.
ЗЫ. Ну а на том, что в конфигураторе пишет - можно особо не зацикливаться. Для ТЗ на форме, например, конфигуратор в колонке тип показывает "Таблица значений", хотя на самом деле тип - "ДанныеФормыКоллекция". Т.е. они скорее своими соображениями удобства руководствовались, чем точностью отображения сути.
У меня получилось так:
В модуле формы при создании на сервере
НоваяКоманда = Команды.Добавить(" КакаяТоКоманда ");
НоваяКоманда.Действие = "ОбщаяКоманда.КакаяТоОбщаяКоманда";
Добавляем кнопку на форму:
НоваяКнопкаОбщейКоманды = Элементы.Добавить("НоваяКнопкаОбщейКоманды", Тип("КнопкаФормы"), ЭтаФорма.КоманднаяПанель);
НоваяКнопкаОбщейКоманды.ИмяКоманды ;
(31) Пробовал: команда добавляется, но она никак не связана с общей командой и по нажатию ничего не происходит. Платформа 8.3.10.2580. Могу выгрузить банальную dt-шку, где 1 справочник, 1 команда и 1 форма, но я думаю каждый такую сможет сделать)
(32) получилось решить проблему следующим образом, через гиперссылку (вставьте свою):
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Кнопка = Элементы.Добавить("МояКнопка", Тип("ДекорацияФормы"), ЭтотОбъект);
Кнопка.Заголовок = Новый ФорматированнаяСтрока(НСтр("ru = 'Сотрудники.'"). "e1cib/command/Справочник.Команда.СотрудникиВнештатные");
the1; TuneSoft; assa; Drivingblind; fvr2000; ivakop; kondratevsergey1985; maxim_1c; Boneman; + 9 – Ответить
Разложим все по полочкам. В типовых конфигурациях 90% форм списков и форм объектов ссылочного типа на командной панели в подменю "Ввод на основании" содержат действие "(Ввести на основании)". Это действие в режиме предприятия замещается списком синонимов типов объектов, которые можно вводить на основании текущего объекта. Это обстоятельство предоставляет нам отличную возможность замечательного нецелевого использования этого списка.
Бонус
При обновлении почти никаких забот. Только в случае добавления новых объектов придется доставить для них галочки во вводе на основании.
- планы обмена
- справочники
- документы
- планы видов характеристик
- планы счетов
- планы видов расчета
- бизнес-процессы
- задачи
Для наглядности возьмем и создадим 2 универсальные команды "Запомнить" и "Использовать". Первая будет сохранять ссылку. Вторая будет ее использовать в форме.
1. Команда "Запомнить".
Итак, создаем новый план обмена. Даем ему имя "кмдЗапомнить", синоним "Запомнить".
Открыв закладку ввода на основании, мы неприятно удивимся, что средств для групповой установки флажков в этом диалоге нет. Здесь нужно каждый флажок установить персонально. Однако есть альтернатива (спасибо KAO111 ) - в конфигураторе есть возможность сразу выбрать группу объектов для ввода на основании. Для этого необходимо открыть дополнительные свойства объекта конфигурации (Alt+Shift+Enter), перейти на закладку "Ввод на основании" и снять флажок "Только выбранные".
Теперь создаем основную форму объекта (узла обмена). Она будет нужна только для обработки события ПередОткрытием, так что избавляемся от излишеств. Закрываем конструктор. Открываем модуль формы. Ссылка на основание доступна здесь через свойство ПараметрОснование расширения формы. Таким образом, весь функционал можно разместить здесь и не использовать обработку заполнения.
2. Команда "Использовать".
Аналогично создаем команду "Использовать".
Хотелось бы получить доступ к той форме (в случае формы объекта) или элементу формы (в случае формы списка), откуда вызвали команду. В модуле формы нам предоставляется такая возможность через использование свойства ВладелецФормы .
Как поступить с теми формами, в которых нет подменю ввода на основании?
В случае, если флажок "Автозаполнение" у нужной командной панели формы отключен и разработчики формы не добавили туда подменю ввода на основании, вы не увидите нужного вам списка в режиме предприятия. В этом случае можно добавить его туда вручную, а можно использовать более элегантный метод, программно добавляющий необходимое подменю в обработчике ПриОткрытии. Так как действие "(Ввести на основании)" является предопределенным, программно его создать, к сожалению, нельзя! Но можно обойти это ограничение. Создадим в одной из форм наших объектов-команд командную панель и добавим туда ввод на основании в режиме конфигуратора. Эта форма все равно никогда не открывается, так что используем ее как шаблон. Перед открытием нужной формы будем проверять наличие в заданной командной панели необходимого подменю, и, если его там не обнаружим, то скопируем его из нашей формы-шаблона.
Добавляем в форме объекта "кмдЗапомнить" командную панель "ДействияФормы".
Создаем там подменю с типом "Ввести на основании".
В глобальном модуле размещаем функцию
Теперь в теле обработчика ПриОткрытии любой формы можно вызывать эту процедуру. При отсутствии подменю ввода на основании она будет добавлять его в логический (в зависимости от типа выравнивания) конец найденной командной панели, список которых задан в массиве МассивИменКомандныхПанелей в порядке убывания приоритета. Алгоритм конечно предусматривает далеко не все возможные варианты, но на типовых отрабатывает почти всегда.
Итоги.
Полезность описанного метода создания универсальных интерактивных команд трудно переоценить. Пользуюсь этими командами каждый рабочий день! В платформах 8.0 и 8.1 на текущий момент отсутствует какая либо альтернатива этому методу.
Можно развить идею и сделать только один объект-команду. В него поместить все необходимые функции. А пользователю при активации этой команды предоставлять возможность выбора конкретной функции. Получится что то вроде универсального контекстного меню ссылочных объектов.
Как и при работе в Проводнике, контекстное меню в 1С также предусмотрено. Оно вызывается по щелчку правой кнопки мыши (поэтому его называют иногда «меню правого клика») по нужному реквизиту или строке табличной части. Контекстное меню содержит список команд, вызываемый пользователем для выбора необходимого действия над выбранным объектом. Контекстное меню в 1С заполняется автоматически стандартными командами. Набор команд зависит от места вызова контекстного меню. Меню называется контекстным как раз из-за того, что его состав зависит от контекста (места), в котором оно используется.
Рис. 1 Внешний вид контекстного меню в 1С
Контекстное меню позволяет экономить время пользователя, так как в нём расположены все необходимые и наиболее часто используемые в 1С 8 команды.
2. Пользовательское контекстное меню в 1С
Существует возможность настройки контекстного меню без использования кода. Для того чтобы добавить команду в контекстное меню, нужно перейти в режим Конфигуратор, открыть форму того объекта, где нужно будет установить своё контекстное меню.
Рис. 2 Настройка контекстного меню
Затем нужно выбрать нужный реквизит, для которого будет установлено контекстное меню, и нажать по нему правой кнопкой мыши. В появившемся списке выбрать пункт «Показать контекстное меню».
Рис. 3 Показать контекстное меню в 1С
У реквизита появится пункт «Контекстное меню». В него нужно добавить свои команды. Оно должно содержать команды, которые относятся к выделенному элементу. Не стоит забывать, что не нужно добавлять пункты в контекстное меню, которые вам не необходимы – это его перегружает.
На вкладке «Команды» нужно выбрать команду, которая должна отображаться в окне контекстного меню, затем перетащить её в пункт «Контекстное меню».
Рис. 4 Выбор команды для контекстного меню
Теперь этот пункт контекстного меню будет отображаться в пользовательском режиме.
Рис. 5 Добавленный пункт контекстного меню
Если команд контекстного меню несколько, но они однотипные, имеет смысл их сгруппировать. Для этого переходим в конфигуратор, открываем нужную форму. Выбираем нужный элемент. Добавляем контекстное меню, либо выбираем созданное ранее. Нажав правой кнопкой мыши на него, добавляем «Группа → Подменю». Появится группа, в которую можно перетащить несколько команд. Для группы команд контекстного меню лучше сразу указать заголовок, который будет отображаться в пользовательском режиме.
Рис. 6 Заголовок группы пунктов контекстного меню
После переноса команд в эту группу в пользовательском режиме это будет выглядеть таким образом:
Рис. 7 Группа команд контекстного меню
В Проводнике Windows пункты меню сгруппированы по смыслу, группы разделены чертами. В 1С тоже можно сделать такое разделение.
Рис. 8 Разделение команд контекстного меню
Переходим в конфигуратор, открываем форму, выбираем реквизит. В пункте «Контекстное меню» добавляем группу «Группа → Группа колонок». Перетаскиваем туда команды. В пользовательском режиме это будет выглядеть таким образом:
Рис. 9 Разделение команд контекстного меню в 1С
3. «Горячие клавиши» в 1С
Для ещё более быстрой работы с командами предусмотрена возможность создания «горячих клавиш» в 1С.
Использование в 1С «горячих клавиш» сильно сокращает время на выполнение операций. Ниже приведена таблица со сравнением времени (в секундах) выполнения операций четырьмя разными способами: из пункта «Ещё», с помощью вынесенных на форму команд, с помощью контекстного меню и с помощью «горячих клавиш».
Таблица с замерами
Из контекстного меню
Из данных таблицы можно сделать вывод, что медленнее всего осуществлять действия через команды, находящиеся в пункте «Ещё» Чуть скорее действия происходят, если вынести кнопки на форму. Однако если добавить кнопки в контекстное меню, то станет ещё быстрее. Самый высокоскоростной способ – «горячие клавиши».
Известно, что анализировать данные, состоящие только из чисел человеку сложнее, чем изображённые графически, поэтому для лучшего понимания важности использования «горячих клавиш» и контекстного меню и для наглядности был составлен график, визуально демонстрирующий средние значения времени, затрачиваемого на выполнение одной и той же операции разными способами.
Рис. 10 Сравнение скорости выполнения операций разными способами с горячими клавишами в 1С
На графике видна разница между способами. «Горячие клавиши» гораздо эффективнее остальных способов.
Для создания собственных значений «горячих клавиш» нужно открыть конфигуратор, перейти в нужную форму. Выбрать вкладку «команды» на форме, вызвать панель со свойствами. С помощью пункта в конфигураторе 1С «Сочетание клавиш» можно внести различные клавиши для вызова команды в данной форме. Кроме символов можно использовать, например, ctrl + символ, shift + символ, BackSpace и т. д.
Рис. 11 Сочетание клавиш в 1С
После этого в режиме 1С:Предприятие нужно нажать на выбранную клавишу или сочетание клавиш. Команда выполнится.
Стоит помнить о том, что «горячие клавиши» в 1С не должны повторяться. В конфигураторе факт повтора введённых «горячих клавиш» для данной формы не контролируется, в режиме 1С:Предприятие при нажатии на повторяющуюся клавишу будет выполнена команда, которая находится выше в контекстном меню.
Подводя итог, хочу напомнить тот факт, что контекстное меню создавалось для сокращения времени, которое пользователь бы потратил на поиск команды в различных панелях, поэтому не стоит перегружать контекстное меню командами, используемыми редко.
Рис. 12 Сравнение скорости выполнения операций разными способами с горячими клавишами в 1С в виде графика
В случаях, если команда выполняется очень часто, стоит добавить для неё «горячую клавишу», так как это самый быстрый способ выбора команды.
Специалист компании «Кодерлайн»
Вас могут заинтересовать следующие статьи:
94 [PROP_CODE] => TAGS2 [TITLE] => Вас могут заинтересовать следующие семинары: ) --> 95 [PROP_CODE] => TAGS [TITLE] => Вас могут заинтересовать следующие вебинары: ) -->
Вас могут заинтересовать следующие вебинары:
Программирование в 1С [1] => 1С:Бухгалтерия [2] => 1С:Управление производственным предприятием [3] => 1С: Розница [4] => 1С: CRM [5] => 1С: Управление торговлей [6] => Бюджетирование [7] => СКД [8] => 1С: Конвертация данных [9] => Администрирование 1С [10] => Конвертация данных [11] => Лицензии 1С [12] => Оптимизация [13] => 1С: Документооборот [14] => 1С: ERP [15] => Транспортная логистика [16] => Техническое задание [17] => Продажи [18] => Ценообразование [19] => Планирование [20] => MS SQL Server [21] => Полезные обработки [22] => МСФО [23] => Отчеты в 1С [24] => XML [25] => Внедрение ERP [26] => Перенос данных [27] => Торговое оборудование [28] => РСБУ [29] => 1С:Управление корпоративными финансами [30] => 1С: Колледж [31] => 1С: Аренда и управление недвижимостью [32] => Финансовый учет ) -->
Как и при работе в Проводнике, контекстное меню в 1С также предусмотрено. Оно вызывается по щелчку правой кнопки мыши (поэтому его называют иногда «меню правого клика») по нужному реквизиту или строке табличной части. Контекстное меню содержит список команд, вызываемый пользователем для выбора необходимого действия над выбранным объектом. Контекстное меню в 1С заполняется автоматически стандартными командами. Набор команд зависит от места вызова контекстного меню. Меню называется контекстным как раз из-за того, что его состав зависит от контекста (места), в котором оно используется.
Рис. 1 Внешний вид контекстного меню в 1С
Контекстное меню позволяет экономить время пользователя, так как в нём расположены все необходимые и наиболее часто используемые в 1С 8 команды.
2. Пользовательское контекстное меню в 1С
Существует возможность настройки контекстного меню без использования кода. Для того чтобы добавить команду в контекстное меню, нужно перейти в режим Конфигуратор, открыть форму того объекта, где нужно будет установить своё контекстное меню.
Рис. 2 Настройка контекстного меню
Затем нужно выбрать нужный реквизит, для которого будет установлено контекстное меню, и нажать по нему правой кнопкой мыши. В появившемся списке выбрать пункт «Показать контекстное меню».
Рис. 3 Показать контекстное меню в 1С
У реквизита появится пункт «Контекстное меню». В него нужно добавить свои команды. Оно должно содержать команды, которые относятся к выделенному элементу. Не стоит забывать, что не нужно добавлять пункты в контекстное меню, которые вам не необходимы – это его перегружает.
На вкладке «Команды» нужно выбрать команду, которая должна отображаться в окне контекстного меню, затем перетащить её в пункт «Контекстное меню».
Рис. 4 Выбор команды для контекстного меню
Теперь этот пункт контекстного меню будет отображаться в пользовательском режиме.
Рис. 5 Добавленный пункт контекстного меню
Если команд контекстного меню несколько, но они однотипные, имеет смысл их сгруппировать. Для этого переходим в конфигуратор, открываем нужную форму. Выбираем нужный элемент. Добавляем контекстное меню, либо выбираем созданное ранее. Нажав правой кнопкой мыши на него, добавляем «Группа → Подменю». Появится группа, в которую можно перетащить несколько команд. Для группы команд контекстного меню лучше сразу указать заголовок, который будет отображаться в пользовательском режиме.
Рис. 6 Заголовок группы пунктов контекстного меню
После переноса команд в эту группу в пользовательском режиме это будет выглядеть таким образом:
Рис. 7 Группа команд контекстного меню
В Проводнике Windows пункты меню сгруппированы по смыслу, группы разделены чертами. В 1С тоже можно сделать такое разделение.
Рис. 8 Разделение команд контекстного меню
Переходим в конфигуратор, открываем форму, выбираем реквизит. В пункте «Контекстное меню» добавляем группу «Группа → Группа колонок». Перетаскиваем туда команды. В пользовательском режиме это будет выглядеть таким образом:
Рис. 9 Разделение команд контекстного меню в 1С
3. «Горячие клавиши» в 1С
Для ещё более быстрой работы с командами предусмотрена возможность создания «горячих клавиш» в 1С.
Использование в 1С «горячих клавиш» сильно сокращает время на выполнение операций. Ниже приведена таблица со сравнением времени (в секундах) выполнения операций четырьмя разными способами: из пункта «Ещё», с помощью вынесенных на форму команд, с помощью контекстного меню и с помощью «горячих клавиш».
Таблица с замерами
Из контекстного меню
Из данных таблицы можно сделать вывод, что медленнее всего осуществлять действия через команды, находящиеся в пункте «Ещё» Чуть скорее действия происходят, если вынести кнопки на форму. Однако если добавить кнопки в контекстное меню, то станет ещё быстрее. Самый высокоскоростной способ – «горячие клавиши».
Известно, что анализировать данные, состоящие только из чисел человеку сложнее, чем изображённые графически, поэтому для лучшего понимания важности использования «горячих клавиш» и контекстного меню и для наглядности был составлен график, визуально демонстрирующий средние значения времени, затрачиваемого на выполнение одной и той же операции разными способами.
Рис. 10 Сравнение скорости выполнения операций разными способами с горячими клавишами в 1С
На графике видна разница между способами. «Горячие клавиши» гораздо эффективнее остальных способов.
Для создания собственных значений «горячих клавиш» нужно открыть конфигуратор, перейти в нужную форму. Выбрать вкладку «команды» на форме, вызвать панель со свойствами. С помощью пункта в конфигураторе 1С «Сочетание клавиш» можно внести различные клавиши для вызова команды в данной форме. Кроме символов можно использовать, например, ctrl + символ, shift + символ, BackSpace и т. д.
Рис. 11 Сочетание клавиш в 1С
После этого в режиме 1С:Предприятие нужно нажать на выбранную клавишу или сочетание клавиш. Команда выполнится.
Стоит помнить о том, что «горячие клавиши» в 1С не должны повторяться. В конфигураторе факт повтора введённых «горячих клавиш» для данной формы не контролируется, в режиме 1С:Предприятие при нажатии на повторяющуюся клавишу будет выполнена команда, которая находится выше в контекстном меню.
Подводя итог, хочу напомнить тот факт, что контекстное меню создавалось для сокращения времени, которое пользователь бы потратил на поиск команды в различных панелях, поэтому не стоит перегружать контекстное меню командами, используемыми редко.
Рис. 12 Сравнение скорости выполнения операций разными способами с горячими клавишами в 1С в виде графика
В случаях, если команда выполняется очень часто, стоит добавить для неё «горячую клавишу», так как это самый быстрый способ выбора команды.
Специалист компании «Кодерлайн»
Вас могут заинтересовать следующие статьи:
94 [PROP_CODE] => TAGS2 [TITLE] => Вас могут заинтересовать следующие семинары: ) --> 95 [PROP_CODE] => TAGS [TITLE] => Вас могут заинтересовать следующие вебинары: ) -->
Вас могут заинтересовать следующие вебинары:
Программирование в 1С [1] => 1С:Бухгалтерия [2] => 1С:Управление производственным предприятием [3] => 1С: Розница [4] => 1С: CRM [5] => 1С: Управление торговлей [6] => Бюджетирование [7] => СКД [8] => 1С: Конвертация данных [9] => Администрирование 1С [10] => Конвертация данных [11] => Лицензии 1С [12] => Оптимизация [13] => 1С: Документооборот [14] => 1С: ERP [15] => Транспортная логистика [16] => Техническое задание [17] => Продажи [18] => Ценообразование [19] => Планирование [20] => MS SQL Server [21] => Полезные обработки [22] => МСФО [23] => Отчеты в 1С [24] => XML [25] => Внедрение ERP [26] => Перенос данных [27] => Торговое оборудование [28] => РСБУ [29] => 1С:Управление корпоративными финансами [30] => 1С: Колледж [31] => 1С: Аренда и управление недвижимостью [32] => Финансовый учет ) -->
Как и при работе в Проводнике, контекстное меню в 1С также предусмотрено. Оно вызывается по щелчку правой кнопки мыши (поэтому его называют иногда «меню правого клика») по нужному реквизиту или строке табличной части. Контекстное меню содержит список команд, вызываемый пользователем для выбора необходимого действия над выбранным объектом. Контекстное меню в 1С заполняется автоматически стандартными командами. Набор команд зависит от места вызова контекстного меню. Меню называется контекстным как раз из-за того, что его состав зависит от контекста (места), в котором оно используется.
Рис. 1 Внешний вид контекстного меню в 1С
Контекстное меню позволяет экономить время пользователя, так как в нём расположены все необходимые и наиболее часто используемые в 1С 8 команды.
2. Пользовательское контекстное меню в 1С
Существует возможность настройки контекстного меню без использования кода. Для того чтобы добавить команду в контекстное меню, нужно перейти в режим Конфигуратор, открыть форму того объекта, где нужно будет установить своё контекстное меню.
Рис. 2 Настройка контекстного меню
Затем нужно выбрать нужный реквизит, для которого будет установлено контекстное меню, и нажать по нему правой кнопкой мыши. В появившемся списке выбрать пункт «Показать контекстное меню».
Рис. 3 Показать контекстное меню в 1С
У реквизита появится пункт «Контекстное меню». В него нужно добавить свои команды. Оно должно содержать команды, которые относятся к выделенному элементу. Не стоит забывать, что не нужно добавлять пункты в контекстное меню, которые вам не необходимы – это его перегружает.
На вкладке «Команды» нужно выбрать команду, которая должна отображаться в окне контекстного меню, затем перетащить её в пункт «Контекстное меню».
Рис. 4 Выбор команды для контекстного меню
Теперь этот пункт контекстного меню будет отображаться в пользовательском режиме.
Рис. 5 Добавленный пункт контекстного меню
Если команд контекстного меню несколько, но они однотипные, имеет смысл их сгруппировать. Для этого переходим в конфигуратор, открываем нужную форму. Выбираем нужный элемент. Добавляем контекстное меню, либо выбираем созданное ранее. Нажав правой кнопкой мыши на него, добавляем «Группа → Подменю». Появится группа, в которую можно перетащить несколько команд. Для группы команд контекстного меню лучше сразу указать заголовок, который будет отображаться в пользовательском режиме.
Рис. 6 Заголовок группы пунктов контекстного меню
После переноса команд в эту группу в пользовательском режиме это будет выглядеть таким образом:
Рис. 7 Группа команд контекстного меню
В Проводнике Windows пункты меню сгруппированы по смыслу, группы разделены чертами. В 1С тоже можно сделать такое разделение.
Рис. 8 Разделение команд контекстного меню
Переходим в конфигуратор, открываем форму, выбираем реквизит. В пункте «Контекстное меню» добавляем группу «Группа → Группа колонок». Перетаскиваем туда команды. В пользовательском режиме это будет выглядеть таким образом:
Рис. 9 Разделение команд контекстного меню в 1С
3. «Горячие клавиши» в 1С
Для ещё более быстрой работы с командами предусмотрена возможность создания «горячих клавиш» в 1С.
Использование в 1С «горячих клавиш» сильно сокращает время на выполнение операций. Ниже приведена таблица со сравнением времени (в секундах) выполнения операций четырьмя разными способами: из пункта «Ещё», с помощью вынесенных на форму команд, с помощью контекстного меню и с помощью «горячих клавиш».
Таблица с замерами
Из контекстного меню
Из данных таблицы можно сделать вывод, что медленнее всего осуществлять действия через команды, находящиеся в пункте «Ещё» Чуть скорее действия происходят, если вынести кнопки на форму. Однако если добавить кнопки в контекстное меню, то станет ещё быстрее. Самый высокоскоростной способ – «горячие клавиши».
Известно, что анализировать данные, состоящие только из чисел человеку сложнее, чем изображённые графически, поэтому для лучшего понимания важности использования «горячих клавиш» и контекстного меню и для наглядности был составлен график, визуально демонстрирующий средние значения времени, затрачиваемого на выполнение одной и той же операции разными способами.
Рис. 10 Сравнение скорости выполнения операций разными способами с горячими клавишами в 1С
На графике видна разница между способами. «Горячие клавиши» гораздо эффективнее остальных способов.
Для создания собственных значений «горячих клавиш» нужно открыть конфигуратор, перейти в нужную форму. Выбрать вкладку «команды» на форме, вызвать панель со свойствами. С помощью пункта в конфигураторе 1С «Сочетание клавиш» можно внести различные клавиши для вызова команды в данной форме. Кроме символов можно использовать, например, ctrl + символ, shift + символ, BackSpace и т. д.
Рис. 11 Сочетание клавиш в 1С
После этого в режиме 1С:Предприятие нужно нажать на выбранную клавишу или сочетание клавиш. Команда выполнится.
Стоит помнить о том, что «горячие клавиши» в 1С не должны повторяться. В конфигураторе факт повтора введённых «горячих клавиш» для данной формы не контролируется, в режиме 1С:Предприятие при нажатии на повторяющуюся клавишу будет выполнена команда, которая находится выше в контекстном меню.
Подводя итог, хочу напомнить тот факт, что контекстное меню создавалось для сокращения времени, которое пользователь бы потратил на поиск команды в различных панелях, поэтому не стоит перегружать контекстное меню командами, используемыми редко.
Рис. 12 Сравнение скорости выполнения операций разными способами с горячими клавишами в 1С в виде графика
В случаях, если команда выполняется очень часто, стоит добавить для неё «горячую клавишу», так как это самый быстрый способ выбора команды.
Специалист компании «Кодерлайн»
Вас могут заинтересовать следующие статьи:
94 [PROP_CODE] => TAGS2 [TITLE] => Вас могут заинтересовать следующие семинары: ) --> 95 [PROP_CODE] => TAGS [TITLE] => Вас могут заинтересовать следующие вебинары: ) -->
Вас могут заинтересовать следующие вебинары:
Программирование в 1С [1] => 1С:Бухгалтерия [2] => 1С:Управление производственным предприятием [3] => 1С: Розница [4] => 1С: CRM [5] => 1С: Управление торговлей [6] => Бюджетирование [7] => СКД [8] => 1С: Конвертация данных [9] => Администрирование 1С [10] => Конвертация данных [11] => Лицензии 1С [12] => Оптимизация [13] => 1С: Документооборот [14] => 1С: ERP [15] => Транспортная логистика [16] => Техническое задание [17] => Продажи [18] => Ценообразование [19] => Планирование [20] => MS SQL Server [21] => Полезные обработки [22] => МСФО [23] => Отчеты в 1С [24] => XML [25] => Внедрение ERP [26] => Перенос данных [27] => Торговое оборудование [28] => РСБУ [29] => 1С:Управление корпоративными финансами [30] => 1С: Колледж [31] => 1С: Аренда и управление недвижимостью [32] => Финансовый учет ) -->
Читайте также: