Defines a web application UI screen.
The main purpose of this GeneXus object is the definition of interactive queries to the database; however, it is a very flexible object that lends itself to multiple uses.
It allows end-users, in runtime, to interactively query the database through a screen. The term "interactively" refers to the end-user being able to repeatedly enter different filter values through a Web Panel screen, and then query the data that match them. The end-user can also perform different actions on the data queried.
Web Panels don't allow the database to be updated, they only allow queries (unless they're used in combination with Business Components).
Every Web Panel has an associated screen (Web Layout), where, the attributes included will be queried/retrieved from the database and displayed (read-only) and the variables included will be entry variables.
The following classification describes the possible uses of Web Panels:
- Entry Web Panel: A Web Panel whose only function is to accept values entered by the end-user (this means its screen only contains variables).
- Display Web Panel: A Web Panel whose only function is to display information (this means the screen only contains attributes, with the possibility of containing variables whose default behavior as entry variables has been changed, defining them as display variables and adding values explicitly).
- Mixed Web Panel: A Web Panel in which it is possible to enter values as well as to display information (in this case, the screen contains both variables and attributes, or only variables -some with their default entry behavior and others explicitly defined as display variables with added values).
This classification is independent of GeneXus; that is, GeneXus does not classify Web Panels internally.
A Web Panel object has several sections that can be defined:
||Defines the screen of the Web Panel, which the analyst designs by adding variables, attributes, and other controls, in order to allow the end-user to interact with it.
||Define certain specific behaviors of said object to be defined. For example, specifying what parameters it receives, defining what variables you don't want to be accepted on the screen but rather used for displaying information, etc.
||Web Panels use event-driven programming. This kind of programming allows you to define idle code, which is activated in response to certain actions by the end-user or the system.
||In this section, you can define conditions to be matched by the data to be retrieved (filters). There is another option to define filters locally in each Grid control included in the Web Layout.
Like most objects, it also has a section for defining variables (as usual, local to the object), the object's Help and Documentation as well as a Properties editor, that allows you to set up general aspects of the object.
1) This Web Panel includes variables and buttons in its Web Layout. The variables are enabled for the end-user to assign values to them. This means that they are input controls; in other words, they are not read-only.
Specifically, the &CountryId variable has been set of the Dynamic Combo Box Control Type; it has been set to show all the CountryName values stored in the COUNTRY table and the end-user can select one. The CountryId corresponding to the CountryName selected by the end-user will be kept in the &CountryId variable. After pressing the button “List Attractions by country”, the associated event will be executed invoking the PDF file containing the list of attractions in that country.
The variables &AttractionNameFrom and &AttractionNameTo allow entering freely a range of attraction names. After pressing the button “List Attractions by name”, the PDF list will show the attractions within the range received by parameter.