bdd2

[Расширение] Стартовые страницы. Автозапуск форм при старте 1С. (8.3.9+, без доработки конфигурации)

Опубликовал Артем Бычков (Artem-B) в раздел Программирование - Инструментарий

Уверен, что в большинстве случаев список справочников, отчетов, обработок (объектов 1С в целом), к которому обращаются пользователи после запуска конфигурации 1С, раз от раза меняется не сильно. Так почему бы немного не упростить процесс открытия часто используемых форм? Данное расширение позволяет настроить автоматическое открытие различных форм объектов сразу после запуска 1С. Список форм настраивается индивидуально для каждого пользователя. Работает на платформе 8.3.9, без доработки конфигурации.

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

"Стартовые страницы" будут полезны пользователям:

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

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

а также разработчикам:

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

Расширение предназначено для автоматического открытия управляемых форм:

а) форм списков (выбора): справочников, документов, журналов документов, планов счетов, регистров;

б) форм отчетов и обработок.

Расширение универсальное и не требует наличия подсистемы БСП в конфигурации. Будет работать даже на пустой конфигурации.

Подключение и настройка:

1. В режиме предприятия подключаем расширение через меню "Все функции" - "Стандартные" - "Управление расширениями конфигурации"

2. Запускаем форму настройки расширения: "Все функции" - "Обработки" - "Настройки расширения "Стартовые страницы"". 

Подбирать формы можно как в автоматическом режиме (основная форма списка, отчета или обработки при выборе объекта метаданных), так и в ручном (подбор формы из перечня всех форм конкретного объекта). По окончании настройки рекомендуется проверить открытие подобранных форм по кнопке "Проверить все формы".

Список автоматически открытых окон после перезапуска:

Тестирование расширения проводилось в тонком и толстом клиенте.

Планы по развитию: настроить передачу преднастроенных параметров в открываемые формы (позволит открывать формы элементов, справочников, документов и т.д.)

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

Наименование Файл Версия Размер
Расширение "Стартовые страницы"
.cfe 28,23Kb
03.10.16
43
.cfe 1.0.0 28,23Kb 43 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Капитан Немо (capitan) 524 03.10.16 11:35 Сейчас в теме
Идея хорошая, но прямо суперской она станет - если при закрытии запоминать открытые формы и их же и открывать.
корум; ybatiaev; 7OH; DrAku1a; CSiER; Artem-B; +6 Ответить 2
2. Артем Бычков (Artem-B) 57 03.10.16 11:53 Сейчас в теме
(1) capitan, была идея сохранять список всех открытых форм при нажатии на кнопку.
Спасибо, попробую нечто подобное реализовать в будущем, пока не знаю на сколько эта задумка технически сложна.
3. Василий Тёркин (1С_Мастер) 47 03.10.16 12:27 Сейчас в теме
(1) capitan,
Я реализовывал такую возможность. Не прижилось. Обычно пользователю при входе в базу нужно три-четыре часто используемых формы, а не все пятьдесят документов, которые он открыл в прошлом сеансе и, конечно, не стал закрывать при выходе.
4. Капитан Немо (capitan) 524 03.10.16 13:50 Сейчас в теме
(3) 1С_Мастер, фз у меня как раз просили сделать так.
Но может они имели в виду как раз определенный набор, бухи темные люди.
5. Капитан Немо (capitan) 524 03.10.16 13:50 Сейчас в теме
А почему только в 8.3.9, что за ограничение ?
Я к тому, почему на 8.3.8 не сделать ?
6. Артем Бычков (Artem-B) 57 03.10.16 14:00 Сейчас в теме
(5) capitan, открытие форм выполняется при начале работы системы в модуле управляемого приложения. Возможность переопределять данный модуль с помощью расширения появилась только в версии 8.3.9. В версии 8.3.9 можно переопределить практически любой модуль (в отличие от предыдущих версий платформы). Подробнее в Зазеркалье: http://v8.1c.ru/o7/201603module/index.htm
7. Дмитрий Жиляков (Zhilyakovdr) 76 05.10.16 10:27 Сейчас в теме
(6) Artem-B, В платформах до 8.3.9 можно также использовать расширения, но вынести код в форму рабочего стола.
У меня так автоматическая загрузка документов через директ банк работает, бухи на работу приходят, а уже все разнесено))))
корум; ybatiaev; mrXoxot; +3 Ответить 1
8. vasek (iliabvf) 05.10.16 12:38 Сейчас в теме
Делал тоже сохранение открытых окон и восстановление при открытии через ХранилищеОбщихНастроек:

&AtServer
Procedure SaveURLS(URLSArray) Export
	CommonSettingsStorage.Save("OpenedWindows", , URLSArray, , SessionParameters.CurrentUser.UUID());
EndProcedure

&AtServer
Function GetURLS() Export
	URLSArray = CommonSettingsStorage.Load("OpenedWindows", , , SessionParameters.CurrentUser.UUID());
	If Not ValueIsFilled(URLSArray) Then
		URLSArray = New Array;
	EndIf;
	Return URLSArray;
EndFunction

...Показать Скрыть


Ну и при старте и закрытии:
Procedure OnStart()
	URLSArray = GetURLS();
	For Each CurURL In URLSArray Do
		If CurURL <> "" Then
			Try
				GotoURL(CurURL);
			Except
				
			EndTry;
		EndIf;
		
	EndDo;
	
EndProcedure

Procedure BeforeExit(Cancel)
	
	URLSArray = New Array;
	For Each CurWindows In GetWindows() Do
		If NOT CurWindows.IsMain AND NOT CurWindows.StartPage Then
			URLSArray.Add(CurWindows.GetURL());
		EndIf;
	Enddo;
	SaveURLS(URLSArray);
	
EndProcedure

...Показать Скрыть
ybatiaev; Artem-B; +2 Ответить 1
9. Артем Бычков (Artem-B) 57 11.10.16 13:09 Сейчас в теме
(7) Да, для расширений до версии 8.3.9 - это единственный выход из ситуации )
Но для 8.3.9+ лучше использовать модуль управляемого приложения, вариант более универсальный и более правильный с точки зрения назначения расширения.
10. Артем Бычков (Artem-B) 57 11.10.16 14:52 Сейчас в теме
(8) iliabvf, Спасибо. Если не против, добавлю функционал в расширение со ссылкой на автора.
11. Дмитрий Жиляков (Zhilyakovdr) 76 14.10.16 10:14 Сейчас в теме
(9) Artem-B, Мне кажется пока рановато внедрять на боевых серверах 8.3.9..... надо подождать пару релизов во избежании нервных срывов)))) но это моё субъективное мнение....
п.с. Жду с нетерпением перехода на 8.3.9, может наконец то исчезнет ад при обновлении типовых конфигураций.
12. Erne100 (Erne100) 205 23.10.16 00:15 Сейчас в теме
Ваша проверка форм может давать ошибку, например в типовых конфигурациях для отчетов часто используется общая форма, а у неё другое имя.
В своей обработке я использовал "АктивноеОкно()"
Кстати: Проверка окон открытием кажется не безопасной идеей .
Вообще, ручной подбор не безопасен. А вдруг пользователь выберет служебную форму которая изменяет что-нибудь?
13. Александр Журавлев (apostal86) 171 18.11.16 09:00 Сейчас в теме
Скачал, авось может пригодится - вероятность высокая.
14. Артем Бычков (Artem-B) 57 22.11.16 12:48 Сейчас в теме
(12) Erne100, Спасибо за вопросы.

-Общая форма как форма отчета: Если для отчета используется общая форма, то просто открываю основную форму отчета. 90% случаев данная логика покроет.

-Безопасность: Ручной (расширенный) режим предназначен в первую очередь для программистов. Вероятность того, что пользователь в ручном режиме откроет служебную форму, которая так или иначе исказит данные, близка к нулю. Гораздо вероятнее, что данные в базе исказятся, например, из-за поломки жесткого диска или по причине запуска внешней обработки. Поэтому драматизировать не стоит.