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

Опубликовал Алексей Сафонов (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) 119 18.09.13 11:22 Сейчас в теме
Да, я тоже что-то не понял как пользоваьтся ентой обработкой вместо стандартного способа?
3. Андрей (Krasnyj) 1128 18.09.13 11:38 Сейчас в теме
Интересная штука. Забрал, посмотрю, как ее применить можно :) Автору плюс.
4. script Мальчинко (script) 184 18.09.13 11:42 Сейчас в теме
Ну как использовать? У вас есть отчеты и документы в которых есть реквизит с типом "Дата" или кнопка выбора периода. Вот в этом реквизите в обработчике "ПриНачалеВыбораЗначения" или в кнопке выбора периода и переопределяете открытие стандартной формы на эту.
5. Яков Коган (Yashazz) 1959 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) 82 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) 857 18.09.13 15:43 Сейчас в теме
в качестве идеи - проанализируйте и выделите из вашего календаря упрощенный состав - то что используется чаще всего и м/б привычнее и создайте более упрошенную форму с возможностью из нее открыть полную. к примеру как в калькуляторе виндовс сделано. Обычный - инженерный и тп.
так и у вас - обычный, для бухов...
15. Адепт Адептов (Adeptus) 82 18.09.13 16:24 Сейчас в теме
(13) newold2, Да но у меня гораздо красивее и можно выбрать кварталы и полугодия. А выбор года в интервале 7 лет. Этот нонсенс зачем такое!?
16. Ёпрст (Ёпрст) 1012 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) 3653 19.09.13 04:56 Сейчас в теме
(11) Adeptus,
Так ведь уже же создан эталон в этой области

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

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

вот тут (рис.) Зато ничего лишнего на форме глаза не мозолит
Прикрепленные файлы:
27. Сергей Прокофьев (chuff) 19.09.13 07:35 Сейчас в теме
(26) Да, не мозолит. А заодно не позволяет выбрать одно- двух- трех- недельный интервал, постоянно используемый в отчетах. И кроме этого:
- для смены даты в пределах месяца надо открыть дополнительное окно, в нем календарь и уже там выбрать дату. Подозреваю, что после этого надо ещё нажать кнопку ОК ). У меня - одно нажатие на дату.
- для выбора даты в месяце, отличном от текущего, придется листать месяцы, пока не доберешься до нужного.
А стрелочки в стандартном календаре при этом перелистывании очень мелкие и неудобные, особенно если их сравнить с размером кнопок на основной форме). У меня - нажатие кнопки кнопки месяца и одиночный щелчок по дате.
В общем, кого устраивает стандартный - пользуйтесь, никто же не запрещает. Лично меня стандартные выборы периода что в 7, что в 8 - достали настолько, что сделал другое, намного удобнее, хоть на первый взгляд и непривычнее. Причем опросил пользователей - предоставил им выбор старого и нового. Подавляющее большинство выбрали новый. Остальные сказали, что им вообще пофиг)
28. Аркадий Кучер (Abadonna) 3653 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) 82 19.09.13 09:12 Сейчас в теме
(22) chuff, Вот малаца вижу живет мое дело и на 7.7 уже перенесли. Круто короче.
33. Адепт Адептов (Adeptus) 82 19.09.13 09:13 Сейчас в теме
(26) Abadonna, )))Ну тут до эталона еще далековато. Мягко говоря
34. Ёпрст (Ёпрст) 1012 19.09.13 09:17 Сейчас в теме
(32) скорее наоборот, в снеговик перетащена идея с клюшек, на 7.7 еще до тебя задолго появилосась куча поделок с выбором периода, если че.
36. Ёпрст (Ёпрст) 1012 19.09.13 09:22 Сейчас в теме
ну и т.д..
И с кнопочками выбора квартала/декады.. тоже поделок вагон.
37. Адепт Адептов (Adeptus) 82 19.09.13 09:25 Сейчас в теме
О да в том то все и дело. Было много до меня но создал лучшее. Причем не анализируя то что было до меня.
38. Ёпрст (Ёпрст) 1012 19.09.13 09:28 Сейчас в теме
39. Аркадий Кучер (Abadonna) 3653 19.09.13 09:31 Сейчас в теме
(37) Adeptus,
Было много до меня но создал лучшее

В какой-то мере мне нравятся особо наглые люди :)))
40. Адепт Адептов (Adeptus) 82 19.09.13 09:37 Сейчас в теме
(39) Abadonna, Чистый объективизм! Стал бы я делать что то если бы смог просто скачать что то лечшее. Конечно нет. Не было ничего достойного по этому и сделал
41. Аркадий Кучер (Abadonna) 3653 19.09.13 09:47 Сейчас в теме
42. Адепт Адептов (Adeptus) 82 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) 356 09.10.13 13:15 Сейчас в теме
Мне нравится - для отчетов с месяцами не мучиться
59. Lena Lesnik (lelusha) 09.02.14 17:58 Сейчас в теме
Мне тоже нравится, для семерки есть что-то подобное?