Сведения о команде не существуют 1с
Есть расположенная на форме новая команда, как в 1С её вызвать программно из модуля формы? Перерыл интернет,не нашел четкого объяснения или кода.
Просто вызови процедуру команды, подставив в параметры команду или кнопку.
Для управляемой формы:
Процедура ВызватьКоманду() ИмяНужнойКоманды = “ИмяКомандыФормы”; // Тут просто имя команды как в конфигураторе. НужнаяКоманда = ЭтаФорма.Команды.Найти(ИмяНужнойКоманды); // Находим команду на форме КакаяТоКоманда(НужнаяКоманда); // Вызываем нужную команду, подставив ее в параметры КонецПроцедуры
Процедура КакаяТоКоманда(Команда) // Тут код твоей команды. КонецПроцедуры
Для обычной формы Процедура ВызватьКоманду() ИмяНужнойКнопки = “ИмяКнопкиФормы”; // Тут просто имя команды как в конфигураторе. НужнаяКнопка = ЭтаФорма.ЭлементыФормы.ОсновныеДействияФормы.Кнопки[ИмяНужнойКнопки]; КакаяТоКоманда(НужнаяКнопка); // Вызываем нужную команду, подставив ее в параметры КонецПроцедуры
Процедура КакаяТоКоманда(Кнопка) // Тут код твоей команды. КонецПроцедуры
Общие команды — механизм платформы, предназначенный для описания часто используемых команд в конфигурации 1С 8.3.
Общие или глобальные команды удобно использовать, если одна команда нужна многих объектам конфигурации. Например, кнопка для вывода структуры подчиненности документов, команда отображения проводок документа, отчет о изменении объекта.
В команду можно передать параметры, например, из формы какого объекта он вызывается.
Настройка и свойства общей команды в 1С
Добавить новую команду и настроить общую форму достаточно просто, рассмотрим этот процесс подробнее:
Получите 267 видеоуроков по 1С бесплатно:
- Бесплатный видео самоучитель по 1С Бухгалтерии 8.3 и 8.2;
- Самоучитель по новой версии 1С ЗУП 3.0;
- Хороший курс по 1С Управление торговлей 11.
- Группа — расположение будущей команды на интерфейсе.
- Тип параметра команды — определяет набор объектов, в котором будет отображаться будущая команда.
- Режим использования параметра — задает возможность передать в качестве параметра команды одно или несколько значений.
- Изменяет данные — если галка установлена, то при выполнение команды форма будет пересчитана с сервера.
- Модуль команды — обработчик выполнения команды, выполняется на клиенте.
Пример модуля команды:
Здесь ПараметрКоманды — объект, вызывающий команду. А в ПараметрыВыполненияКоманды структура, в которой описан Источник (вызываемая Форма), Окно (ОкноКлиентскогоПриложения), Уникальность, указывает, искать ли уже открытую форму или нет.
Группы команд 1С
Объект, позволяющий вывести команды на командный интерфейс конфигурации в отдельную группу:
Видео по общим командам от Павла Чистова:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
Расширение управляемой формы для справочника (Managed form extension for catalogs) — Прочитать (Read)
Синтаксис: Прочитать()
Описание: Обновляет объект управляемой формы.
Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент.
Похожие FAQ
Еще в этой же категории
Как на управляемой форме разместить список регистра сведений с отбором? 15
Решение рассмотрено для элемента справочника (Контрагент и регистр КонтактнаяИнформация) 1. Создание реквизита: Добавляем новый реквизит формы (. не путать с реквизитом справочника . ) с типом » ДинамическийСписок» В поле » Основная табли Поле выбора
Заполнение списка значений в элементе поле выбора на форме 9
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип — Произвольный, Использование — Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Как установить параметр динамического списка? 8
Когда используете для вывода данных динамический список и произвольный запрос, то бывают ситуации когда надо указать параметр используемый в этом запросе. Ниже пример вывода данных регистра сведений в карточке клиента Для вывода используется исп Форма
Программное создание таблицы значений с условным оформлением 6
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Как обновить динамический список или реквизит на форме клиента? 6
Если вы, открыв форму справочника или документа, выполнили некоторое действие, код который должен изменить состояние данных в динамических списках или значение реквизита. Данные изменены, но в открытой форме осталось все как было, можно конечно закр Посмотреть все в категории Работа с Формой (Диалог) и её элементами
Несмотря на кажущуюся простоту вопроса, с подобной проблемой рано или позно сталкивается практически любой разработчик, когда вдруг он не видит в интерфейсе того, что ожидал. Например, какого-то раздела, или команды перехода к списку справочника.
В такой ситуации нужно проанализировать, что же сделано не так? Алгоритм проверки прост – сначала нужно убедиться, что все в порядке с разделом, к которому относится объект, а затем, что все в порядке с самим объектом.
Для примера рассмотрим справочник Контрагенты , относящийся к подсистеме (разделу) Закупки .
Сначала проверим раздел. Убедимся что:
1. Для той подсистемы, к которой относится искомый объект, и всех подсистем, которые находятся выше ее по иерархии установлено свойство подсистемы Включать в командный интерфейс . Для этого вызовем контекстное меню подсистемы Закупки и откроем палитру свойств этой подсистемы.
2. Откроем командный интерфейс конфигурации и проверим, что в нем установлена видимость этой подсистемы (или подсистемы ее верхнего (первого) уровня). Если в конфигурации созданы роли, то нужно обратить внимание также и на то, как настроена видимость для различных ролей. Для этого выделим корень дерева объектов конфигурации, вызовем его контекстное меню и выполним команду Открыть командный интерфейс конфигурации .
3. Откроем состав объектов подсистемы и убедимся, что подсистема включает в себя хотя бы один объект конфигурации. Если подсистема не содержит ни одного объекта, она не будет отображена в командном интерфейсе. Для этого в окне редактирования подсистемы Закупки откроем закладку Состав .
4. Откроем командный интерфейс подсистемы и проверим, что хотя бы одна команда (стандартная или созданная в конфигурации) доступна для настройки в этой подсистеме. Если таких команд нет – подсистема не будет отображена. При этом важно лишь наличие этих команд, а не их видимость. Для этого вызовем контекстное меню подсистемы Закупки и выполним команду Открыть командный интерфейс .
Если в составе команд нет вашей стандартной команды объекта, значит для объекта отключено использование стандартных команд (см. п.1 ниже).
Если в составе команд нет команды, созданной в конфигурации, значит, ей не назначена группа (см. п.2 ниже).
Если для команды назначена не группа подсистемы, а какая-то группа формы, то для того, чтобы команда стала доступна в интерфейсе форм необходимо задать еще и тип параметра этой команды (см. п.2 ниже).
5. Если в конфигурации созданы пользователи, и им назначены определенные роли, то убедимся, что в правах пользователя разрешено использование той подсистемы, к которой относится искомый объект, и всех вышестоящих по иерархии подсистем. Для этого откроем окно редактирования роли (например, Менеджер по закупкам ), которая назначена пользователю, под именем которого будет происходить работа с прикладным решением.
6. Если в конфигурации созданы функциональные опции, и они связаны с каким-либо объектом конфигурации, то этот объект будет отображен в интерфейсе только в случае, если соответствующая функциональная опция включена в прикладном решении. Поэтому убедимся, что та подсистема, к которой относится искомый объект, и все вышестоящие по иерархии подсистемы, не отключены функциональными опциями в режиме исполнения. Для того, чтобы узнать, с какими функциональными опциями связана подсистема, вызовем контекстное меню подсистемы Закупки и выполним команду Дополнительно .
В нашем случае подсистема не связана ни с одной из функциональных опций. Это значит, что отображение подсистемы в интерфейсе не будет зависеть от значения функциональной опции в прикладном решении.
7. В заключение, в режиме 1С:Предприятие проверим, что раздел, к которому относится искомый объект, и все вышестоящие по иерархии разделы, не отключены пользовательскими настройками панели разделов.
Вернуться к настройкам, выполненным в конфигураторе, можно с помощью команды Все действия – Установить стандартные настройки в окне настройки панели разделов.
Теперь проверим все, что относится к самому объекту:
1. Что для искомого объекта разрешено использование стандартных команд. Для этого вызовем контекстное меню справочника Контрагенты и откроем палитру его свойств.
2. Если у объекта существует нестандартная команда, то чтобы увидеть ее в интерфейсе убедимся, что для нее задана группа и, если команда параметризованная, – тип параметра команды. Для этого вызовем контекстное меню нестандартной команды Печать справочника Контрагенты и откроем палитру ее свойств.
Иначе команда будет недоступна в командном интерфейсе, а параметризованная команда будет недоступна для включения в командный интерфейс форм, соответствующих ее параметру.
3. Откроем командный интерфейс подсистемы и убедимся, что включена видимость команды в подсистеме. При этом нужно обратить внимание не только на то, как настроена видимость по-умолчанию, но и на то, как она настроена для различных ролей. Для этого вызовем контекстное меню подсистемы Закупки и выполним команду Открыть командный интерфейс .
4. Откроем окно редактирования роли (например, Менеджер по закупкам ) и проверим, что в правах этой роли разрешено использование искомой команды. Если речь идет о стандартной команде (например, открытия списка справочника) – нужно проверить права на сам объект.
Если речь идет о нестандартной команде (например, Печать ) – нужно проверить права на эту команду.
5. Убедимся, что объект или команда не отключены функциональными опциями в режиме исполнения. Для того, чтобы узнать, с какими функциональными опциями связан объект, вызовем контекстное меню справочника Контрагенты и выполним команду Дополнительно .
6. В заключение, в режиме 1С:Предприятие проверим, что команда не отключена пользовательскими настройками.
Вернуться к настройкам, выполненным в конфигураторе, можно с помощью команды Все действия – Установить стандартные настройки .
Заметим, что для небольших конфигураций может быть не создано ни одной подсистемы. В этом случае команды для работы с объектами конфигурации будут помещены в раздел Рабочий стол , который создается системой по умолчанию. Вызвав из контекстного меню корня дерева объектов конфигурации команду Открыть командный интерфейс рабочего стола , можно редактировать командный интерфейс этого раздела.
При переходе на управляемый интерфейс логика работы с некоторыми привычными еще со времен 7.7 объектами поменялась. В классическом интерфейсе для взаимодействия с пользователем программист проектировал форму, указывал поля ввода данных, кнопки, надписи и прочие элементы для взаимодействия с пользователями. Потом выбирал, на какие события формы должен реагировать объект и прописывал обработчик события. Все логично и понятно, в управляемом интерфейсе появилось такое понятие как команда. Команда запускает определенный алгоритм, набор действий, который прописывает программист в модуле команды. Вызвать команду можно из управляемой формы, но как будет выглядеть элемент управления который вызовет команду зависит от того куда программист перетащит команду, в какую группу элементов он ее поместит.
Думаю можно сказать, что в 8.1, да и в 7.7 концепция была следующей: оформление определяет логику работы формы, в управляемом интерфейсе во главе стола поставили логику работы, формирование внешнего вида формы переложили на плечи движка 1с. Таким чином от того куда перетащил программист команду зависит визуальное оформление элемента который запустит команду на выполнение
Как видите, это может быть «объемная кнопка», плоская кнопка на панели инструментов, или пункт выпадающего меню.
Но если посмотреть на скриншот, то видно, что кроме нашей «Команда1» на форме есть кнопки «Провести и закрыть», а в меню наша команда потерялась во множестве других, которые мы не программировали и не создавали. Это стандартные команды 1с, они есть у форм, справочников, документов и других объектов 1с. Некоторые команды общие некоторые присущи только определенному типу объектов.
Команды могут находиться в 3 местах в конфигурации:
– команды формы (управляемой) находятся в модуле формы
– команды конкретного объекта конфигурации находятся в соответствующей ветке
– команды без привязки к конкретным объектам конфигурации – общие команды, которые находятся в ветке Общие – общие команды (кто бы мог подумать).
Как и в обычных процедурах и функциях командам 1с можно передавать значения для обработки. Значение, которое передается, указывается в соответствующем поле свойств команды:
То где будет отображаться команда указывается в поле «Группа». Например, если мы укажем, так как показано на скриншоте то в системе команда отобразиться так:
Когда я впервые столкнулся с командным интерфейсом, я долго не мог понять, почему у меня не отображается созданный мной документ в интерфейсе указанной мною подсистемы, притом что управляемые формы были написаны и права все стояли. Причиной всему была галочка «Использовать стандартные команды» с закладки «Команды». Не забывайте про нее.
Общие команды — механизм платформы, предназначенный для описания часто используемых команд в конфигурации 1С 8.3.
Общие или глобальные команды удобно использовать, если одна команда нужна многих объектам конфигурации. Например, кнопка для вывода структуры подчиненности документов, команда отображения проводок документа, отчет о изменении объекта.
В команду можно передать параметры, например, из формы какого объекта он вызывается.
Настройка и свойства общей команды в 1С
Добавить новую команду и настроить общую форму достаточно просто, рассмотрим этот процесс подробнее:
Получите 267 видеоуроков по 1С бесплатно:
- Бесплатный видео самоучитель по 1С Бухгалтерии 8.3 и 8.2;
- Самоучитель по новой версии 1С ЗУП 3.0;
- Хороший курс по 1С Управление торговлей 11.
- Группа — расположение будущей команды на интерфейсе.
- Тип параметра команды — определяет набор объектов, в котором будет отображаться будущая команда.
- Режим использования параметра — задает возможность передать в качестве параметра команды одно или несколько значений.
- Изменяет данные — если галка установлена, то при выполнение команды форма будет пересчитана с сервера.
- Модуль команды — обработчик выполнения команды, выполняется на клиенте.
Пример модуля команды:
Здесь ПараметрКоманды — объект, вызывающий команду. А в ПараметрыВыполненияКоманды структура, в которой описан Источник (вызываемая Форма), Окно (ОкноКлиентскогоПриложения), Уникальность, указывает, искать ли уже открытую форму или нет.
Группы команд 1С
Объект, позволяющий вывести команды на командный интерфейс конфигурации в отдельную группу:
Видео по общим командам от Павла Чистова:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
1с доработали адреса в формате фиас и понеслось.
После обновления на УПП 166.2 возникло несколько проблем с заполнением адресов.
1. В контрагенте при сохранении адреса выдается ошибка, когда пытаешься установить номер квартиры, а слово Квартира не выбирается..
ОбщийМодуль.УправлениеКонтактнойИнформациейСлужебный.Модуль(225)>: Ошибка при вызове метода контекста (ЗаписатьJSON)
ЗаписатьJSON(ЗаписьJSON, Значение,, "АдаптацияПолейКонтактнойИнформации", УправлениеКонтактнойИнформациейСлужебный);
по причине:
Передано значение недопустимого типа
2. В документе больничного при попытке выбрать адрес мед. заведения выдается ошибка:
: Поле объекта не обнаружено (ПанельНастроекАдреса)
ФормаРедактированияАдреса.ЭлементыФормы.ПанельНастроекАдреса.Свертка = РежимСверткиЭлементаУправления.Верх;
3. При открытии Классификатора из адресной строки физ лица:
: Тип не определен (ФормаКлиентскогоПриложения)
ТипыСвойств.Вставить("ФормаВладелец", Тип("ФормаКлиентскогоПриложения"));
Даже как-то странно. такое количество ошибок, либо они вообще ничего не тестировали, просто накатили обнову и отправили людям.
У кого нибудь есть такие проблемы? Погуглил, таких ошибок не нашел.
Даже как-то странно, что человек после 8 лет общения с 1с обновляется не протестировав изменения.
где-то в 2010 на курсах в 1с Морозов утверждал, что ут почти вся покрыта тестами, а упп - вся.
но судя по кол-ву ошибок - тесты не поддерживаются и не применяются.
(1) Не поверите, но сколько не обновлялся за 20 лет косяков глобальных никогда не было, чтобы нельзя было работать. Вот чего чего, времени на глобальные тесты у меня нет, всех изменений не протестируешь. Если только у кого вагон свободного времени.
Дедушка старый, ему все равно. УПП, судя по всему, совсем не в приоритете у 1С, несмотря на то что они собирают по 8 штук за месячный пинкод обновлений и по 60 - за годовой.
(1) да в общем-то и я действую также. Чтобы тестировать - время надо и людей. Если в ит-отделе полтора человека, то заниматься этим некому. Если что-то вылезет в критичном функционале - подправляем прямо наживую. Что характерно, уже 10 годков существуем в таком режиме и ничего. Но у нас и готовность 24 часа в сутки не нужна, оттого что база будет недоступна, скажем, час - ничего не поменяется. Свет вырубают чаще и на-дольше, чем происходят сбои в ИТ.
Общие команды — механизм платформы, предназначенный для описания часто используемых команд в конфигурации 1С 8.3.
Общие или глобальные команды удобно использовать, если одна команда нужна многих объектам конфигурации. Например, кнопка для вывода структуры подчиненности документов, команда отображения проводок документа, отчет о изменении объекта.
В команду можно передать параметры, например, из формы какого объекта он вызывается.
Настройка и свойства общей команды в 1С
Добавить новую команду и настроить общую форму достаточно просто, рассмотрим этот процесс подробнее:
- Группа — расположение будущей команды на интерфейсе.
- Тип параметра команды — определяет набор объектов, в котором будет отображаться будущая команда.
- Режим использования параметра — задает возможность передать в качестве параметра команды одно или несколько значений.
- Изменяет данные — если галка установлена, то при выполнение команды форма будет пересчитана с сервера.
- Модуль команды — обработчик выполнения команды, выполняется на клиенте.
Пример модуля команды:
Здесь ПараметрКоманды — объект, вызывающий команду. А в ПараметрыВыполненияКоманды структура, в которой описан Источник (вызываемая Форма), Окно (ОкноКлиентскогоПриложения), Уникальность, указывает, искать ли уже открытую форму или нет.
Группы команд 1С
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Объект, позволяющий вывести команды на командный интерфейс конфигурации в отдельную группу:
Видео по общим командам от Павла Чистова:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
Произвольные группы
В разделе Правила размещения глобальных команд мы говорили о том, что команды располагаются в стандартных группах и что при необходимости разработчик может расширить стандартный состав групп. Для этого используются объекты конфигурации Группа команд, расположенные в ветке Общие дерева конфигурации.
Произвольная группа команд используется для логического объединения команд, выполняющих похожие действия.
Например, создана произвольная группа команд Печать, предназначенная для объединения команд, которые формируют различные печатные формы.
Как и для других объектов конфигурации, для объекта Группа команд определены универсальные свойстваИмя, Синоним, Комментарий.
Для определения места размещения группы используется свойство Категория.
ВНИМАНИЕ!
Свойство группы Категория обязательно должно быть заполнено. Если значение для свойства не выбрано, система установит значение по умолчанию Панель навигации.
Выбранная категория определяет, где будет размещена группа, и, следовательно, команды, принадлежащие этой группе. В качестве значения может быть выбрана только одна из стандартных категорий команд.
Для группы команд Печать установлена категория Командная панель формы. Это значит, что в интерфейсе произвольная группа размещена в командной панели формы.
Давайте включим произвольную команду печати ценников по виду цен в группу Печать. Для этого в свойстве Группа нашей подчиненной команды установим произвольную группу Командная панель формы.Печать.
Теперь в форме списка и форме элемента справочника Виды цен команда печати ценников располагается уже не в группе Важное, а в группе Печать.
ПРИМЕЧАНИЕ
В командной панели формы кнопками отображаются команды из группы Важное. Команды остальных групп отображаются в виде подменю.
Для формирования представления группы в командном интерфейсе используются свойства Синоним, Отображение, Подсказка и Картинка.
Свойство Синоним содержит текст, представляющий произвольную группу в командном интерфейсе. Для синонима зададим значение «Печатные формы».
Свойство Отображение содержит вариант отображения группы команд. Для отображения оставим вариантАвто.
Свойство Подсказка содержит текст всплывающей подсказки при кратковременной задержке курсора над командой. Для подсказки зададим значение «Получение печатных форм».
Свойство Картинка содержит картинку, которая будет представлять группу в интерфейсе. Для картинки зададим (аналогично произвольной команде) значение Печать.
В результате наших настроек представление группы команд изменилось – она представлена назначенной картинкой и текстом, заданным в свойстве Синоним.
Из особенностей объекта Группа команд необходимо отметить, что для него не назначаются права, не определяется принадлежность к подсистемам и зависимость от функциональных опций. Произвольная группа будет представлена в командном интерфейсе пользователя только в том случае, когда в нем доступна хотя бы одна из команд, включенных в группу.
В противном случае группа в командный интерфейс не включается. В нашем приложении доступ к справочнику Виды цен разрешен и для роли Менеджер по продажам. Но для этой роли сброшено право Просмотр для произвольной подчиненной команды.
В результате такой настройки прав произвольная группа команд Печать для менеджера по продажам оказалась пустая, и она не представлена в командной панели формы списка справочника Виды цен.
Читайте также: