it-swarm-eu.dev

Bessere Möglichkeit für Benutzer, einen Datumsbereich auszuwählen

In meiner Anwendung wählen Benutzer einen Datumsbereich aus, für den Ergebnisse erforderlich sind. Die Benutzeroberfläche sieht ungefähr so ​​aus:

Existing UI

Meine Benutzer mögen das nicht, weil die Datumsauswahl erfordert, dass sie ein bestimmtes Datum auswählen. Dies ist weitaus genauer als erforderlich - die meisten vom System zusammengestellten Ergebnisse haben nur monatliche oder vierteljährliche Ergebnisse. Einige sind nur jährlich.

Die zwei Ideen, die ich mir ausgedacht habe, sind folgende:

alt text

Verwenden Sie links einfach eine Combobox, um aus gültigen Daten auszuwählen. Das Problem bei diesem Ansatz ist, dass die Ergebnisse manchmal täglich sind und der gültige Datumsbereich bis in die 1860er Jahre zurückreicht. Das summiert sich zu viel zu vielen Elementen, um in einer Combobox verarbeitet zu werden.

Rechts mit drei Comoboxen das Datum auswählen. Dies hat einige Vorteile. Wenn die Ergebnisse monatlich sind, kann ich die Tageskombination deaktivieren. Wenn die Ergebnisse vierteljährlich erscheinen, könnte ich auch die in der Monatskombination verfügbaren Elemente einschränken. Es scheint jedoch, dass für dieses Design eine ganze Menge Klicks erforderlich sind.

Was ist ein alternatives Design für die UX, mit dem Benutzer einfacher nur "nützliche" Daten auswählen können?

Mein Technologie-Stack ist C #, WinForms, .NET 3.5

pdate 1. Oktober

  • Die von meinen Benutzern ausgewählten Datumsbereiche sind in der Regel lang - mehrere Jahre bis mehrere Jahrzehnte - und führen über einen langen Zeitraum zu spärlichen Ergebnissen.
  • Die einzigen häufig festgestellten Standardeinstellungen sind "So früh wie möglich" für das Startdatum und "Bis heute " als Enddatum.

Viele gute Ideen in den bisherigen Antworten - danke an alle.

pdate 2. Oktober

  • Einige der folgenden Antworten (und ich gehe davon aus, dass viele Leser) gehen davon aus, dass ich den Datumsbereich für die Berichterstellung benötige. Eigentlich ist dieser Teil meiner Anwendung eher eine Abfrage-Engine. Wenn dieses Detail neue Ideen inspiriert, antworten Sie bitte.
46
Bevan

Im Allgemeinen sind Benutzer ziemlich genau und schnell darin, Datumsangaben als Zeichenfolgen in ein Textfeld einzugeben, solange Ihre Validierung nicht unnötig pingelig ist und eine angemessene automatische Korrektur und Standardeinstellungen für die Unterfelder bietet (z. B. Akzeptieren von 2-9-04 als sowie 02/09/2004). Kalendersteuerelemente eignen sich hervorragend als Option, wenn der Benutzer das Datum nicht sicher ist (z. B. in Fällen, in denen der Benutzer an "Mittwoch nächste Woche" denkt), sie sollten jedoch nicht die einzige Möglichkeit sein, Datumsangaben einzugeben. Separate Dropdowns für jedes Unterfeld machen es für den Benutzer langsam.

Wenn Sie Zugriff auf Abfrageprotokolle haben, untersuchen Sie diese, um ein besseres Gefühl dafür zu bekommen, welche Art von Daten Benutzer verwenden. Während Sie möglicherweise beliebige Daten aus dem Jahr 1860 unterstützen müssen, müssen Sie das Design möglicherweise nur für eine kleine Anzahl von Daten oder Datumsmustern optimieren.

Hier sind einige Möglichkeiten:

  • Standardeinstellungen. Möglicherweise sind die meisten Ihrer Abfragen nur auf der Seite vorhersehbar, auf der sich der Benutzer befindet (z. B. für den letzten Monat oder das letzte Quartal oder das letzte Jahr, abhängig von der Seite/dem Fenster). Setzen Sie Ihren Von-Bis-Bereich standardmäßig auf diese Werte für jede Seite, und Benutzer müssen kaum etwas eingeben.

  • Liste typischer Datumsbereiche. Wenn einige Datumsbereiche den größten Teil Ihrer Anfragen ausmachen (z. B. jeden Monat des letzten Jahres), listen Sie sie in einem Listenfeld oder einer Optionsfeldliste auf. Das letzte wäre "Benutzerdefiniert", das ein paar Textfelder mit Kalendersteuerelementen für die Benutzereingabe bestimmter Daten ermöglicht.

  • Dropdown für allgemeine Eingaben. Wenn es eine relativ kleine vorhersehbare Liste von Von- und Bis-Werten gibt, geben Sie die Kombinationsfelder Von und Bis an, die jeweils ein vom Benutzer eingegebenes Datum akzeptieren, jedoch eine Dropdown-Liste mit den häufigsten Von- und Bis-Daten (z. B. Beginn jedes Quartals in) das letzte Jahr für das Feld Von).

  • Einzelne Textbox. Wenn die meisten Datumsbereiche ganze Monate, Quartale und Jahre sind, bieten Sie zwei Methoden zur Eingabe von Datumsbereichen. Die Standardeinstellung enthält ein einzelnes Textfeld mit der Bezeichnung "Monat, Quartal oder Jahr". Hier werden Eingaben wie "Sep" (standardmäßig der letzte September), "6/09", "3Q06" und "1933" akzeptiert. Studieren Sie vom Benutzer geschriebene Materialien, um zu sehen, welche Arten von Zeichenfolgen zu erwarten sind. Die nicht standardmäßige Methode bietet separate Von-Bis-Textfelder für beliebige Daten.

  • Mikrogrammatiken. Wenn sich hauptsächlich Ihre erfahrenen Benutzer über die Eingabe von Datumsangaben beschweren, sollten Sie die Unterstützung von Mikrogrammatiken für die Textfelder Von und Bis in Betracht ziehen, in denen der Benutzer ein genaues Datum oder verschiedene andere Syntaxverknüpfungen eingeben kann (z. B. „Letztes Quartal“ oder „LQ“ ”Im Feld Start wird als alles aus dem zuletzt abgeschlossenen Quartal interpretiert. Siehe Daten effizient mit Textfeld-Mikrogrammatiken erfassen

41

Warum nicht einen Zeitleisten-Schieberegler in Betracht ziehen, bei dem die neuesten Berichte als Auswahlpunkte dienen?

Wenn Sie Berichte aus dem Jahr 1860 haben, wie oft müssen sie zurückgehen?

                   | Report XYZ, Jan 12, 1983 |       
<--- Earlier                   \/                         Later --->
|------------------------------||----------------------------------|
     ^      ^ ^  ^            ^    ^   ^    ^   ^ ^ ^ ^ ^

So etwas könnte sie visuell auswählen lassen? Mit der Blase über der Liste sollte es für sie einfacher sein, zu sehen, was sie haben. Früher/Später stoppt eine Schaltfläche/Registerkarte, um das Jahr oder ähnliches zu verschieben. Der Schieberegler ist über die Tastatur zugänglich.

23
Dominic Hopton

Verwenden Sie zwei Kalender und verdunkeln Sie die Tage, die nicht auswählbar sind. Sie bieten Ihren Benutzern den Vorteil von Kalendern (Sie können jeweils einen Monat anzeigen, problemlos in der Zeit vor- und zurückspringen und jedes gewünschte Datum auswählen), wobei nur bestimmte gültige Daten eingeschränkt werden. Wenn ein Benutzer auf ein abgeblendetes Datum klickt, geben Sie ihm Feedback, warum dieses Datum ungültig ist, oder verwenden Sie eine Legende.

Hipmunk.com vereinfacht dies hervorragend. Sie haben immer zwei Kalender im Blick und Daten vor dem heutigen Tag sind ausgegraut (es ist so offensichtlich, warum in diesem Fall, dass sie nicht angeben müssen, warum, aber Sie müssen möglicherweise). Durch Klicken auf ein Datum wird das Startdatum ausgewählt, und durch erneutes Klicken wird das Enddatum ausgewählt. Beachten Sie, dass dort auch Datumsfelder vorhanden sind, damit Sie bei Bedarf eingeben können. Die Felder werden hervorgehoben, wenn Sie auf klicken, um anzugeben, welches Datum Sie auswählen möchten. Es ist unkonventionell und noch nicht ganz "Lass mich nicht nachdenken", aber es ist eine großartige Möglichkeit, diese Steuerelemente elegant zu kombinieren, ohne eine Reihe umfangreicher Widgets hinzuzufügen. Hör zu:

Hipmunk's homepage

Eine Sache, die Hipmunk IMO noch tun könnte, ist, die Tage zwischen Ihrer Abreise und Ihrer Rückkehr hervorzuheben, nur als zusätzliches visuelles Detail. Im Moment müssen Ihre Augen den Abstand zwischen den beiden Daten noch als "Oh, richtig, jede Zeile von diesem Datum bis zu diesem Datum ist der Ort, an dem ich weg sein werde" analysieren.

(Bonus fantastisch: Geben Sie ein Abreisedatum nach dem Rückflugdatum an.)

6
Rahul

Dies ist eigentlich eine webbasierte Software, die ich bei der Arbeit verwende, aber die Idee kann ziemlich einfach in WinForms übersetzt werden.

Mit diesem Steuerelement generiere ich ständig Berichte mit unterschiedlichen Datumsbereichen. Die Textfelder sind nicht maskiert und verzeihen eher die Werte, die in Datumsangaben konvertiert werden können, sodass ich verschiedene Datumsbereiche ohne Probleme frei schreiben kann. Sobald Sie das Feld verlassen, wird das Datum in ein "richtiges" Datumsformat formatiert. Wenn das Datum nicht ermittelt werden kann, wird der Text rot und hat ein kleines Fehlersymbol daneben (z. B. wenn ich ein mehrdeutiges Datum eingebe, z. B. 1109).

Wenn ich etwas Bestimmtes tun muss, kann ich auf die Kalenderschaltfläche rechts neben dem Textfeld klicken, um den Kalender anzuzeigen (z. B. wenn ich Berichte aus der dritten Märzwoche 2009 anzeigen möchte, muss ich die Daten nicht kennen von oben).

Ich bevorzuge diesen Stil, weil ich kaum eine Sekunde brauche, um die Datumsbereiche auszufüllen - es ist nur 010109 tab 030109 tab und dann komme ich zu den nächsten Details.

alt text

Oberes, leeres Steuerelement. Mittleres Datum mit freiem Text. Unten, Datumsformatierung und Kalendersteuerung.

Was Ihre dritte Option betrifft, muss ich eine Software verwenden, die diesen Stil verwendet, und ich hasse sie - insbesondere, weil ich die Maus verwenden muss. Ich möchte auch darauf hinweisen, dass die angezeigten Daten die Standarddaten beim Laden der Seite sind. Daher möchte ich standardmäßig nach Elementen suchen, die größer als die Zukunft, aber kleiner als die Gegenwart sind. Ein RIESIGER Nachteil ist, dass die Jahre in den Dropdowns fest codiert sind - wir mussten bis Februar 2010 warten, bis 2010 hinzugefügt wurde, damit wir nach etwas suchen konnten kürzlich.

alt text

Wenn Sie im Voraus wissen, dass eine bestimmte Abfrage nur vierteljährliche Ergebnisse enthält, können Sie Ihr Layout teilweise ändern und eine Auswahl und eine Jahresauswahl wie folgt treffen:

alt text

Und Sie könnten die Quartale für das laufende Jahr deaktivieren, die noch nicht generiert wurden.

6
Jared Harley

Ich habe nicht alle Antworten gelesen. Vielleicht hat bereits jemand vorgeschlagen, mit den Steuerelementen zu beginnen, die die meisten Benutzer die meiste Zeit benötigen, und dann schrittweise zusätzliche Steuerelemente offenzulegen. Klicken Sie beispielsweise auf einen Link, um Steuerelemente für Tag und Monat, für mehrere nicht überlappende Datumsbereiche usw. anzuzeigen.

alt text

Oder dieses:

alt text

4
JeromeR

Hier ist meine Lösung.

FirstSecond

2
Alexandr

Ich bin verliebt in das Design, das im bootstrap-daterangepicker jquery Plugin verwendet wird.

Grundsätzlich hat es Standardbereiche und die Standardfelder von - bis mit Datumsauswahl, die den ausgewählten Bereich hervorheben. I like it

1
JCM

Bildlaufbares Datumsbereichsfeld: 5 Interaktionsschritte als .Png-Bild mit Kommentaren zu Russisch!

Daten + Voreinstellungen für typische Zeiträume wie 1/3/6/12 Monat http://1ne.twozerotwenty.com/pics/2011/10/show_me_the_date.png

Wenn es erforderlich ist, kann ich die vollständige Anleitung zu Interaktions- und Funktionsbereichen auf der Englisch- und Demoseite erstellen.

1
denis.efremov

Hier ist, wie ich ein ähnliches Problem gelöst habe ... Sie können die 30 Tage/60 Tage/90 Tage ändern, um die am häufigsten generierten Berichte (jährlich/vierteljährlich/monatlich) anzuzeigen. Die Datumsbereichsfunktion öffnet einen Tooltip mit Datumsbereichsfunktionen für Benutzer, die speziell nach einem Datumsbereich suchen, einen Benutzer jedoch nicht zur Eingabe von Datumsangaben zwingen, um Ergebnisse zu generieren. enter image description here

0
Ashlie

Mir gefällt, wie es in der Google Kalender-App (MIUI) implementiert ist. Es gibt zwei Spinner für die Auswahl von Datum und Uhrzeit. So siehts aus:

enter image description here

Wenn Sie die Datums- und Uhrzeitangabe in der ersten Auswahl festlegen, wird die zweite automatisch auf +1 Stunde eingestellt.

0
naXa

was ist mit der jquery ui Datumsbereichsauswahl:

http://www.filamentgroup.com/lab/date_range_picker_using_jquery_ui_16_and_jquery_ui_css_framework/

sie können einige Standardeinstellungen vorab ausfüllen und so einrichten, dass Jahr und Monat Dropdowns sind, anstatt nur die <> Pfeile pro Monat zu haben.

0
Patricia

Sie könnten eine normal aussehende Kalenderauswahl anzeigen. Wenn der Benutzer jedoch den Monat in der Titelleiste auswählt, werden die Start- und Enddaten automatisch als Start- und Ende des Monats eingegeben. Ähnliches gilt für das Jahr.

Der Benutzer könnte das Enddatum überschreiben, wenn er einen etwas anderen Bereich möchte.

Ich bin mir nicht sicher, wie Sie ein Viertel zeigen würden.

0
ChrisF

Zwei Gedanken:

  • Können Sie verschiedene Datumsauswahlmöglichkeiten für verschiedene Berichtstypen präsentieren (z. B. sagten Sie, einige seien jährlich - in diesem Fall benötigen Sie nicht mehr als das Jahr -, was ein einfaches Textfeld sein könnte.)

  • Ist das Start-/Enddatum die Art und Weise, wie die Benutzer über die Berichterstellung denken? In mehreren Projekten habe ich an Personen gearbeitet, die Berichte in Bezug auf ein Datum und einen Zeitraum anstelle von zwei Daten denken möchten. Für die vierteljährliche Berichterstattung möchten sie möglicherweise 4 Jahre ab dem dritten Quartal 1980.

0
adrianh