Компонент ввода диапазона дат (постановка)
SYSDBA (обсуждение | вклад) |
SYSDBA (обсуждение | вклад) |
||
| Строка 3: | Строка 3: | ||
http://gsbelarus.com/gs/images/gs/2008/periodedit_1.png | http://gsbelarus.com/gs/images/gs/2008/periodedit_1.png | ||
| − | Компонент должен представлять собой поле ввода [[TEdit]] справа от которого | + | Компонент должен представлять собой поле ввода [[TEdit]] справа от которого расположена кнопка для вызова выпадающего окна. |
==== Ввод периода с помощью мыши ==== | ==== Ввод периода с помощью мыши ==== | ||
| − | Диапазон дат можно указать мышью в | + | Диапазон дат можно указать мышью в выпадающем окне следующими способами: |
http://gsbelarus.com/gs/images/gs/2008/periodedit_2.png | http://gsbelarus.com/gs/images/gs/2008/periodedit_2.png | ||
| − | В | + | Выпадающее окно разделено по вертикали на две части. В левой находится список выбора режима указания периода. В зависимости от режима справа располагается: |
| − | + | * '''Год.''' Календарь для выбора года. | |
| + | * '''Квартал.''' Календарь для выбора года и квартала. | ||
| + | * '''Месяц.''' Календарь для выбора года и месяца. | ||
| + | * '''Неделя.''' Календарь для выбора года, месяца и недели. | ||
| + | * '''День.''' Календарь для выбора года. месяца, дня. | ||
| + | * '''Произвольный.''' Два календаря для выбора первого и последнего дня периода. | ||
| + | * '''Шорт-кат.''' Список доступных шорт-катов. | ||
| + | * '''История.''' Несколько последних периодов, выбранных пользователем. | ||
| − | + | После выбора периода окно закрывается. Выпадающее окно можно закрыть без выбора периода клавишей Esc, либо кликнув мышью за его пределами. | |
| − | + | ||
| − | + | ||
==== Ввод периода с помощью клавиатуры ==== | ==== Ввод периода с помощью клавиатуры ==== | ||
Версия 11:22, 13 августа 2010
В большинстве случаев при построении отчета или фильтрации массива документов пользователь указывает период дат. Сейчас в Гедымине применяются два компонента ввода даты для указания начального и конечного дня периода. Предлагается реализовать простой и удобный визуальный компонент для ввода периода дат как набором с клавиатуры, так и путем выбора мышью. Минимальный период -- один день. Ввод даты окончания периода меньшей даты начала не допускается.
Компонент должен представлять собой поле ввода TEdit справа от которого расположена кнопка для вызова выпадающего окна.
Ввод периода с помощью мыши
Диапазон дат можно указать мышью в выпадающем окне следующими способами:
Выпадающее окно разделено по вертикали на две части. В левой находится список выбора режима указания периода. В зависимости от режима справа располагается:
- Год. Календарь для выбора года.
- Квартал. Календарь для выбора года и квартала.
- Месяц. Календарь для выбора года и месяца.
- Неделя. Календарь для выбора года, месяца и недели.
- День. Календарь для выбора года. месяца, дня.
- Произвольный. Два календаря для выбора первого и последнего дня периода.
- Шорт-кат. Список доступных шорт-катов.
- История. Несколько последних периодов, выбранных пользователем.
После выбора периода окно закрывается. Выпадающее окно можно закрыть без выбора периода клавишей Esc, либо кликнув мышью за его пределами.
Ввод периода с помощью клавиатуры
В поле ввода пользователю предоставляется несколько вариантов ввода временного отрезка:
Самый очевидный вариант -- ввод двух дат. Например, 01.01.2009-31.12.2009. Полный формат даты -- когда указан день, месяц и год. Сокращенный -- если хотя бы один из компонентов пропущен.
| Сокращенная дата | Единственная дата | Первый параметр | Второй параметр |
|---|---|---|---|
| Год | 1 января указанного года - 31 декабря указанного года | 1 января указанного года | 31 декабря указанного года |
| Месяц | 1-е число указанного месяца текущего года - Последнее число указанного месяца текущего года | 1-е число указанного месяца текущего года | Последнее число указанного месяца текущего года |
| День | День текущего месяца текущего года | День текущего месяца текущего года | День текущего месяца текущего года |
| Год и месяц | 1-е число указанного месяца указанного года - Последнее число указанного месяца указанного года | 1-е число указанного месяца указанного года | Последнее число указанного месяца указанного года |
| День и месяц | День указанного месяца текущего года | День указанного месяца текущего года | День указанного месяца текущего года |
| День недели | День, соответствующий указанному дню текущей недели | Указанный день текущей недели | Указанный день текущей недели |