Простой выбор даты

Опубликовал Алексей Сафонов (newold2) в раздел Программирование - Работа с интерфейсом

Отличие от стандартных (1с8,1с7,Парус,Win..):
1 - наглядность; 2 - скорость выбора; 3 - расширенная
функциональность

Задача настолько кажется решенной, что в infostart  я не нашел, на кого-бы сослаться.  

Может, плохо искал, поэтому заранее извиняюсь, если пропустил кого-то из Авторов. 

 

 

Итак, подробнее об отличиях.

1. Наглядность.

   - нет стрелок и стрелочек, очень "скользких" списков. Дни, месяцы и линейка из 7 лет-

     все на экране.

   - выведены номер месяца и количество дней, начала кварталов "подкрашены".

   - предусмотрены два стиля отображения: "классический" и дополнительный, можно выбирать;

2. Скорость выбора (можно регулировать -1, 2 щелчка или по кн."Ок").

   - в пределах месяца - 1 щелчок мыши;

   - в пределах года - 2 щелчка мыши;

   - в интервале 7 лет - 3 щелчка. Далее добавляется 1 щелчок на 1-3 года.

     год можно ввести и с клавиатуры.

3. Раширенный функционал.

   - выбирается не только Дата, но и Время (если необходимо);

   - двумя кнопками можно установить как текущую дату, так и любую из "стандартных" дат:

      от начала-конца недели до начала-конца года

   - двумя кнопками можно установить как текущуее время, так и любой из "стандартных"

     моментов времени: от начала-конца суток до начала-конца минуты;

   - есть кнопка перебора даты-времени: текущее, выбранное, предудщее выбранное, исходное; 

   - предусмотрена печать календаря в 4 вариантах: выбранный год, предыдущий-выбранный

      годы, выбранный-следующий годы, предыдущий-выбранный-следующий годы.  

      (это не сделано, будет потребность  - добавлю).

 

О конкретном исполнении.

   Реализовано все на двух независимых процедурах: "ВыборДаты_" и "ПечатьКалендаря_",

   и процедуре "ПриОткрытии" (типа диспетчера, работающего с реквизитами Формы

   "ДатаВходВыход","КоличествоЩелчков" и "ПечататьКалендарь"). Процедуры используют

    свои внутренние переменные; общих переменных не наблюдается. При задании реквизита

    ПечататьКалендарь>0 печать производиться без открытия формы.

 

     Добавлена (может кому понравиться) в общем не относящаяся к делу функция "Колл_Выб".

     Это универсальная функция выбора строки любой общей Коллекции.   

 

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

Наименование Файл Версия Размер
ПростойВыборДаты
.zip 19,80Kb
20.09.13
32
.zip 1.0 19,80Kb 32 Скачать

См. также

Комментарии
1. Алексей (alsoftik) 6 18.09.13 08:32 Сейчас в теме
Интересно а как и где ее можно использовать, ей можно заменить стандартную?,
или ее подключать к своим обработкам?
2. Алекс Одинэсник (Alex1Cnic) 122 18.09.13 11:22 Сейчас в теме
Да, я тоже что-то не понял как пользоваьтся ентой обработкой вместо стандартного способа?
3. Андрей (Krasnyj) 1131 18.09.13 11:38 Сейчас в теме
Интересная штука. Забрал, посмотрю, как ее применить можно :) Автору плюс.
4. script Мальчинко (script) 191 18.09.13 11:42 Сейчас в теме
Ну как использовать? У вас есть отчеты и документы в которых есть реквизит с типом "Дата" или кнопка выбора периода. Вот в этом реквизите в обработчике "ПриНачалеВыбораЗначения" или в кнопке выбора периода и переопределяете открытие стандартной формы на эту.
5. Яков Коган (Yashazz) 1987 18.09.13 12:35 Сейчас в теме
Шибко наворочено. Имхо, типовая удобнее и очевиднее.
6. Александр (allexe) 25 18.09.13 12:51 Сейчас в теме
ИМХО не удачный пример. Как техническое решение интересно, но в плане юзабилити и интерфейса стандартный лучше.
7. Александр (allexe) 25 18.09.13 12:53 Сейчас в теме
Будет полезна если часто приходится выбирать довольно "старые" даты
8. Gudvin Pupkin (Slotty) 18.09.13 13:31 Сейчас в теме
Стандартная вполне устаревает.
Прикрепленные файлы:
9. yuraskas Рупышев (yuraskas) 172 18.09.13 14:25 Сейчас в теме
(8) что это за рисунок, там ничего нет.
10. Gudvin Pupkin (Slotty) 18.09.13 14:33 Сейчас в теме
(9) Сори , что то не про грузился.
11. Адепт Адептов (Adeptus) 83 18.09.13 14:45 Сейчас в теме
Так ведь уже же создан эталон в этой области
http://infostart.ru/public/90540/
12. Алексей Сафонов (newold2) 113 18.09.13 15:12 Сейчас в теме
(5) Yashazz, Наворочено - лишний функционал? Так использовать что необходимо. Удобнее и очевиднее - может привычнее?
13. Алексей Сафонов (newold2) 113 18.09.13 15:19 Сейчас в теме
(11) Adeptus, Называть себя эталоном? Ваше - немного не то. Посмотрите хотя бы выбор года одним щелчком в интервале 7 лет, настройку количества щелчков, выбор времени, стандартных дат и времени, возможность отката и т.д. Да...
14. Сергей Марченко (MarSeN) 856 18.09.13 15:43 Сейчас в теме
в качестве идеи - проанализируйте и выделите из вашего календаря упрощенный состав - то что используется чаще всего и м/б привычнее и создайте более упрошенную форму с возможностью из нее открыть полную. к примеру как в калькуляторе виндовс сделано. Обычный - инженерный и тп.
так и у вас - обычный, для бухов...
15. Адепт Адептов (Adeptus) 83 18.09.13 16:24 Сейчас в теме
(13) newold2, Да но у меня гораздо красивее и можно выбрать кварталы и полугодия. А выбор года в интервале 7 лет. Этот нонсенс зачем такое!?
16. Ёпрст (Ёпрст) 1017 18.09.13 16:34 Сейчас в теме
(15) Посмотрел твой пример - при смене года не меняется календарь внизу окошка, + сама форма не привязана к контролу кнопки.. открытие окна поделки посерёдке экранчика.. не комильфо.
+ желательно иметь стрелочки листания месяцев внизу календарика.
17. al petrov (petrov_al) 10 18.09.13 16:52 Сейчас в теме
А мне нравится, правда цифры в глазах "рябят" наверно их слишком много
18. Алексей Сафонов (newold2) 113 18.09.13 18:59 Сейчас в теме
(14) MarSeN, Спасибо. Покумекаю...
19. Igor Erohin (postal222) 19.09.13 02:00 Сейчас в теме
Перегруженная, непонятная, рябит в глазах, без юзабилити. Это все - про эту разработку. Почему бы не посмотреть на приведенный для сравнения пример и не понять, что же не так?
20. Аркадий Кучер (Abadonna) 3661 19.09.13 04:56 Сейчас в теме
(11) Adeptus,
Так ведь уже же создан эталон в этой области

Если говорить об "эталоне", то был он создан давным-давно, еще на 7.7, и выглядит вот так:
Прикрепленные файлы:
21. Аркадий Кучер (Abadonna) 3661 19.09.13 06:12 Сейчас в теме
+/20/ А вообще, для продвинутых есть шикарный стандартный выбор периода (рис)
Для обычных форм код такой:
Процедура ВыбПериодНажатие(Элемент)
	Период=Новый СтандартныйПериод;
	Период.ДатаНачала=НачПериода;
	Период.ДатаОкончания=КонПериода;
	Диалог = Новый ДиалогРедактированияСтандартногоПериода();
	Диалог.Период = Период;
	Если Диалог.Редактировать() Тогда
		Период = Диалог.Период;
		НачПериода=Период.ДатаНачала;
		КонПериода=Период.ДатаОкончания;
	КонецЕсли;
КонецПроцедуры
...Показать Скрыть

Прикрепленные файлы:
22. Сергей Прокофьев (chuff) 19.09.13 06:47 Сейчас в теме
А у меня в 7.7 вот такой календарик.
Где-то здесь увидел для восьмерки форму, решил сделать подобную.
Ну и попутно для семерки сделал.
В семерке положение привязал к кнопке, на восьмерку сил не хватило)
Наворотов здесь меньше, но вроде хватает всего.
Плюс можно выбрать интервал - неделю, щелкнув на номере недели (рядом с календарем)
Я его во все внешние отчеты встроил - удобнее стандартного выбора периода.
Хотя для желающих на нем есть кнопка для открытия стандартного.
Прикрепленные файлы:
23. Аркадий Кучер (Abadonna) 3661 19.09.13 06:52 Сейчас в теме
(22) chuff, по сравнению с /20/, имхо, не хватает периода 9 месяцев, и практически лишний календарь внизу. Но это дело вкуса.
24. Сергей Прокофьев (chuff) 19.09.13 06:57 Сейчас в теме
(23) Abadonna,ошибаешься. В правом нижнем углу кнопочка, где можно выбрать из выпадающего списка "С начала года" и ткнуть в любой месяц. И получишь не только 9 месяцев, но и любое другое их число.
А календарь внизу как лишний? дату выбирать где?
У меня при нажатии на кнопку с именем месяца сразу выбирается интервал месяц и форма закрывается.
А при нажатии на кнопку рядом с названием месяца открывается этот месяц внизу, для выбора одной даты.
Эта форма для выбора не даты, но периода.
25. Serj (Serj1C) 461 19.09.13 07:11 Сейчас в теме
Вручную вбивать - самое то )
26. Аркадий Кучер (Abadonna) 3661 19.09.13 07:14 Сейчас в теме
(24)
дату выбирать где?

вот тут (рис.) Зато ничего лишнего на форме глаза не мозолит
Прикрепленные файлы:
27. Сергей Прокофьев (chuff) 19.09.13 07:35 Сейчас в теме
(26) Да, не мозолит. А заодно не позволяет выбрать одно- двух- трех- недельный интервал, постоянно используемый в отчетах. И кроме этого:
- для смены даты в пределах месяца надо открыть дополнительное окно, в нем календарь и уже там выбрать дату. Подозреваю, что после этого надо ещё нажать кнопку ОК ). У меня - одно нажатие на дату.
- для выбора даты в месяце, отличном от текущего, придется листать месяцы, пока не доберешься до нужного.
А стрелочки в стандартном календаре при этом перелистывании очень мелкие и неудобные, особенно если их сравнить с размером кнопок на основной форме). У меня - нажатие кнопки кнопки месяца и одиночный щелчок по дате.
В общем, кого устраивает стандартный - пользуйтесь, никто же не запрещает. Лично меня стандартные выборы периода что в 7, что в 8 - достали настолько, что сделал другое, намного удобнее, хоть на первый взгляд и непривычнее. Причем опросил пользователей - предоставил им выбор старого и нового. Подавляющее большинство выбрали новый. Остальные сказали, что им вообще пофиг)
28. Аркадий Кучер (Abadonna) 3661 19.09.13 07:45 Сейчас в теме
(27) chuff, я ж написал четко "дело вкуса".
Для буха/руководителя вполне хватает кнопок "месяц такой-то", "полугодие", "год".
А остальные и так введут, руки не отвалятся. Лично мне вообще нравится вариант из /21/.
И никаких доп. форм вообще!
Но, повторюсь, - дело вкуса.
выбрать одно- двух- трех- недельный интервал, постоянно используемый в отчетах.

В жизни мне не попадались в отчетах одно- двух- трех- недельные интервалы

P.S. А с тех, кто до сих пор на 7-ке сидит, я вообще в два раза больше беру, ибо нех ;)
29. Сергей Шубин (Gray-SV-02) 19.09.13 07:54 Сейчас в теме
ну не знаю... стандартный в 8ке ничего так себе... дело привычки, а привыкнуть можно к любому интерфейсу...
30. Сергей Прокофьев (chuff) 19.09.13 07:56 Сейчас в теме
(28) Abadonna, в том-то и дело, что не всегда хватает "месяц такой-то", "полугодие", "год".
Думаю, от профиля предприятия это тоже зависит, да и от распределения обязанностей тоже.
Но ведь дело не в этом. Что пользователям надо, то и хорошо )
А с тех, кто до сих пор на 7-ке сидит, я вообще в два раза больше беру, ибо нех ;)

Могу и согласиться, и поспорить - но это будет уже оффтоп ))
А вот насчет "дело вкуса" - спорить не буду совсем ;)
31. Сергей Прокофьев (chuff) 19.09.13 08:13 Сейчас в теме
(28)
В жизни мне не попадались в отчетах одно- двух- трех- недельные интервалы

Я же говорю - от профиля предприятия всё зависит. А ещё от изощренности руководителей по части выборки данных.
32. Адепт Адептов (Adeptus) 83 19.09.13 09:12 Сейчас в теме
(22) chuff, Вот малаца вижу живет мое дело и на 7.7 уже перенесли. Круто короче.
33. Адепт Адептов (Adeptus) 83 19.09.13 09:13 Сейчас в теме
(26) Abadonna, )))Ну тут до эталона еще далековато. Мягко говоря
34. Ёпрст (Ёпрст) 1017 19.09.13 09:17 Сейчас в теме
(32) скорее наоборот, в снеговик перетащена идея с клюшек, на 7.7 еще до тебя задолго появилосась куча поделок с выбором периода, если че.
36. Ёпрст (Ёпрст) 1017 19.09.13 09:22 Сейчас в теме
ну и т.д..
И с кнопочками выбора квартала/декады.. тоже поделок вагон.
37. Адепт Адептов (Adeptus) 83 19.09.13 09:25 Сейчас в теме
О да в том то все и дело. Было много до меня но создал лучшее. Причем не анализируя то что было до меня.
38. Ёпрст (Ёпрст) 1017 19.09.13 09:28 Сейчас в теме
39. Аркадий Кучер (Abadonna) 3661 19.09.13 09:31 Сейчас в теме
(37) Adeptus,
Было много до меня но создал лучшее

В какой-то мере мне нравятся особо наглые люди :)))
40. Адепт Адептов (Adeptus) 83 19.09.13 09:37 Сейчас в теме
(39) Abadonna, Чистый объективизм! Стал бы я делать что то если бы смог просто скачать что то лечшее. Конечно нет. Не было ничего достойного по этому и сделал
41. Аркадий Кучер (Abadonna) 3661 19.09.13 09:47 Сейчас в теме
42. Адепт Адептов (Adeptus) 83 19.09.13 09:50 Сейчас в теме
(16)(38)(41) Abadonna, Да на счет открытия формы по центру согласен.
43. Александр Гнитка (smitti911) 19.09.13 22:54 Сейчас в теме
(22)chuff,
А можно ссылочку на Ваш выбор периода, мне понравилось )
44. Алексей Семешин (Sirus Virus) 108 20.09.13 05:15 Сейчас в теме
Каждый пользуется тем, что ему нравится :) и мерится у кого "больше" тут не стоит.

Автор молодец, но по мне интерфейс не совсем эргономичный, у меня лично все в глазах рябит.
Рекомендую автору поработать над простотой :)

Например:
1) убрать номера месяцев и количество дней напротив кнопок месяцев - эта информация избыточна, т.к. человек ткнув на месяц и в поле календаря увидит максимальную дату в месяце :)
2) сделать кнопочки, которые позволят полистать года.
3) Убрать поле для ввода даты и времени, вместо них оставить текстовое поле и 1 кнопку в стиле "Ввести период" (можно с выпадающим меню: текущая дата, текущий месяц, точная дата и время и т.п.). В текстовое поле выводить информацию о периоде или о точной дате и времени если указать необходимо дату именно в таком формате.


Ну и т.д. и т.п.

45. DZENN (Dzenn) 20.09.13 14:41 Сейчас в теме
Какой смысл вместо двух-шести нажатий на цифровую клавишу тыкать мышкой по этой гммммм..... поделке? Если это и нужно, то ну ооооочень редко.
46. Алексей Сафонов (newold2) 113 20.09.13 15:25 Сейчас в теме
С благодарностью воспринял замечания (особенно конструктивные) по дизайну. Выложил новый вариант, в котором предусмотрена возможность выбора стиля отображения: "классический" или "дополнительный". Выбирать можно через реквизит Формы "СтильФормы" или кнопками на служебной панели.
47. Алексей Сафонов (newold2) 113 20.09.13 15:36 Сейчас в теме
(44) Sirus Virus, Сделал возможность выбора стиля отображения. Классический - без лишней информации
и пестроты - многое из того что и Вы сказали, и другие. А кнопок листания лет сдесь не надо. Одна из фишек - путем выбора года из линейки лет можно "листать" годы пачками, от 1 до 3.
48. Алексей Семешин (Sirus Virus) 108 20.09.13 15:44 Сейчас в теме
(45) DZENN, У каждого свои фетиши :)
Например у меня были клиенты которые любили разные менюшки и все кнопочками кнопочками.
49. Сергей Прокофьев (chuff) 20.09.13 18:24 Сейчас в теме
(43) smitti911, я не выкладывал здесь - не считал, что кому-то понадобится, для себя делал.
Но если хочешь, могу отправить. Давай адрес
50. Дмитрий Кеба (Fenicss) 21.09.13 09:15 Сейчас в теме
Идея хорошая только в конечном счете все это получилось грамозко и соответственно использовать его будет где то сложно!
denver069; +1 Ответить
51. Maxim Kolkin (the1) 277 24.09.13 10:42 Сейчас в теме
Вот если бы кто сделал выбиралку дат в стиле Вин7, это было бы дааааааа!
52. Владимир Кузнецов (mr.Kot) 24.09.13 11:45 Сейчас в теме
Соглашусь со многими, немного громоздко получилось. Такое будет отпугивать пользователя.
53. Денис Кириллов (denver069) 25.09.13 06:59 Сейчас в теме
По моему в работе с датой больше неудобств возникает при вводе времени непосредственно в поле формы.
Т.к. нет видимого разделителя вроде "-" или "Т" между датой и временем, а "рюшечки" вроде такой формы это уже баловство для женщин обожающих цветочки в splash-заставке.
54. Алексей Сафонов (newold2) 113 30.09.13 10:13 Сейчас в теме
(53) denver069, Женщины... Попробуйте использовать Маску при вводе.
55. Алексей Сафонов (newold2) 113 30.09.13 10:20 Сейчас в теме
Чтобы не было разночтений, на днях опубликую "Конструтор" диалогов выбора Даты-Времени. Желающие тогда могут дерзать.
56. Maxim Kolkin (the1) 277 09.10.13 08:28 Сейчас в теме
Или вот интересный вариант выбора периода, на JS. Можно прикрутить в поле ХТМЛ документа

http://chartjs.devexpress.com/Demos/VizGallery/#chart/rangeselectorsbehavioruserangeselectionforcalculating
57. kiruha Дронов (kiruha) 357 09.10.13 13:15 Сейчас в теме
Мне нравится - для отчетов с месяцами не мучиться
59. Lena Lesnik (lelusha) 09.02.14 17:58 Сейчас в теме
Мне тоже нравится, для семерки есть что-то подобное?