Table of contents


Development Environment

Web Development and Improvements in user experience

(Productivity and Enterprise-level Application Development Features)

Ajax Overview, [[21759|GeneXus' target='_blank'>Ajax' target='_blank'>Ajax Overview, [[21759|GeneXus and Ajax]]

Business Components

Business Component - Publication as an Enterprise Java Bean

Practical course: Bluesky Charters

Application Localization

Application Localization
Translation Tool
Help "in any language"
Practical course: Bluesky Charters


About this topic
Patterns based development
Built in Patterns
Work With Pattern
Demo: Work With Pattern
Practical course: Patterns

Better data model

Null handling optimizes navigations
Nulls property


User experience

New options on rightclick in win

Reverse Engineering

Database Reverse Engineering Tool

New Platforms

.Net Mobile Generator
More J2EE support than ever

Data Types and Methods

Message Queue handling data types

LDAP Data Type

URL access Property
New IIF function
New byte count function
New Methods for attributes, variables and enumerated domains!
XSLTApply Method
Procedures can now call web objects
Web Services: Grouping Locations
News about model, object, and control properties

This is not the latest version of this document; to access the latest version, click here.
Unofficial Content
  • This documentation is valid for:

The Suggest property applies to Edit controls and can be used in transactions (attributes) as well as in Web and Work panels (variables). Enabling the Suggest property in an Edit control will cause a list of possible values for that control to be displayed when entering data. The suggestions list can be calculated in an incremental way (the list is updated as the user enters data), or by making requests (the user manually makes a request to calculate suggestions). The list updates are asynchronous and calculation times depend on the quality of the connection.

The Suggest property can be enabled over Edit Controls themselves or over attributes. If it is applied to an attribute, the Suggest property will be enabled by default everywhere the attribute is used. On the other hand, the suggest property can be only used over char or varchar attribute or variables, otherwise spc0112 ("Item value %1 for control %2 must be Character or VarChar") specification error will be shown.

This property is independent of the InputType property. However, it is advisable to read the InputType property documentation first because using both properties will make it easier to create friendly user interfaces. Read more information about how these features can work together.


Let's consider the Countries and Clients transactions, where all Clients belong to a Country.



The "traditional" way of entering data requires that once the Client name and identifier have been entered, the Country code must be entered by inferring CountryName. In order to avoid that, InputType = Description is set to allow entering CountryName instead of ClientID.

In addition, if Suggest is enabled for CountryID, a list of suggestions will be displayed with possible attribute values when entering data.


Finally, the result of enabling the Suggest property will be the following:





Conditions allow you to limit the set of possible values to be entered. To do so, you only need to configure the Condition property as follows:


At runtime, if the value entered doesn't match the condition, a "No matching <table>" message will be shown. In the example above, the "No matching." message would be shown when not entering a country which name begins with "U".

When inserting a condition, it is possible to use attributes of the extended table of the "Value" (or Description) attribute. E.g.: In the example shown above, if Country would have a foreign key to e.g. "Continent" it would be possible to use the "ContinentName" attribute in the conditions as it can be inferred from CountryId.

Instantiated Attributes

The set of possible values displayed by the suggestion list can also be limited through the Instantiated Attributes property. This property is used to filter the set of attributes depending on other attributes that can't be inferred directly. Let's consider the following example:

In a multi-company system we have a table with all products, and another table with all the products that the company can sell. Therefore, if we have a products combo box, we can only see the products of the instantiated company.

Consider the following transactions:


And the following relationship:




If we enable the Suggest property for ProductID, most likely we will only want to enter products that belong to the selected company (that is to say, the products instantiated by this company). To define that the allowed products are only those that the company can sell, we must indicate it in the new "Instantiated Attributes" property.



Suggest over variables

The suggest property can be used over attributes in transactions (as seen above) or it can also be used over variables either in transactions, work panels or web panels. When enabling the suggest over a variable, after the focus reaches the variable (at runtime), a list of values will be unfolded suggesting the stored values for the attribute set at the "ItemValue" property.

This would be useful in cases where you would want the form to "remember" the stored values in the database as they are frequently used, but you also want to allow entering new values for that field.


  • Currently, the Suggest property always works in an incremental way. Therefore, regardless of the selected value ("Incremental" or "On Request"), it calculates the suggestion incrementally. The distinction between "Incremental" and "On request" will be included in the future.



Languages: Java, .NET, .NET Mobile
Objects: Transactions, Work Panels, Web Panels
Interfaces: Win, Web

See Also

Input Type and Suggest working together
InputType property

Official 'GeneXus and Ajax' site

Sample to see ajax features running online

Sample KB to download

More information about AJAX


Last update: February 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant