Specification of a Filter Criteria Dialog

Base

Task ID(s)

111603

Category	Specification Affects

Wizards

Abstract

This document describes the new “Filter Criteria Component” that is supposed to be used in various places over the office application like in database wizards (query wizard). Filter criteria are limits that are placed on a query or an advanced filter to identify the specific records to be extracted.

i-Team

Specification Owner	Berend Cornelius	Berend.Cornelius@sun.com
Marketing Contact		Susan.Jefferies@Sun.COM
User Experience Contact	Christian Jansen	Christian.Jansen@Sun.COM
Development Contact	Berend Cornelius	Berend.Cornelius@sun.com
Quality Assurance Contact	Marc Schwanz	Marc.schwanz@sun.com
Documentation Contact	Uwe Fischer	Uwe.Fischer@Sun.COM

Specification Reviews

Version	Reviewer	Comment
Reviewed by UX <Date>	<Name>	<Comment>
UI String Review <Date>		
Reviewed by QA <Date>		
Reviewed by DOC <Date>		

Document History

Version	Author	Comment
Draft 08/15/03	Berend Cornelius	Initial Draft
08/26/03	Berend Cornelius	Adaption to Sorting concept
Final <Date>		

Contents

Glossary	1

References	1

1	Motivation	2

2	Goals	2

3	Dependencies	2

3.1	Technical Dependencies / Requirements	2

4	Detailed Specification	2

4.1	Error Conditions	4

5	Notes	4

Glossary

Term	Description
wizard	A window that leads a user through a task one step at a time--requesting a series of responses from the user and then performing the task based on those responses
MA (MAP)	The units which are used in this specification are Map AppFont (ma). It is the preferred unit when designing dialogs with the OpenOffice.org API. Map AppFont units are device and resolution independent. One Map AppFont unit is equal to one-eighth of the average character (Systemfont) height and a quart in width.
Filter criteria	Filter criteria are limits that are placed on a query or an advanced filter to identify the specific records to be extracted. For example, instead of viewing all the suppliers that your company uses, you can view just suppliers from Japan.
Datasource Command	A table or a query of a datasource
Control row	A control row (Illustration 1) is a row of controls representing one criterion. It consists of a Fieldname Listbox, a Logical Operator Listbox and a Value Textbox
Fieldname Listbox	The listbox of a the left hand side of a controlrow representing a field criterion (Illustration 1)
Logical Operator Listbox	The Listbox in the middle of a controlrow containing all supported Filter criteria (Illustration 1)
Value Textbox	The control on the right hand side of a of a controlrow containing the respective value of a criterion (Illustration 1)
Succeeding Control	In this specification a succeeding control to a referenced control is the control that performance the same functionality in the succeeding row than in the referenced controlrow

References

Sun Guidelines??

JLF(Advanced Topics) Chapter 7 Wizards
http://java.sun.com/products/jlf/at/book/Wizards.html

l

User Interface Design Guidelines for Browser-Based Sun System Management Applications - Version 2.0, Chapter 13
http://cto.eng.sun.com/T_new/user_experience/hci-admin/uispec2_0/13-wizards.html

Helios Task Group on Wizards will start 29-Jul-03

http://ucsd.sfbay.sun.com/projects/helios/logistics/tasks/task-groups/wizards/

http://staroffice-doc.germany.sun.com:8080/Teams/StarOffice_Coordination/Product_Management/Development/Common/Styleguide/StyleGuide.sdw

http://staroffice-doc.germany.sun.com:8080/Projects/StarOffice/SO_Q/Marketing/FSD/Extras/DialogComponent_Sorting.sxw

Motivation

The motivation to create a new filter dialog is to replace the current filter dialog that can by called from the database beamer's design view by clicking the “Default Filter” icon. That dialog has the disadvantage that it is not made clear to the user how nested Filter criteria will be executed with criteria linked with “AND” or “OR”.

Another improvement will be that the number of criteria is no longer limited.

Goals

The goal is to create an easy to understand Filter criteria dialog that offers covers a major part of the users needs. The component consequently neglects those advanced users who have in mind to create mixed “And” and “Or” combinations of criteria. Although the component should not restrict the number of possible criteria its main focus should not be the concise administration of very many criteria (= more than four criteria) (see Remarks in “Notes”) ???. A typical use for this component are within wizards.

Dependencies

Technical Dependencies / Requirements

The specification can be implemented with the StarOffice API and is not bound to any programming language.

Detailed Specification

Illustration 1

As seen in Illustration 1 the component only allows “AND” or “Or” logical operations but no mixed ones.

Clicking “Match all of the following” will combine the criteria with “And”. “Match any of the following” will combine them with “or”.

In the the scenario in Illustration 1 each row represents one criterion. The component may be initialized with several criteria as well as with no initial Filter criteria.

The “Fieldname Listbox” on the left hand side of each row contains the fieldnames of a datasource command. However it has “(none)” as the first item and the array of fieldnames is appended right afterwards. As soon as another item as “none” is selected another controlrow is inserted.

The “Logical Operators Listbox” is filled up with all supported criteria operators aliased by non technical terms that user with a limited technical background understand. If the word order in a certain language does not follow the order of these controls the listbox is filled up with mathematical operators. This is currently only the case in japanese. There will be no restructuring of the controls necessary then. The locale is derived from the office application. When the item “is empty” is selected the “Value Textbox” on the right handside will be disabled. Otherwise the Value Textbox gets enabled. The listbox only offers those logical operators that also make sense for the datasource field that is represented by the current Fieldname Listbox selection. The Listbox should provide enough lines to depict all available logical operators without providing a scrollbar.

The “Value Textbox” contains the value that the criterion evaluates to. It adapts its numberformat to the numberformat of the field that is represented by the selected field in the “Fieldname Listbox” of the row. This means that also a given content in this textcontrol is depicted in the new format when a different fieldname has been selected in the “Fieldname Listbox”.

Adding a Sorting criterion

See the same chapter in the sorting component specification

Removing a Field Criterion

See the same chapter in the sorting component specification

Evaluation of the Sorting Criteria

See Specification of the Sorting component specification

Duplicate Sorting criteria

See same chapter in the Sorting component specification. The message can be found in the “String” chapter of this specification.

Initialization with no Filter criteria

The first “Fieldname listbox” is initialized with “none”, no logical operator is choosen and the “Value Textbox” is empty. The following sorting rows are disabled. Additionally the first item is named “none”. This is the first preselection.

Initialization with several existing filter criteria

For each defined field criterion the respective row is enabled and in the listboxes the appropriate item is selected. The row after the row representing the last criterion is enabled too and the preselection of the “Fieldname ListBox” is set to “none” and the “Logical Operator Listbox” and the “Value Textbox” other that row remaining empty.

String Lists

String list

Item	English	German
Listbox item	none	(ohne)
Listbox item	is like	ist ähnlich wie
Listbox item	Is not like	ist nicht ähnlich wie
Listbox item	is equal to	ist gleich wie
Listbox item	Is not equal to	ist nicht gleich wie
Listbox item	is greater than	ist größer als
Listbox item	is equal or greater than	ist größer oder gleich wie
Listbox item	is smaller	ist kleiner als
Listbox item	smaller or greater than	ist kleiner oder gleich wie
Listbox item	Is empty	ist leer
Listbox item	Is not empty	Ist nicht leer
Label	Fieldname	Feldname
Label	Logical operator	Logischer Operator
Label	Value	Wert
Radio button label	Match any of the following	Stimmt überein mit allen der folgenden
Radio button label	Match all of the following	Stimmt überein mit einigen der folgenden
Messagebox	The filter criterion '<FIELDNAME>' was chosen twice. Each criterion can only be chosen once.	Das Feldkriterium '<FIELDNAME>' wurde zweimal ausgewählt. Jedes Feldkriterium kann nur einmal gewählt werden.

Tab Order

The TabOrder begins with the initial TabIndex (“InitTabIndex”) that is passed over to the component. The following tab indices are determined from the position of the respective control in the dialog. The order thus starts from the upper left edge and goes on to the next control on the right hand side and then the next right control in the next control row further down.

Controls	Tabindex
First “Fieldname Listbox”	InitTabIndex
First “Logical Operators Listbox”	InitTabIndex + 1
First “Value Control”	InitTabIndex + 2
Second “Fieldname Listbox”	InitTabIndex + 3
Second “Logical Operators Listbox”	InitTabIndex + 4
Second “Value Control”	InitTabIndex + 5
...	

Key Board Shortcuts

No Keyboard shortcuts will be provided.

Error Conditions

If an error occurs the error is passed over to the calling routine who handles everything for its special case.

Notes

An illustration of the exclamation Messagebox pointing to invalid criteria will be delivered as soon as this behavior is approved.

Specification of a Filter criteria Dialog

Page 4

http://staroffice-doc.germany.sun.com:8080/Projects/StarOffice/SO_Q/Marketing/FSD/Extras/DialogComponent_FieldCriteria.sxw

Berend Cornelius

2003-06-23T15:12:34