gifts2017

Рабочий стол администратора/программиста на управляемой форме

Опубликовал Владимир Литвиненко (VladimirL) в раздел Обработки - Универсальные обработки

Рабочий стол администратора 1С позволяет:

- Производить быструю навигацию по объектам конфигурации
- Открывать любую форму, определенную для объекта
- Подключать произвольное количество каталогов с внешними обработками
- Производить быстрый поиск среди объектов конфигурации и подключенных внешних обработок
- Запускать систему 1С от имени другого пользователя с временной заменой пароля или без
- Открывать универсальный динамический список для выбранного объекта конфигурации
- Добавлять часто используемые объекты в Избранное, видеть и повторять последние совершенные действия через Историю.

Обработка совместима с "Такси" без модальных окон и имеет поддержку английского языка.

 

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

 


Навигация по объектам конфигурации

 

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

При выборе класса становится видимой таблица, содержащая все относящиеся к нему объекты базы данных. Каждый объект представлен в таблице его именем и синонимом. По двойному клику на объекте открывается его основная форма списка. Для констант предусмотрена специальная форма редактирования:

 

 

 

 

 

 

Открытие произвольной формы

 

В процессе разработки бывает необходимо открывать произвольную форму, заданную для объекта конфигурации. Это можно сделать из контекстного меню таблицы объектов выбрав команду "Открыть произвольную форму".

 


Избранное

 

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

Из списка избранного также можно открывать произвольную форму объекта или его основную форму списка (по двойному клику):

 


 

 

 

 

История и список недавно выбранных объектов

 

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

Также список недавно использованных объектов, относящихся к выбранному классу, помещается в панель "Недавние", это что-то среднее между избранным и историей:

 


 

 

 


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


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

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

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

 

 


 

 

 

 

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

 

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

Поиск не только регистронезависимый, но и нечувствительный к раскладке клавиатуры. Вы можете искать справочник "Организации" не только набрав это слово, но и напечатав "jhufybpfw". Это экономит не столько время, сколько ценные нервные клетки :)

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

 

 

 

 

 


Запуск 1С от имени другого пользователя

 

 

Идея подсмотрена вот в этой обработке  http://infostart.ru/public/237192/, подходящей только для толстого клиента. Постарался сделать интерфейс более дружественным и реализовать его на управляемой форме.

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

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

 

 

 

 

 


Универсальный динамический список

 

Универсальный динамический список позволяет формировать форму списка для любого объекта конфигурации со всеми стандартными командами формы списка управляемой формы. Позволяет выбирать для просмотра любые реквизиты основной таблицы объекта. Порядок и состав отображаемых реквизитов можно определить на вкладке "Выбранные поля". В "Такси" и обычном приложении вкладка "Отбор" бесполезна, но в управляемом приложении 8.2 она позволяет проводить отбор по реквизитам табличных частей.

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

 

 


 

 

 

 

Настройки

 

Наверное никто не любит возиться с настройками :) Менять их вовсе не обязательно, но они могут быть полезны.

В настройках можно указать необходимость менять заголовок основного окна 1С при запуске рабочего стола, скрыть панели "Избранное", "История", "Недавние", если нужно сэкономить место на экране. Флаг "Спрашивать перед закрытием" может спасти от случайного нажатия клавиши Esc и закрытия рабочего стола.

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

 

 

 

 

 

 

Как использовать обработку в качестве рабочего стола в 1С?


Для использования в режиме рабочего стола обработку нужно включить в состав конфигурации и затем прописать программно ее автозапуск. В управляемом приложении можно просто вынести форму обработки в область стандартного рабочего стола (в этом случае копка "Закрыть" рядом со строкой поиска перестанет работать).

 

 

 

Скачать файлы

Наименование Файл Версия Размер
AdministratorsWorkspace.epf 460
.epf 37,74Kb
10.12.13
460
.epf 2 37,74Kb Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение
Комментарии
1. Алексей Бочков (Aleksey.Bochkov) 10.12.13 11:27
(0) Обработка однозначно полезная.
Мелкое замечание - двуязычность сделана неудачно.
Все-таки лучше использовать типовые средства для локализации строк (НСтр) и интерфейсов (синонимы на разных языках).
Сейчас открываешь обработку в английской конфигурации - а там каша в интерфейсе.

Если не секрет - почему код на английском? :)
2. Владимир Литвиненко (VladimirL) 10.12.13 13:05
(1)
Все-таки лучше использовать типовые средства для локализации строк (НСтр) и интерфейсов

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

Сейчас открываешь обработку в английской конфигурации - а там каша в интерфейсе.

Уточните пожалуйста, в чем именно каша? Такого быть не должно, проверял на нескольких разных конфигурациях и на разных версиях платформы.

Если не секрет - почему код на английском?

Честное слово, я свято чту традиции "низкого порога вхождения" в программирование на 1С и для бухгалтеров всегда пишу на русском :) Но 1С вроде бы начинает заявлять о себе, как о международном решении. Может стоит хотя бы начать тренироваться писать код, понятный людям, живущим за пределами РФ и Узбекистана? :) В чем была бы ценность Java или C++ если бы весь код для них был написан на украинском?


Спасибо за замечания, а то смотрю люди качают, а пожеланий по доработке не высказывают.
3. Алексей Бочков (Aleksey.Bochkov) 10.12.13 13:31
4. Владимир Литвиненко (VladimirL) 10.12.13 15:54
(3)
Еще раз спасибо, что начали копать в этом направлении. Исправил и загрузил новый файл.
Еще добавил иногда нужную возможность задавать ключи командной строки при запуске 1С:Предприятия от имени пользователя (см. картинку)
Прикрепленные файлы:
5. rasswet (rasswet) 11.12.13 08:59
благодарю! мощная вещь! планирую использовать особенно для поиска. Многие отчеты,коих уже под сотню в конфигураторе и в синониме называются по разному, пока найдешь-замучаешься, а тут удобно ищет и в синониме и и так. респект!
6. rasswet (rasswet) 11.12.13 09:02
для внешних файлов можно выводить отдельным столбцом время изменения? сделать сортировку по этом времени.
RobCom; VladimirL; +2 Ответить
7. Владимир Литвиненко (VladimirL) 11.12.13 09:12
(5) Пользователь для запуска на третьей вкладке также ищется по имени и по полному имени. Удобно когда известно только имя, фамилия или отчество. Забыл отметить это в описании.
для внешних файлов можно выводить отдельным столбцом время изменения? сделать сортировку по этом времени

Учту при доработке. Сортировки по времени изменения уже самому не хватает.
8. Сергей Соколов (SYSokolov) 11.12.13 10:55
Отличный продукт. Еще бы возможность комментарии дописывать к подключенным внешним файлам и папкам, т.к. иногда одного имени файла недостаточно
9. Владимир Литвиненко (VladimirL) 11.12.13 11:21
(8)
Еще бы возможность комментарии дописывать к подключенным внешним файлам и папкам

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

Можно сохранять комментарии к файлам в хранилище только если они были изменены, а в качестве ключа использовать полный путь к файлу. По идее это не превратит хранилище в мусорку, но проверку сохраненного значения придется все равно делать для каждого файла из списка. Это может заметно тормозить обновление списка файлов, особенно когда их несколько сотен.
10. Ruslan (rus128) 11.12.13 15:29
(9) а в текстовом csv-файле (по аналогии с descript.ion) в каждой папке? Имя файла - ключ, за ним через ";" - комментарий.
11. Владимир Литвиненко (VladimirL) 11.12.13 17:15
(10) Это вариант. Достаточно даже одного файла в корне, чтобы не захламлять лишними файлами каталоги. Еще можно в сохраняемом реквизите формы (списке значений) держать соответствие полного пути к файлу (значения) комментарию (представлению). И удалять элементы из реквизита-списка, если при обновлении списка файлов не обнаружен файл с сохраненным путем. Оба способа позволят хранить комментарий не вызывая сильных тормозов при обновлении списка.
12. Марат Настоящий (rayastar) 11.12.13 20:02
очень простая и функциональная вещь. давно просилась. +
13. Денис (Den_D) 12.12.13 12:22
Если бы было можно я бы больше плюсов поставил!
14. Владимир Зеленов (zelevova) 12.12.13 14:33
Круто. Жалко что только на управляемых формах. Есть еще в арсенале несколько старых конфигураций.
Спасибо.
15. Юрий Муллабакиев (mulla1979) 13.12.13 14:45
Отличная разработка! Респект автору!!!
16. Евгений (Avatar) 16.12.13 02:32
17. Артем Гусаров (Flashback1979SE) 16.12.13 09:01
18. Dima Dima (bayce) 19.12.13 01:35
А на сколько это правильно запускать что либо от имени другого пользователя?
Не уменьшает ли это доверие пользователей к системе???
19. Дмитрий Иванов (ikekoval) 19.12.13 09:42
(18) bayce, Имея права администратора ты и так можешь всегда запустить приложение от имени любого пользователя, просто тут это автоматизированно.
Обработка прекрасна! Выкачал бы ее на все sm, если бы работал на УФ =(
20. Dima Dima (bayce) 19.12.13 12:41
добрый день!
Запуская приложения от имени любого пользователя имея права администратора, ты же должен сбрасывать пароли, и пользователи поймут, что кто то заходил под их именем.
Здесь же на сколько я понял ты пароль не сбрасываешь?
21. Дамир Закиров (Dzenn) 20.12.13 13:36
Шикарная вещь, спасибо. Я бы за такую денег брал, рублей 100 хотя бы
22. Владимир Литвиненко (VladimirL) 20.12.13 16:53
(21) На Инфостарте в свободном доступе есть и более полезные для повседневной работы вещи. Если каждый начнет требовать копейку за мелкую разработку, то мы больше потеряем, чем приобретем. Гораздо важнее отзывы, помогающие найти и устранить ошибки.
23. Дамир Закиров (Dzenn) 20.12.13 16:59
(22) VladimirL, другими словами, она очень полезная и приятная)
24. Vladimir Иванов (brunet) 20.12.13 17:01
Спасибо. Очень удобно использовать в управляемых формах.
25. Алексей Белоусов (AllexSoft) 20.12.13 17:11
Спасибо! Круто... за гифки в статье особое спасибо
26. юрий гулидов (gull22) 25.12.13 18:11
Перешел на УФ, даже не надеялся найти нечто подобное. Огромное спасибо автору.
27. юрий гулидов (gull22) 25.12.13 18:32
Вопрос. Заполнил закладку "Внешние файлы" по каталогам, часть внешних файлов удалил за ненадобностью через кнопку "Удалить", в настройках поставил галку для кнопки "Обновить". Нажал ее и вернул удаленные внешние файлы. Предлагаю подумать о сохранении списка на этой закладке при повторных открытиях Вашей обработки.
28. Владимир Литвиненко (VladimirL) 26.12.13 02:31
(27) Надо будет подумать. Вкладка "Внешние файлы" предусматривалась как быстрый аналог команды "Файл -> Открыть" и сейчас предполагает работу с каталогами, в которых находятся только файлы-инструменты для повседневной работы. Если сделать возможность убирать из списка файлы так, чтобы при обновлении списка они не добавлялись снова, то придется предусматривать и функцию возврата этих файлов в список.
29. юрий гулидов (gull22) 26.12.13 11:45
Как говорится, гулять так гулять!
В БП 3.0 в динамическом списке при выборе документов нельзя установить видимость поля = Комментарий. Желательно это поле видеть.
Если будете развивать свой проект хотелось бы видеть не только документ но и его движения (как это реализовано http://infostart.ru/public/15317/)
Успехов в работы для нашего счастья :)
30. Владимир Литвиненко (VladimirL) 26.12.13 13:04
(29) Значит поле "Комментарий" - это строка неограниченной длины.

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

Метод кстати очень интересный и описан здесь: http://infostart.ru/public/237017/. К сожалению этот метод не позволяет устанавливать отборы при работе в обычном интерфейсе и интерфейсе "Такси" на 8.3. А комментарий видеть очень хочется, в этом Вы правы :) Поэтому при доработке либо придется отказаться от отборов по реквизитам ТЧ, либо дать возможность пользователю выбирать, хочет он видеть реквизиты неограниченной длины, либо проводить такие отборы.


Спасибо за предложения по развитию обработки. Надеюсь, что в ближайшие дни появится на это время :)
31. GeorgPolymer GP (dufrein) 15.01.14 16:52
Огромное спасибо, ценная обработка
33. GeorgPolymer GP (dufrein) 16.01.14 14:52
Спасибо, статья оформлена на ура
34. Руслан Ибрагимов (break) 17.01.14 11:04
здоровская, понравилась!
35. Руслан Ибрагимов (break) 17.01.14 11:37
только не хватает отображения отчетов и обработок по справочнику "Внешние отчеты и обработки"
36. GeorgPolymer GP (dufrein) 17.01.14 15:43
Для УПП 1.3 не подходит, пытается открыться, затем ничего не происходит(
37. Руслан Климачев (krv2k) 06.02.14 23:41
(30) VladimirL,
Скрытие поля "комментарий" в данный момент - техническая необходимость. Дело в том, что этот универсальный список изначально предназначался только для того, чтобы иметь возможность проводить отборы по реквизитам табличных частей. Для проведения отборов по реквизитам табличных частей в запросе динамического списка приходится проводить группировку по реквизитам основной таблицы, а группировка по полям неограниченной длины невозможна.

Чтобы была возможность группировать по комментарию, в самом запросе приведите его к конечной длине, например:
ПОДСТРОКА(Документ.Комментарий, 1, 1000)


К сожалению этот метод не позволяет устанавливать отборы при работе в обычном интерфейсе и интерфейсе "Такси" на 8.3.

В 8.3 отбор по ТЧ встроен в платформу, ничего дописывать не нужно.
38. Тарас Курдельчук (softgarant) 10.04.14 20:19
Кто то что то похожее под обычные формы видел?
40. mikhailovaew (mikhailovaew) 05.05.14 14:00
запомню публикацию на будущее) надеюсь, автор не планирует забирать обработку из бесплатного доступа
41. Геннадий Зимин (kenza) 14.01.15 13:36
После обновления версии платформы до 8.3.5 стала зависать намертво при попытке входа под другим пользователем. До этого работала как часы. Не подскажете в чем может быть проблема? Управляемые формы, конфигурация не типовая.
42. Геннадий Зимин (kenza) 20.01.15 10:52
Вопрос, снят. По всей видимости проблема в самой базе ( Буду делать тестирование и исправление, может поможет
43. Альберт Кадымов (sword444) 08.02.15 12:11
Автор спасибо за инструмент