Общие интервалы открытия списка документов

28.06.10

Разработка - Работа с интерфейсом

В 7.7 в настройках был вкладыш где настраивалось как открывать журналы документов, в 8 я этого не нашол :-(

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

В плане видов характеристик "Настройки пользователя" добавляем два элемента (можно в отдельной папочке):

ЗначениеПериодаЖурналов -тип строка 300 //здесь будим хранить значение периода для открываемого журнала

ИспользоватьИнтервалВремениПриОткрытииЖурналов - булево - определяет следует ли использовать "общий" период при открытии

В справочнике "Пользователи" в форме элемента в конец двух процедур добавляем:

ПРОЦЕДУРА ДеревоНастроекНачалоВыбора ****

 

Если ЭлементыФормы.ДеревоНастроек.ТекущаяСтрока.Настройка = ПланыВидовХарактеристик.НастройкиПользователей.ЗначениеПериодаЖурналов Тогда

СтандартнаяОбработка = Ложь;
НастройкаПериода=НОВЫЙ НастройкаПериода;

Если НЕ СокрЛП(ЭлементыФормы.ДеревоНастроек.ТекущаяСтрока.Значение)="" тогда
НастройкаПериода=ЗначениеИзСтрокиВнутр(СокрЛП(ЭлементыФормы.ДеревоНастроек.ТекущаяСтрока.Значение));
КонецЕсли;

Если НастройкаПериода.Редактировать() Тогда
ЭлементыФормы.ДеревоНастроек.ТекущаяСтрока.Значение=ЗначениеВСтрокуВнутр(НастройкаПериода);
Иначе
ЭлементыФормы.ДеревоНастроек.ТекущаяСтрока.Значение="";
КонецЕсли;
КонецЕсли;

 Процедура ДеревоНастроекПриВыводеСтроки ****

 

Если ДанныеСтроки.Настройка = ПланыВидовХарактеристик.НастройкиПользователей.ЗначениеПериодаЖурналов Тогда
 Элемент.Колонки.Значение.ЭлементУправления.РедактированиеТекста=Ложь;
 КонецЕсли;

 ОБЩИЕ МОДУЛИ - Работа с диалогами - ПРОЦЕДУРА УстановитьОтборПоОрганизации ((тоже в конец): ****

 

 Мой.УстановитьИнтервалПросмотра(Форма);

Данная процедура использована потому что присутствует наверное во всех процедурах ПриОткрытии ФормСписковДокументов

Общий модуль "Мой":

 Процедура УстановитьИнтервалПросмотра(Форма) Экспорт

Если УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ИспользоватьИнтервалВремениПриОткрытииЖурналов")=Истина Тогда
Попытка
Если Найти(СокрЛП(Форма.ДокументСписок),"ДокументСписок.")>0 Тогда

СохраненнаяНастройкаПериода=СокрЛП(УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ЗначениеПериодаЖурналов"));
Если СохраненнаяНастройкаПериода="" Тогда
Сообщить("Нет сохраненной настройки периода для открытия Журналов",СтатусСообщения.Внимание);
Иначе

СП=Форма.ЭлементыФормы.ДокументСписок.СтандартныйПериод;

Если НЕ (СП.ДатаНачала=Дата(1,1,1) И
СП.ДатаОкончания=Дата(1,1,1) И
СП.ЗначениеПериода=Дата(1,1,1) И
СП.ВариантНачала=ВариантГраницыИнтервала.БезОграничения И
СП.ВариантОкончания=ВариантГраницыИнтервала.БезОграничения И
(СП.ВариантПериода=Неопределено или
СП.ВариантПериода=ВариантПериода.ПроизвольныйИнтервал)) Тогда
//Оставим индивидуальную настройку
Возврат;
КонецЕсли;

ЗначениеДляОтбора=ЗначениеИзСтрокиВнутр(СокрЛП(УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ЗначениеПериодаЖурналов")));
ПолеОтбора = Форма.ДокументСписок.Отбор.Дата;
ПолеОтбора.ВидСравнения = ВидСравнения.ИнтервалВключаяГраницы;
ПолеОтбора.ЗначениеС = ЗначениеДляОтбора.ДатаНачала;
ПолеОтбора.ЗначениеПо = ЗначениеДляОтбора.ДатаОкончания;
ПолеОтбора.Использование = Истина;
Форма.ЭлементыФормы.ДокументСписок.СтандартныйПериод.НастройкаПериода.УстановитьПериод(ЗначениеДляОтбора.ДатаНачала,ЗначениеДляОтбора.ДатаОкончания);

КонецЕсли;
КонецЕсли;
Исключение
КонецПопытки;
КонецЕсли;

КонецПроцедуры

 Теперь пользователь  может сохранить в своих настройках «свой интервал» и включать/отключать режим открытия списка в интервале.

При этом, для каждого списка (журнала) можно установить «свой» интервал, и тогда будет действовать он. Т.Е. «общий интервал» из настроек пользователя будет применяться только к тем спискам (журналам) у которых период промотра – без ограничения.

 

Делалось для "Бухгалтерия для Украины", но наверно будет работать во всех типовых от 1С

Всё.

New layer...
New layer...

См. также

Работа с интерфейсом Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    55436    17    23    

43

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Богатый редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    63824    44    59    

82

Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    19717    28    6    

44

Работа с интерфейсом Программист Стажер Платформа 1С v8.3 Бесплатно (free)

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

20.08.2024    21824    mrXoxot    44    

128

Работа с интерфейсом Программист Платформа 1С v8.3 Бесплатно (free)

Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.

27.05.2024    10934    smielka    37    

105

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    17954    1225    elcoan    53    

125

Инструментарий разработчика Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

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

3 стартмани

10.04.2023    12654    167    acces969    31    

126
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Saint 23.02.10 18:26 Сейчас в теме
Ну и зачем это нужно? :?: Открытие списка документов без ограничения по времени - это штатный и предпочтительный режим поведения платформы. Если ты для каждого списка документов будеш при открытии устанавливать период, то это создаст дополнительную нагрузку на информационную базу. А в тех случаях, когда пользователю нужен интервал по умолчанию, он может их сам себе настроить и запомнить эту настройку.
2. AnryMc 849 23.02.10 18:39 Сейчас в теме
Как писали братья Стругацкие: "Лифт должен быть расчитан на поподание в кабину самого необученного академика"

Мне зачастую трудно объяснить всем бухгалтерам, что надо настроить каждый "журнал" отдельно, а выслушивать "как они за...сь (возможны варианты) искать документы в списке за несколько лет" приходиться очень часто.
И только не надо говорить, что нужно их научить и объяснить. Во-первых - не все вменяемые и обучаемые. Во-вторых - это и в самом деле неудобно. В-третьих - что там технологично и производительно не должно "трогать" пользователя (программа создается для него и ЕГО удобства, а остальное проблемы программистов, программы, платформы, системы...)
san4o; Alav; +2 Ответить
3. Saint 23.02.10 18:59 Сейчас в теме
(2)
искать документы в списке за несколько лет" приходиться очень часто

Отборы вроде никто не отменял. У меня пользователи далеко не самые продвинутые, но и то я их заставил научиться хотя бы азам. :D
что там технологично и производительно не должно "трогать" пользователя

Думаю, пользователя это начнёт трогать, когда система начнёт уходить в аут.

Короче говоря, на мой взгляд такой функционал лишний и даже вредный - не нужно подстраивать платформу 8 под ограничения платформы 7.7. Но тут уже личное дело каждого на какие ему грабли наступать. ;)
Душелов; +1 Ответить
4. AnryMc 849 24.02.10 19:56 Сейчас в теме
(3) А чем отбор который я устанавливаю принудительно отличается от того что установит себе пользователь?
6. Saint 25.02.10 00:02 Сейчас в теме
(4) Тем, что пользователь устанавливает отбор только по необходимости, а ты их устанавливаешь принудительно и безусловно. Т.е. система ВСЕГДА будет иметь дополнительную нагрузку.
9. пользователь 03.05.10 23:11
Сообщение было скрыто модератором.
...
5. AnryMc 849 24.02.10 20:12 Сейчас в теме
Может кто поможет. У элемента формы Список Документов есть СтандартныйПериод - тип Настройка периода. Я могу передать в него сохраненную пользователем настройку, но при открытии она не срабатывает. Если закрыть и открыть форму повторно - все нормально. Наверно это связано с тем что настройки формы сохраняются ТОЛЬКО при ее закрытии. Как можно это обойти?
7. Dnki 4 06.03.10 09:52 Сейчас в теме
Я - За! Нужно программно задавать интервал. 1) Мне как пользователю приятнее видеть свой рабочий период (к началу/ концу списка). 2) Предохраняет от криворукости и порчи старых документов.
А непродвинутые пользователи сами менять не будут.
8. rustemg 21.04.10 09:37 Сейчас в теме
я тоже за.
Специально искал.
текущая неделя достаточно при 90%.
10. пользователь 03.05.10 23:12
Сообщение было скрыто модератором.
...
11. Gorr 40 07.02.14 06:47 Сейчас в теме
Однозначно - программа ради человека, а не как не иначе!)))
12. AnryMc 849 07.02.14 08:23 Сейчас в теме
(11) Gorr, Если "за", то можно поддержать "+"
13. Gorr 40 30.07.14 17:33 Сейчас в теме
(12) конечно). Скажу больше - я своих пользователей разбил на категории. При открытии журналов, в зависимости от категории используются соответствующие интервалы.
Оставьте свое сообщение