User:anonymousLog inRegister
Recents:
Category:Data Selector Object

A Data Selector is a GeneXus object for storing a set of Parameters, Conditions, Orders, and a Defined By clause, in order to invoke it from different queries, calculations, etc. and reuse the same navigation several times.

Defining Data Selectors brings the following advantages:

  • Saving and reusing code: You define a Data Selector once, and you can use that definition in several places in the Knowledge Base
  • Less maintenance: You change a Data Selector definition in one place, and it applies automatically everywhere it is used in the Knowledge Base
  • They facilitate new GeneXus users training: They provide code encapsulation, and are easy to learn, define and use

Example:

Image:ActiveCustomers

Look at the “Customer” transaction above. It contains the CustomerStatus attribute, and one of the possible values that it stores is “Active”.

Suppose that you need to query the "active customers" (CustomerStatus= “Active”) in many objects. For example: 

  • a procedure of active customers, grouped by Gender
  • a procedure that applies a discount for active customers
  • a web panel that shows the total purchases of each active customer

So, it is appropriate to define a Data Selector with the filter condition, and invoke it from the necessary places.

Defining Data Selectors

Once a Data Selector has been created, it basically contains:

  • A structure (here Parameters, Orders, Filters and Defined By clauses are defined)
  • Documentation
  • Properties

Look at the following images, which show a Data Selector named "ActiveCustomers" that defines the proposed filter:

Data Selector Editor (to define stucture):                             Properties Window (to define properties):

Image:DataSelectorDefinition

Invoking Data Selectors

Once a Data Selector is defined, it can be invoked from: 

See Also

Video about Data Selectors here (in spanish).

 

Sub Categories 
Pages 
Created: 09/21/07 05:43 PM by dmarquez Last update: 03/15/10 12:17 PM by dmarquez
 
Page
Categories
Group
Powered by GXwiki 3.0 (generated with GeneXus X Evolution 1 U1) gxwiki@gxtechnical.com