Что означает поле точка маршрута в рабочей области мои заявки в 1с нси
Текст запроса может содержать предопределенные данные конфигурации, такие как:
- значения перечислений;
- предопределенные данные:
- справочников;
- планов видов характеристик;
- планов счетов;
- планов видов расчетов;
- пустые ссылки;
- значения точек маршрута бизнес-процессов.
Также текст запроса может содержать значения системных перечислений, которые могут быть присвоены полям в таблицах базы данных: ВидДвиженияНакопления, ВидСчета и ВидДвиженияБухгалтерии.
Обращение в запросах к предопределенным данным конфигурации и значениям системных перечислений осуществляется с помощью литерала функционального типа:
ЗНАЧЕНИЕ(<ПредставлениеЗначения>)
Для системных перечислений <ПредставлениеЗначения> имеет вид:
<ИмяСистемногоПеречистления>.<Значение>
Допустимые имена системных перечислений приведены выше, с перечнем допустимых для каждого из них значений можно ознакомиться в его описании.
Для предопределенных данных конфигурации <ПредставлениеЗначения> имеет вид:
<ТипПредопределенногоЗначения>.<ИмяОбъектаМетаданных>.<Значение>
<ТипПредопределенногоЗначения> может быть:
- Справочник (Catalog);
- ПланВидовХарактеристик (ChartOfCharacteristicTypes);
- ПланСчетов (ChartOfAccounts);
- ПланВидовРасчета (ChartOfCalculationTypes);
- Перечисление (Enum).
В качестве <ИмяОбъектаМетаданных> указывается имя объекта метаданных, как оно задано в конфигураторе.
Для определенных в конфигурации перечислений <Значение> указывается как имя соответствующего объекта метаданных типа ЗначаниеПеречисления. Для всех остальных типов предопределенных значений <Значение> указывается как имя предопределенного элемента данных, как оно указано в конфигураторе, или ПустаяСсылка (EmptyRef) для указания пустой ссылки.
Для точек маршрутов бизнес-процессов <ПредставлениеЗначения> имеет вид:
БизнесПроцесс.<ИмяОбъектаМетаданных>.Точка.<ИмяТочкиМаршрута>.
Ниже приведены несколько фрагментов запросов, поясняющих использование предопределенных данных в запросах:
Код 1C v 8.х
еще пример:
Код 1C v 8.х
Разместил: E_Migachev Версии: | 8.x | 8.2 УП | Дата: 31.08.2010 Прочитано: 33043
Похожие FAQ
Еще в этой же категории
Значения NULL ( ЕСТЬ NULL и ЕСТЬNULL()) 48
NULL – отсутствующие значения. Не путать с нулевым значением! NULL – это не число, не равно пробелу, пустой ссылке, Неопределено. NULL – типообразующее значение, т.е. есть тип NULL и единственное значение этого типа. NULL значения появляются в 17 правил для составления оптимального ЗАПРОСа к данным базы 1С 42
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ Нарастающий итог в запросе 22
Необходимо использовать левое соединение таблицы с самой собой. ВЫБРАТЬ Обороты.Период, Обороты.Номенклатура, Обороты.Количество ПОМЕСТИТЬ ВТдвижения ИЗ РегистрНакопления.Обороты КАК Обороты ; //////////////////////////////////////////////// Полезные сведения о языке запросов 1С 8.х 22
В статье приведены полезные приемы при работе с запросами 1С v.8.2, а также сведения, которые не так хорошо известны о языке запросов. Я не стремлюсь дать полное описание языка запросов, а хочу остановиться лишь на некоторых моментах, которые для ко Оператор ПОДОБНО 18
ПОДОБНО - Оператор проверки строки на подобие шаблону. Аналог LIKE в SQL. Оператор ПОДОБНО позволяет сравнить значение выражения, указанного слева от него, со строкой шаблона, указанной справа. Значение выражения должно иметь тип строка. Если з Посмотреть все в категории Запросы
Приведем простой пример универсальной карты маршрута, отображающей ход бизнес-процесса и возможностью интерактивного открытия задачи по точке маршрута.
Так как реализовывать я собираюсь универсальную обработку то логично сразу делать ее внешней. Единственным реквизитом моей обработки будет Бизнес-Процесс (БП) с типом БизнесПроцессСсылка.
Карта маршрута это ничто иное, как графическая схема, соответственно в форму обработки кроме поля БП необходимо вставить поле графической схемы. Я это поле назову КартаМаршрута. В итоге получится что то вроде этого:
Далее в модуле формы опишем получение карты маршрута выбранного пользователем БП.
Процедура связана с кнопкой на верхней панели действий.
Теперь для активных точек маршрута (чьи задачи созданы, но не завершены) система будет подсвечивать точку красной пунктирной линией.
Далее необходимо описать интерактивное открытие формы задачи по двойному щелчку по точке маршрута. Для реализации этого опишем событие поля графической схемы "Выбор". Будем искать с помощью запроса созданные задачи выбранного БП по этой точке маршрута. Помните что по точке маршрута может быть создано несколько задач!
Сам запрос для получения списка задач вынесем в модуль обработки:
В форме по событию "Выбор" опишем получение списка задач. Если задача одна то откроем ее форму (вызовем событие "АктивизироватьИнтерактивно", при этом может открыться и не форма задачи, а например форма БП). В том случае если задач запрос вернет несколько предложим пользователю выбрать необходимую из списка.
Естественно, в конкретных случаях можно наделить работу с картой маршрута какими-нибудь специфическими возможностями для работы с БП.
Добавим в бизнес-процесс макет, типа Графическая карта.
В нем рисуем схематический процесс так, как он должен быть виден менеджеру.
Создавая карту для конкретного пользователя оставим список только те связи и задачи, про которые данный пользователь должен знать. В итоге из спрута на рисунке 1
мы получаем простенькую схемку рисунка 2,
Ключевое условие - имена элементов задач и вложенных бизнес-процессов на двух картах должны совпадать.
Заголовки элементов можете оставить такими же как на основном процессе или изменить. После этого вставляем следующий блок:
Функция СформироватьКартуМаршрута ( БизнесПроцесс , ИмяМакетаКарты )
Макет = БизнесПроцессы[БизнесПроцесс.Метаданные().Имя] . ПолучитьМакет ( ИмяМакетаКарты );
СписокТекущихТочекМаршрута = ПолучитьСписокТекущихТочекМаршрута ( БизнесПроцесс );
Для Каждого Точка Из СписокТекущихТочекМаршрута Цикл
Попытка
Макет . ЭлементыГрафическойСхемы [ Точка . Имя ]. ЦветРамки = WebЦвета . Черный ;
Макет . ЭлементыГрафическойСхемы [ Точка . Имя ]. Рамка =Новый Линия ( ТипСоединительнойЛинии . Пунктир , 2 );
Исключение
КонецПопытки;
КонецЦикла;
Возврат Макет ;
КонецФункции
Функция ПолучитьСписокТекущихТочекМаршрута ( БизнесПроцесс )
Запрос =Новый Запрос ;
Запрос . Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ЗадачиОбработки.ТочкаМаршрута
|ИЗ
| Задача.ЗадачиОбработки КАК ЗадачиОбработки
|ГДЕ
| (НЕ ЗадачиОбработки.Выполнена)
| И ЗадачиОбработки.БизнесПроцесс = &БизнесПроцесс
|
|СГРУППИРОВАТЬ ПО
| ЗадачиОбработки.ТочкаМаршрута" ;
Запрос . УстановитьПараметр ( "БизнесПроцесс" , БизнесПроцесс );
Возврат Запрос . Выполнить (). Выгрузить (). ВыгрузитьКолонку ( "ТочкаМаршрута" );
КонецФункции
Не забудьте в запросе поменять имя таблицы задач на используемую вами.
В форму, где хотим выводить маршрут вставляем объект типа ПолеГрафическойСхемы и для его обновления прописываем следующий код:
ЭлементыФормы . КартаМаршрута . УстановитьСхему ( ПроцедурыЗаявокПользователя . СформироватьКартуМаршрута ( Ссылка, "КартаДляМанагера" ));
где Ссылка - ссылка на ваш бизнес-процесс, КартаДляМанагера - имя макета маршрута, куда мы поместили упрощенную карту.
В итоге получаем на форме упрощенную карту маршрута с выделенными жирным пунктиром текущими невыполненными задачами.
Задачи тесно связаны с бизнес-процессами. При продвижении бизнес-процесса по карте маршрута в точках действия или в точках вложенного бизнес-процесса могут автоматически создаваться задачи. Каждая задача связана с бизнес-процессом и точкой маршрута:
При необходимости можно вручную создать задачу, без связи с бизнес-процессом и точкой маршрута. Или указав произвольную связь, в том числе с точками старта и завершения.
Помимо реквизитов для связи с бизнес-процессом и точкой маршрута у задач есть реквизит Выполнена типа Булево:
По умолчанию данный реквизит не отображается на форме, чтобы он появился нужно явно создать форму задачи.
Выполнено автоматически устанавливается в Истина при выполнении задачи кнопкой Выполнено или Выполнено, закрыть:
В остальном задачи похожи на справочник. Для них можно добавлять реквизиты, табличные части, настраивать нумерацию, создавать формы и т.п.
В настройках нумерации задачи есть свойство Авто префикс. Если там выбрать Номер бизнес-процесса:
То при создании задач номер бизнес-процесса будет добавляться в номер задачи. Соответственно длина номера задачи должна быть больше, чем длина номера бизнес-процесса.
В этом случае номер первой задачи по бизнес-процессу будет совпадать с номером бизнес-процесса, а в дальнейшем будет увеличиваться только вторая часть номера:
Адресация бизнес-процессов
У каждой задачи должен быть исполнитель. Для определения исполнителя используется система адресации бизнес-процессов.
Данная система включает в себя несколько элементов:
- Регистр адресации (регистр сведений)
- Параметр сеанса для определения текущего пользователя
- Реквизиты адресации
- Вспомогательные справочники
Для начала нужно создать вспомогательные справочники. Это будет 2 справочника: Пользователи и Роли пользователей:
В справочнике Пользователи будут все пользователи системы. В справочнике Роли пользователей будут храниться различные роли, которые могут принимать пользователи в рамках предприятия. Например, руководитель, бухгалтер, менеджер по продажам и т.п. Разные пользователи могут иметь одну и ту же роль, например на предприятии есть несколько менеджером по продажам.
Теперь нужно создать параметр сеанса, в котором будет храниться ссылка на текущего пользователя:
В модуле сеанса в обработчике УстановкаПараметровСеанса будем заполнять параметр сеанса. Сопоставление с пользователем информационной базы будет выполняться по наименованию. Если такого пользователя еще нет в справочнике, то будем создавать его:
Процедура УстановкаПараметровСеанса ( ТребуемыеПараметры ) ИмяПользователя = ПользователиИнформационнойБазы . ТекущийПользователь ( ) . Имя ; Пользователь = Справочники . Пользователи . НайтиПоНаименованию ( ИмяПользователя ) ; НовыйПользователь = Справочники . Пользователи . СоздатьЭлемент ( ) ; ПараметрыСеанса . ТекущийПользователь = Пользователь ;Теперь создадим регистр сведений, который будет использоваться как регистр адресации. Это будет независимый непериодический регистр сведений с двумя измерениями: Пользователь и Роль:
В данном регистре будет храниться список пользователей системы, а также их роли. Например:
Теперь нужно выполнить настройки системы адресации. Это делается на закладке Адресация в задаче:
Во-первых нужно создать реквизиты адресации.
Добавим 2 реквизита адресации: Пользователь и Роль:
В свойстве Адресация нужно выбрать регистр сведений, который используется для адресации:
В свойствах каждого реквизита адресации нужно связать реквизит с измерением регистра сведений. Связь указывается в свойстве Измерение адресации. Соответственно реквизит Пользователь нужно связать с измерением Пользователь, а реквизит Роль с измерением Роль:
В свойстве Текущий исполнитель нужно выбрать параметр сеанса, в котором хранится ссылка на текущего пользователя. В свойстве Основной реквизит адресации нужно выбрать тот реквизит адресации, который будет являться основным. Тип этого реквизита должен совпадать с типом параметра сеанса из свойства Текущий исполнитель. Именно этот реквизит адресации должен однозначно определять исполнителя.
Теперь для точки действия бизнес-процесса нужно заполнить реквизиты адресации. Это делается в свойствах точки в группе Адресация:
В конфигураторе можно выбирать только из предопределенных элементов.
Не предопределенные элементы можно заполнять в обработчике ПриСозданииЗадач у точки действия. У данного обработчика есть параметр ФормируемыеЗадачи, который содержит в себе массив объектов созданных задач.
Например, добавим у бизнес-процесса реквизит Исполнитель типа СправочникСсылка.Пользователи:
В обработчик ПриСозданииЗадач у всех точек действия бизнес-процесса добавим следующий код:
Читайте также: