Удобный выбор периода (управляемая форма)

Программирование - Практика программирования

Удобный выбор периода для управляемого приложения 1С.

Саму идею нагло слизал с этой: //infostart.ru/public/90540/ публикации. Автор приложения молодец, ставьте плюсы и раздавайте хвалебные комменты.

Чтобы выбрать интервал дат на поле календаря, нужно зажать "Shift", выделить нужный интервал и нажать кнопку "Enter".  Для выбора конкретной даты нажать "Enter" или щелкнуть мышью 2 раза.

Есть возможность выбрать интервал из нескольких лет. Вверху формы появляется несколько кнопок с годами, например: 2012,  2013, 2014, 2015, 2016. Для быстрого выбора интервала нужно нажать сначала на 2012, потом на 2016. В результате мы выберем период с 01.01.2012 по 31.12.2016. Если два раза нажать на "2012", то результат будет интервал с 01.01.2012  по 31.12.2012

 

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

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

Копировать из обработки форму "БыстрыйВыборСтандартногоПериода" в общие формы и в объекте (управляемое приложение) вставить следущий код (ПериодС  и ПериодПо  заменить на свои даты):

 

ПолучитьФорму("ОбщаяФорма.БыстрыйВыборСтандартногоПериода");
Форма.СтандартныйПериод.ДатаНачала = Объект.ПериодС ;
Форма.СтандартныйПериод.ДатаОкончания = Объект.ПериодПо ;
Форма.Дата = Объект.ПериодС ;

РезультатВыбора = Форма.ОткрытьМодально();

Если РезультатВыбора <> Неопределено Тогда

Объект.ПериодС = РезультатВыбора.ДатаНачала;
Объект.ПериодПо = РезультатВыбора.ДатаОкончания;

КонецЕсли;

 

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

Наименование Файл Версия Размер
Удобный выбор периода (Управляемый)
.epf 12,94Kb
21.06.12
252
.epf 12,94Kb 252 Скачать

См. также

Комментарии
1. Антон (anton.fly7) 136 18.06.12 15:26 Сейчас в теме
а если форму растащить? мышкой пошире. кнопки сильно разъедутся?
2. Андрей Волин (kser87) 1312 18.06.12 15:35 Сейчас в теме
От растаскивания кнопки не разъезжаются
3. Дмитрий Елисеев (w-divin) 18.06.12 16:13 Сейчас в теме
хоть у кого-то руки дошли ))) сам юзаю основу - все хотел переделать на УФ, но руки не доходили... спс за труды )))
4. Андрей Волин (kser87) 1312 19.06.12 10:14 Сейчас в теме
5. Kоstik Matiushkin (motkot) 52 20.06.12 18:26 Сейчас в теме
Не совсем понял "Нет формы выбора стандартной настройки периода". Это о чем речь?
6. Андрей Волин (kser87) 1312 20.06.12 18:41 Сейчас в теме
Я имею в виду элемент управления "Выбор периода". В обычном приложении его еще можно создать конструктором
"Новый НастройкаПериода". В управляемом приложении этот объект тоже недоступен
7. Алексей Прилепский (IamAlexy) 493 20.06.12 19:35 Сейчас в теме
жуть жутчайшая...
на картинках просто невообразимый .здец...

в тестовой БП3 (которая была год назад) было красивее и нагляднее - и тоже отдельным открываемым окном с выбором периода.

зы: в управляемых формах правильнее делать выбор периода так чтобы не надо было открывать дополнительных окон - это позитивно сказывается на быстродействии.
имхо самый удачный выбор периода сейчас в текущей БП3 сделан в отчетах.. очень шустро и более чем наглядно
8. БИЗНЕС РЕШЕНИЯ (Para_1987) 71 20.06.12 20:15 Сейчас в теме
класс, функциональный такой выбор периода) удобно, но уж очень большое окно. Все таки буду пользоваться)
9. Kоstik Matiushkin (motkot) 52 20.06.12 21:53 Сейчас в теме
(6) kser87, а чем не подходит "Новый ДиалогРедактированияСтандартногоПериода"? Или мы о разном?
10. Андрей Волин (kser87) 1312 21.06.12 01:31 Сейчас в теме
Para_1987, Спасибо! Я считаю, что большое окно это большой плюс. Лучше видно
11. Андрей Волин (kser87) 1312 21.06.12 01:34 Сейчас в теме
IamAlexy, "выбор периода так чтобы не надо было открывать дополнительных окон" я учту ваше мнение
12. Адепт Адептов (Adeptus) 87 21.06.12 14:30 Сейчас в теме
Вау круто! Тока у меня покрасивее было. Расстояния не было между кнопочек, покомпактней бы
13. Андрей Волин (kser87) 1312 21.06.12 14:37 Сейчас в теме
(12) Adeptus, не придумал, как это сделать уменьшить расстояние на управляемой форме. Но с другой стороны, так лучше пользователям с ослабленным зрением=)
14. Андрей Волин (kser87) 1312 21.06.12 14:47 Сейчас в теме
(9) motkot, не совсем про это, но все равно спасибо. Не знал, как вызывать этот объект
15. Кондрат Иванов (Konder.Djironimo) 24.06.12 13:59 Сейчас в теме
Спасибо, удобнинько бабульки в бухгалтерии в экстазе!
16. StronG-X (Dethmond) 25.06.12 10:22 Сейчас в теме
17. Андрей Волин (kser87) 1312 25.06.12 10:27 Сейчас в теме
(15) Konder.Djironimo, По-моему для 1С-ника комплимента лучше и придумать нельзя))
18. Владимир Каракозов (karakozov) 26.06.12 08:22 Сейчас в теме
Хорошая наработочка на каждый день. Необычненько.
19. Денис (Den_D) 48 27.06.12 10:43 Сейчас в теме
Спасибо автору за труд!
По мне так большинство людей работающих за компьютером со временем страдают ухудшением зрения. Можно сказать, что это профессиональное. Думаю что при таком подходе большое информативное окно это только плюс.
20. Александр Твердиков (ATverdikov) 27.06.12 10:51 Сейчас в теме
неплохо, взял на заметку.
21. Егор Ермаков (mentos) 23 03.07.12 15:44 Сейчас в теме
молодец, Анна!
ivanitland; popipo; +2 Ответить 1
22. popipo (popipo) 03.07.12 15:47 Сейчас в теме
23. Елена Васильева (VasilevaHelen) 127 20.08.12 09:11 Сейчас в теме
Спасибо, оказалась очень полезной.
24. Создание Тьмы 18.09.12 14:50 Сейчас в теме
такие хорошие отзывы, скачаю тоже)
25. AlexShap Shap (AlexShap) 2 13.06.13 12:25 Сейчас в теме
Спасибо. Классная штука.
26. vicmos victor (vicmos) 40 03.10.13 09:21 Сейчас в теме
27. Раиса Захарова (Risoks) 17 17.11.13 16:55 Сейчас в теме
Спасибо! Полезная штука
28. Алексей Карвацкий (AVK_Alex) 4 19.05.14 11:24 Сейчас в теме
Хорошая штука.

Предложения по улучшению:
1. В форме список лет начинается с текущего года. Лучше было бы текущий год поместить в середину - можно будет быстро выбрать прошлый год...
2. Текущий год можно выделить жирным - чтобы сразу бросался в глаза.
3. Можно добавить поля ДатаС и ДатаПо - для ручного выбора периода.
4. Добавить кнопку "Выбрать" - для п.3, и для выбора периода мышкой внизу (где месяцы).
5. Кнопки год вперед / год назад сделать стрелками и перематывать по одному году.
6. Хотелось бы год тоже выбирать одним кликом. Тут конфликт с выбором нескольких лет (можно решить с помощью п.3, 4)...
7. Размер формы по умолчанию сделать таким, чтобы помещалось 3 месяца - прошлый, текущий, следующий.
8. К полугодиям и кварталам добавить подписи "полуг." и "кв." соответственно - для тех, кто на бронепоезде :)
29. Андрей Волин (kser87) 1312 23.05.14 10:42 Сейчас в теме
(28) AVK_Alex, попробую сделать.
30. Олег (olbu) 29.05.14 09:14 Сейчас в теме
на скрине выглядит очень хорошо! интересно, если не вставлять в конфигурацию, а "положить" в допобработки, возможно ли будет ее использовать?
31. Андрей Волин (kser87) 1312 29.05.14 10:42 Сейчас в теме
(30) olbu, где вы ее хотите использовать как доп обработку?
32. ECartman 09.10.14 13:14 Сейчас в теме
Обработка очень пригодилась. Прикрутил для вэб-интерфейса. Правда, пришлось исправить один глюк платформы: при создании стандартного периода
Период = Новый СтандартныйПериод(ВариантСтандартногоПериода.ПроизвольныйПериод);


у клиента вылетала ошибка
Объект не поддерживает свойство или метод "getValue"


Пришлось исправить на
Период = Новый Структура;


Все заработало.
Хотя у меня платформа 8.2.19.83 и вроде как по багрепорту у 1с-ников данный глюк в этом релизе исправлен. А оказывается ничего подобного, глюк платформы есть.

P.S. Еще одина ошибка в обработке: при выборе 2-го полугодия устанавливается период с 1.06 по 31.12, а должно с 1.07 по 31.12
33. Андрей Волин (kser87) 1312 09.10.14 23:44 Сейчас в теме
(32) ECartman, будет время-посмотрю ошибки
35. Евгений МелхОФФ (EMelihoff) 25.11.15 19:00 Сейчас в теме
В ЕРП есть форма выбор периода, как написано можно посмотреть!
36. Андрей Волин (kser87) 1312 26.11.15 10:46 Сейчас в теме
(35) EMelihoff, когда я делал эту форму ERP еще не было)
можете скриншот формы показать?
37. Евгений МелхОФФ (EMelihoff) 26.11.15 17:11 Сейчас в теме
(36) kser87, Вы знаете я наверное поспешил, эта форма выбора периода только для года. зато в 8.3.5 нашёл интересный конструктор в СП
Новый ДиалогРедактированияСтандартногоПериода()
38. Алексей Марченко (lexxxus) 19 17.06.16 14:06 Сейчас в теме
"Чтобы выбрать интервал дат на поле календаря, нужно зажать "Shift", выделить нужный интервал и нажать кнопку "Enter". "
Не работает. При нажатии Enter выбирается период по первой дате, например если выбираю с 01.06.2016 по 15.06.2016, то ко мне придет период с 01.06.2015 00:00:00 по 01.06.2016 23:59:59
Оставьте свое сообщение