1с получить список процессов

Обновлено: 07.07.2024

Есть 2 места, которые нужно учесть при внесении изменений:

  1. Работа непосредственно в 1С:Документооборот
  2. Работа с 1С:Документооборот через бесшовную интеграцию (проверено на интеграции с ЗУП и УПП)

1. Работа в 1С:Документооборот

Для исправления списка предлагаю группировку шаблонов процессов по логике разработчиков, но с явным разделением по настройкам (назначенные для запуска по документу, произвольные и все остальные).

Добавить Новую процедуру и заменить вызов типовой процедуры ДобавитьВДеревоОсновныеВариантыСозданияПроцесса на новую процедуру

2. Для изменения вывода в рамках бесшовной интеграции необходимо внести изменения в общий модуль ОбработкаЗапросовXDTOБизнесПроцессыИЗадачи в функцию ПолучитьДеревоШаблоновБизнесПроцессов

Есть один нюанс в реализации. При большом количестве процессов бесшовная интеграция не успевал формироваться список процессов за отведенное время и по таймауту отваливался. Поэтому в данном решении будут выводиться только Произвольные (без шаблона) и Рекомендованные процессы (назначенные для документа)

Полный текст функции ПолучитьДеревоШаблоновБизнесПроцессов ниже

Специальные предложения

Electronic Software Distribution

Интеграция 1С с системой Меркурий

Алкогольная декларация

Готовые переносы данных

54-ФЗ

Управление проектом на Инфостарте

Траектория обучения 1С-разработчика

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

(1) Добрый день!
Спасибо за отзыв!

Да. Видела публикацию про выделение рекомендуемых шаблонов жирным шрифтом. Но пошла по пути наименьшего изменения типового кода.
И не стала выносить в расширение, так как при обновлении также можно получить вопросы по адаптации.

Причем в результате используется типовое разделение процессов по смыслу. Непонятно, почему 1С не довели визуализацию процессов.
За 4 года, я думала, что исправят. Но нет. Пришлось делать самим. Процессов много.

Елена, спасибо большое за такую полезную статью! Помогли сэкономить прилично времени. Обновились со старой версии (живу по принципу - лучшее враг хорошего, а тут из-за ЭДО пришлось обновляться). Пользователи кучу процессов позапускали неправильных, т.к. привыкли нажимать верхние рекомендуемые..
На релизе 2.1.28.14 ваш код работает без изменений! В 1С:ДО, можно просто у внутреннего документа в форме элемента, добавить ещё одну группу и добавить кнопку, предыдущую группу и кнопку сделать не видимой. У новой кнопки сделать команду СоздатьБизнесПроцесс, она находится в общих командах, и после этого будет старый вариант формы выбора процесса. А так спасибо большое за статью, с УПП уже долго мучаюсь.

Просмотры 1450

Загрузки 0

Рейтинг 17

Создание 24.05.21 16:00

Обновление 24.05.21 16:00

№ Публикации 1446957

Тип файла Нет файла

Операционная система Не имеет значения

Страна Россия

Вид учета Не имеет значения

Доступ к файлу Бесплатно (free)

Код открыт Да


См. также

Как настроить правильную техподдержку (helpdesk, service desk на коленке) Промо

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

24.04.2019 29678 siddy 0

Как вносить изменения в новое ЭДО от 1С в БП 3? Июнь 2021, БП 3.0.93.20

Обновились на 3.0.93.20, и все мои расширения под ЭДО перестали работать. Разберем, где вообще искать код, который выводит данные электронного документа в XML, где вмешиваться в ход этого вывода?

03.06.2021 6602 fixin 26

Диадок, модуль 1С - заполнение полей с дополнительной информацией

Некоторые контрагенты для настройки электронного обмена документами требуют заполнения специальных полей ИнфПолФХЖ1 и ИнфПолФХЖ2 дополнительной информацией.

21.05.2021 2742 _Vovik 9

13.05.2021 2641 Flover 0

Права доступа в 1С:Документооборот 2.1 Промо

В программе 1С:Документооборот ред 2.1 механизм системы прав доступа сильно изменился. С одной стороны, права доступа в данной версии стали проще и быстрее, с другой стороны - права по рабочим группам объектов теперь могут противоречить политикам доступа. Разберемся в данной статье как работает механизм прав доступа в 1с документообороте 2.1.

16.09.2016 88476 vlush78 0

Иной подход к схемам комплексных процессов (возможность пользователям в удобном формате видеть участников процесса до его запуска) в 1С: Документооборот

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

30.03.2021 2432 Capitullo 2

Перенос присоединенных файлов в документооборот при бесшовной интеграции

Сейчас присоединенные файлы, добавленные к документу, перенести в связанный документ документооборота можно только вручную. В статье приведен программный код для решения этой задачи в ERP.

26.02.2021 1493 ВикторП 21

Доступность процессов и задач по предмету всем участникам рабочей группы документа

Простой способ сделать задачи и процессы доступными всем участникам рабочей группы документа. Для этого нужно добавить дополнительный обработчик бизнес-события, который будет срабатывать по виду события "Старт процесса". Актуально, если используете комплексные процессы, и не все участники видят задачи друг друга.

15.02.2021 697 Capitullo 4

Интеграция «1С:Управление производственным предприятием» с «1С:Документооборот» Промо

В данной статье пойдет речь о возможности интеграции 1С:Управление производственным предприятием ред. 1.3 с 1С:Документооборот КОРП и о том, что может получить предприятие от этой интеграции.

18.02.2013 66105 Vladimir_Konyrev 38

Новое в 1С:Документооборот 3.0

Под новый год фирма 1С сделала нам всем подарок – вышла ознакомительная версия долгожданного 1С:Документооборот 3.0! По традиции новая версия кардинально отличается от предшественника как в плане интерфейса, так и по “начинке”. В данной статье рассмотрим самые интересные нововведения. Приступим к обзору.

11.02.2021 4855 Koder_Line 5

Сказ о том, как в одной крупной компании документооборот внедряли, или проблемы типовых обменов между КА и ДО

Приветствую всех. Сегодня пойдет речь о том, как на одной крупной компании внедряли 1С:Документооборот 2.1 в связке с КА 2.4. Вроде бы системы типовые, мы практически не добавляли ничего в них, но проблем было столько, что я решил изложить их в статье. Может, кому-то пригодится это в дальнейшем, и не придется тратить кучу времени на поиск решений.

10.11.2020 7494 maks_20 30

Запрет повторного запуска комплексных процессов типовыми средствами в 1С: Документооборот

Реализация решения изложенного в статье, исключает ошибочный (повторный) запуск комплексного процесса в 1С: Документооборот.

09.11.2020 2029 sulig 5

Блокировка повторного запуска комплексного процесса по документу в 1С: Документооборот

Доработка в 1С: Документооборот позволяет заблокировать повторный запуск комплексного процесса по шаблону для данного документа, если процесс по этому шаблону уже запущен.

02.11.2020 1353 vlad356987 14

Ограничение выбора вариантов шаблонов запуска процессов в Документообороте 2.1

Столкнулся с проблемой, что Документооборот позволяет пользователю выбрать к запуску шаблоны процессов, которые напрямую не указаны в том виде документа, для которого производится запуск процесса.

20.07.2020 2756 Maito 8

Проблемы организаций при подготовке к внедрению документооборота

Что необходимо сделать для реализации проекта по внедрению «1С:Документооборота?»Как мы говорили в предыдущей статье необходимо осознать проблему, провести классификацию проблем, определить риски и обосновать необходимость внедрения документооборота.

18.06.2020 3276 Marta_Snytkina 4

Визуализация электронной подписи в заполняемом файле MS Word в 1С:Документооборот

Произвольное размещение визуализации электронной подписи в заполняемом документе MS Word в конфигурации 1С:Документооборот.

09.04.2020 6284 Xleo777 6

Делегирование в 1С:Документооборот

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

25.02.2020 7492 Koder_Line 4

Отправка "Заявления на подключение к ЭДО ПФР" из программы "1С: Бухгалтерия предприятия, ред. 2" для СЗВ-ТД

Инструкция по отправке "Заявления на подключение к ЭДО ПФР" из программы "1С Бухгалтерия предприятия, ред. 2" для обмена сведениями об электронных трудовых книжках и отправки отчетов по форме СЗВ-ТД.

11.02.2020 29848 rusmil 9

Детектор завершения согласования для 1С: Документооборот КОРП

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

В обработке реализован способ получения списка текущих процессов при помощи команды TaskList. Запуск с получением PID реализован следующим образом: получаем таблицу активных процессов, запускаем приложение, получаем таблицу активных процессов и сравниваем ее с полученной ранее (тут используется возможность индексированной таблицы Разность(), при желании можно адаптировать для использования без 1С++), отсутствующая в первой таблице строка и есть наше запущенное приложение.

Закрытие процесса по PID или имени образа процесса реализован при помощи команды TaskKill

При выполнении функции ЗапущенныеЗадачи() без параметров - получим таблицу всех активных процессов.

Специальные предложения

Electronic Software Distribution

Интеграция 1С с системой Меркурий

Алкогольная декларация

Готовые переносы данных

54-ФЗ

Управление проектом на Инфостарте

Траектория обучения 1С-разработчика

А зачем такое извращение, простите? )

Шелл=Новый COMОбъект("WScript.Shell");
Процесс=Шелл.Exec(СтрокаЗапуска);
PID=Процесс.ProcessID;

Не говоря уже о том, что TaskList не самый удачный способ получения процессов. )

Не силен в WScript :) Искать было некогда, вот и пришлось придумывать. Есть книжка Михайлов А. 1С Предприятие 7.7-8.0 Системное программирование чета у меня ни список процессов ни запуск нотепада не работает да вы все извращенцы
никто еще не написал ВК для управления адронным коллаидером из под 1ass? (9) Можно без особых усилий переписать без использования 1С++, она там для сокращения кода. Народ! Если не секрет. Что такое - СоздатьОбъект("ИндексированнаяТаблица");
У меня в 1С77, укр. таких объектов нет. Или я что-то путаю.
Синтаксис, вроде, из 7.7. (11) Ради спортивного интереса переписал без использования 1С++ :)

Просмотры 16871

Загрузки 176

Рейтинг 1

Создание 01.04.09 11:09

Обновление 02.04.09 00:00

№ Публикации 19509

Конфигурация Конфигурации 1cv7

Операционная система Windows

Вид учета Не имеет значения

Доступ к файлу Абонемент ($m)

Код открыт Не указано


См. также

Методы для группировки данных по полю,полям в Таблице Значений на примере универсального метода списания по партиям, а также отбора строк в ТЗ по произвольному условию. Для 8.x и 7.7 Промо

Я очень часто использую группировку данных по полю и полям, как в восьмерке, так и в семерке. Это аналог запроса Итоги, но там строится дерево, а в большинстве случаев нужны "плоские данные". Да и делать запрос в большинстве случаев более накладный процесс, чем работа с ТЗ. Все достоинства такого подхода приведены на примере метода универсального списания по париям, а так же отбора строк в ТЗ по произвольному условию. Для 7.7 еще отчеты сравнения двух ТЗ. Работая с различными базами для упрощения сравнения номенклатуры, или как аналог джойнов(join), сделал сравнение двух таблиц значений по нескольким полям. Пока группировки полей должны быть уникальны. Часто приходится искать дубли, для универсального поиска есть ДублиВТзПоПолю и пример в Тест.ert.

5bcb349f0199b059581092.jpg

Здравствуйте.
Установлена 1с документооборот 8.3. Правок в конфигурацию не вносили. Все бизнес процессы настраиваются через пользовательский интерфейс.

Подскажите пожалуйста, как программно получить список задач, которые есть у документа.
Документ нахожу с помощью запроса:

Но задач нет.
Нашёл просто задачи тут

Но как связать не знаю.

fosihas

Ню.
Тебе надо найти какой БП был создан, далее список Задач которые он инициировал.

Для примера открой карточку Внетренного документа, там выводится БП и Задачи.

ВЫБРАТЬ
ЗадачаИсполнителя.БизнесПроцесс,
ЗадачаИсполнителя.Ссылка
ИЗ
Задача.ЗадачаИсполнителя КАК ЗадачаИсполнителя

Константин, здравствуйте!
Нашёл комплексный процесс, который привязан к документу.


Но комплексного процесса нет в табличной части Задача (запрос, который Вы мне отправили)

5bce99c4c2a83966737218.jpg

Есть две идеи.
1. Можно как-то через форму посмотреть запрос, который достает данные?

5bce9a3a85473628885958.jpg

2. Можно посмотреть какие объекты взаимодействуют со справочником "внутренние документы"?

fosihas

5bcec7ac3d920034944892.jpg

Не совсем.
Тебе надо понять какой БП, запускается, для данного вида внутреннего документа.
Загляни в \НСИ\Виды документов\ тут находишь "Шаблоны процессов". Если там что-то есть значит будут задачи. Если есть то реквизиту "Шаблон процессов" можно понять какой вид БП запускается.
Это для понимания что искать.
После идешь в Задачи

у задачи есть реквизит "БизнесПроцесс".

А вот БП, нужный "Внутренний документ" ищешь в Табличной части "Предмет".
Итого получится связка Задача - БП\Предмет\ - Внутренний документ

Константин, здравствуйте!
Зашёл в \НСИ\Виды документов\, нашёл нужный вид документа

Зашёл в его "Шаблоны процессов", но там пусто

Есть шаблон процессов для данного вида документа. Я так понял, документ отправляется по шаблону согласования, а не по бизнес процессу.


Пользователи

Откроется окно со списком всех пользователей информационной базы:

Пользователи

Для добавления нового пользователя нужно нажать на зеленую кнопку с плюсом. Будет открыто окно редактирования нового пользователя:

Пользователи

В поле Имя нужно ввести имя пользователя, которое будет показано при входе в программу, например: Иванов И.И.

В поле Полное имя нужно ввести полное имя пользователя. Оно будет отображаться в программе, например: Иванов Иван Иванович.

Для аутентификации средствами платформы 1С нужно чтобы был установлен флаг Аутентификация 1С:Предприятия. В этом случае при входе нужно будет ввести логин и пароль.

В полях Пароль и Подтверждение пароля нужно указать пароль пользователя.

Заполним данные пользователя:

Пользователи

Пользователи

Дело в том, что хотя бы один пользователь должен иметь административные права доступа, чтобы он мог создавать новых пользователей и задавать для них права доступа.

Роли и права доступа мы рассмотрим позднее, пока просто создадим одну роль Полные права, указав для нее максимально возможные права доступа.

ПолныеПрава

Дважды щелкнув по роли, откроем окно настроек прав доступа для данной роли:

ПолныеПрава

Установить все права

И сохраним конфигурацию базы данных.

Вернемся к настройке пользователя и на закладке Прочее установим флаг рядом с ролью Полные права в списке доступных ролей и нажмем ОК:

Доступные роли

И добавим еще одного пользователя:

Пользователь

Теперь при входе в базу нужно выбрать пользователя и ввести его пароль:

Пользователь

Идентификация пользователя не выполнена

Значит пользователя с таким именем нет в базе данных или введен неверный пароль.

Для удаления пользователя нужно выделить его в списке пользователей и нажать на кнопку с красным крестом:

Удалить пользователя

Список пользователей хранится в специальной таблице базы данных.

Показывать в списке выбора

В настройках пользователя есть флаг Показывать в списке выбора:

Показывать в списке выбора

Если данный флаг установлен, то пользователь будет доступен для выбора при входе в программу. Если снять этот флаг, то пользователя не будет в списке выбора, но можно будет ввести его имя вручную и войти под ним. Это можно использовать, чтобы скрыть администратора системы.

Например, создадим нового пользователя Администратор и снимем у него флаг Показывать в списке выбора:

Показывать в списке выбора

Теперь при входе в базу пользователь не будет в списке доступных пользователей:

Показывать в списке выбора

Но можно вручную ввести его логин и пароль и войти под ним:

Показывать в списке выбора

Защита от опасных действий

Потенциально опасными действиями считаются:

  • Загрузка внешней обработки или отчета
  • Подключение расширения
  • Обновление конфигурации
  • Выполнение команды операционной системы из внешней обработки/отчета или расширения
  • Программное добавление или удаление пользователей из внешней обработки/отчета или расширения
  • Загрузка внешней компоненты из внешней обработки/отчета или расширения
  • Использование COM-объекта из внешней обработки/отчета или расширения

Если в свойствах пользователя установлен флаг Защита от опасных действий:

Защита от опасных действий

предупреждение безопасности

Если нажать Нет, то внешняя обработка не будет открыта.

Если нажать Да, то внешняя обработка будет открыта и платформа запомнит, что данное действие было разрешено. При последующих открытиях этой же обработки предупреждения не будет. Платформа запоминает разрешение для хэша обработки. Если в дальнейшем обработка будет изменена, то при первом открытии обработки снова будет выдано предупреждение безопасности.

Активные пользователи

Активные пользователи

Будет открыт список активных пользователей:

Активные пользователи

Текущий пользователь выделен специальной пиктограммой с галочкой.

Параметры

В открывшемся окне нужно установить флажок Режим технического специалиста:

Режим технического специалиста

После этого в главном меню выбрать Функции для технического специалиста:

Функции для технического специалиста

В открывшемся окне в узле Стандартные нужно найти пункт меню Активные пользователи:

Активные пользователи

По двойному клику будет открыто окно с активными пользователями. Текущий пользователь будет выделен жирным шрифтом:

Активные пользователи

Активные пользователи
Активные пользователи

Если база клиент-серверная, то можно запустить утилиту для администрирования серверов 1С предприятие. Для этого в меню пуск нужно найти соответствующий пункт меню:

администрирование серверов 1С

В открывшемся окне нужно в списке информационных баз найти нужную базу, развернуть ее и выбрать пункт Сеансы:

Сеансы

Справа будут показаны все активные сеансы с текущей базой:

Сеансы

Если нужно просто узнать текущего пользователя, то он отображается в правом верхнем углу:

Текущий пользователь

Завершение работы пользователей

Чтобы завершить работу пользователей в 1С можно воспользоваться утилитой для администрирования серверов. Данный вариант подойдет только для клиент-серверных баз. В списке сеансов нужно выделить нужного пользователя и выбрать команду Удалить:

Завершение работы пользователей

Чтобы выгнать всех пользователей из базы нужно нажать ctrl+A, чтобы выделить всех пользователей. А потом выбрать в контекстном меню команду Удалить.

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

Завершить сеанс

Чтобы выкинуть всех пользователей из файловой базы можно завершить их процессы операционной системы. Этот вариант подойдет если все пользователи работают на одном компьютере. Нужно запустить диспетчер задач (ctrl + alt + Del), на закладке Процессы найти все процессы 1С и завершить их, выбрав в контекстном меню Снять задачу:

Снять задачу

Программная работа с пользователями

Создать нового пользователя

Управление пользователями информационной базы выполняется с помощью объекта ПользователиИнформационнойБазы.

Для добавления нового пользователя нужно вызвать метод СоздатьПользователя у данного объекта. Затем заполнить все необходимые поля и записать пользователя в базу методом Записать:

НовыйПольз = ПользователиИнформационнойБазы . СоздатьПользователя ( ) ; ЗащитаОтОпасныхДействий = Новый ОписаниеЗащитыОтОпасныхДействий ; ЗащитаОтОпасныхДействий . ПредупреждатьОбОпасныхДействиях = Истина; НовыйПольз . ЗащитаОтОпасныхДействий = ЗащитаОтОпасныхДействий ; НовыйПольз . Роли . Добавить ( Метаданные . Роли . ПолныеПрава ) ;

В результате будет добавлен новый пользователь:

пользователь

Получить всех пользователей

Всех пользователей можно получить с помощью метода ПолучитьПользователей. Данный метод вернет массив объектов типа ПользовательИнформационнойБазы:

ВсеПользователи = ПользователиИнформационнойБазы . ПолучитьПользователей ( ) ;

Поиск пользователей

Найти пользователя можно или по имени или по идентификатору. Для поиска используются методы НайтиПоИмени и НайтиПоУникальномуИдентификатору:

НайдПольз = ПользователиИнформационнойБазы . НайтиПоИмени ( "Сидоров С.С." ) ; УИДПользователя = Новый УникальныйИдентификатор ( "0c3c8e07-c36a-41ce-977a-85ee65d03a00" ) ; НайдПольз = ПользователиИнформационнойБазы . НайтиПоУникальномуИдентификатору ( УИДПользователя ) ;

Удаление пользователя

Для удаления пользователя используется метод Удалить:

НайдПольз = ПользователиИнформационнойБазы . НайтиПоИмени ( "Сидоров С.С." ) ;

Текущий пользователь

Чтобы программно получить текущего пользователя можно воспользоваться методом ТекущийПользователь:

ТекПользователь = ПользователиИнформационнойБазы . ТекущийПользователь ( ) ;

Блокировка установки сеансов

Клиент-серверный вариант

Иногда требуется на некоторое время заблокировать вход пользователей в базу. Это можно сделать с помощью механизма установки блокировки сеансов пользователей. Блокировка настраивается через утилиту администрирования серверов 1С. В списке информационных баз нужно найти нужную базу и в контекстном меню выбрать пункт Свойства:

Свойства

В поле с администратором информационной базы нужно ввести логин и пароль пользователя 1С:

администратор информационной базы

Блокировка начала сеансов включена

Начало сеанса с информационной базой запрещено

Блокируются как пользовательские сеансы, так и конфигуратор. При этом, существующие сеансы смогут продолжить работать.

При необходимости можно задать код разрешения, указав который можно войти даже при включенной блокировке. Код указывается в параметре Код разрешения:

Код разрешения

Данный код указывается в свойствах базы в параметре Дополнительные параметры запуска после ключа /UC. Чтобы открыть свойства базы нужно в списке баз выделить нужную базу и нажать кнопку Изменить:

Дополнительные параметры запуска

Теперь в данную базу можно войти даже во время блокировки.

Чтобы снять блокировку до ее окончания нужно просто снять флаг Блокировка начала сеансов включена.

Читайте также: