Genero Business Development Language Tutorial 5.01
Content
Search
Index
Search is case-insensitive.
Use
and/or
as operators.
[word1 word2]
is like
[word1
or
word2]
Do not use quotes to group words.
Example: [datetimeedit
and
new
and
features]
Loading, please wait ...
How to write an application in Genero BDL
Testing the Example Programs
Tutorial Chapters
Documentation conventions
Syntax diagrams
Notes, tips, and warnings
Code examples
Tutorial Chapter 1: Overview
Overview
The BDL Language
The BDL Tutorial
The custdemo database
Tutorial Chapter 2: Using Genero BDL
Environment settings
A simple BDL program
Compiling and Running the Program
Debugging a BDL Program
Sample connecting to a database
Example: connectdb.4gl
Tutorial Chapter 3: Displaying Data
Application Overview
The Form Specification File
Form example: dispcust.per
Opening Windows and Forms
User interaction with MENU
Example: dispcust.4gl (MAIN block)
Retrieving and Displaying Data
Example: dispcust.4gl (function query_cust)
Compiling and Running the Program
Localization Support
Defining the locale
Localized Strings
Tutorial Chapter 4: Query by Example
Implementing Query-by-Example
Steps for implementing Query-by-Example
Using the CONSTRUCT dialog
Using the SQL condition
Allowing the User to Cancel the Query Operation
Predefined Actions (accept/cancel)
DEFER INTERRUPT and the int_flag
Conditional Logic
Retrieving data from the Database
Using SQL Cursors
The SQLCA.SQLCODE
The Query program
Example: custmain.4gl
Example: custquery.4gl (Function query_cust)
Example: custquery.4gl (Function get_cust_cnt)
Example: custquery.4gl (function cust_select)
Example: custquery.4gl (function fetch_cust)
Example: custquery.4gl (function fetch_rel_cust)
Example: custquery.4gl (function display_cust)
Compiling and Running the Program
Tutorial Chapter 5: Enhancing the UI
Adding a Toolbar
Example: TOOLBAR in custform.per
Adding a Topmenu
Example TOPMENU in custform.per
Adding a COMBOBOX form item
Example: COMBOBOX in custform.per
Changing the Window Appearance
Example: LAYOUT in custform.per
Managing Actions
Disable/Enable Actions
The Close Action
Example: custmain.4gl
Action Defaults
Example: ACTION DEFAULTS in custform.per
Tutorial Chapter 6: Append, Update, Delete
Modules organization
Importing modules
Example: custmain.4gl
Example: custquery.4gl
Example: comutils.4gl
The custdata.4gl module
Example: custdata.4gl (top definitions)
Example: custdata.4gl (Function cust_orders_count)
Example: custdata.4gl (Function cust_name_exists)
The INPUT statement
UNBUFFERED attribute
WITHOUT DEFAULTS attribute
Updating Database Tables
SQL transactions blocks
Concurrency and Consistency
Appending/Updating a row
INPUT Statement Control blocks
Example: custdata.4gl (Function appupd_cust)
Deleting a Row
Deleting rows in a database
Example: custdata.4gl (Function delete_cust)
Tutorial Chapter 7: Record list display
Defining the Form
TABLE Containers
Column definitions
Screen Arrays
Form example: custlist.per
Main block and misc functions
Filling program arrays with rows
Example: custlist.4gl types and variables
Example: custlist.4gl (MAIN block)
Example: custlist.4gl (Function custlist_query)
Example: custlist.4gl (Function custarr_fill)
The DISPLAY ARRAY statement
Binding program arrays to screen arrays
Configuration options
Dialog methods for DISPLAY ARRAY
Example custlist.4gl (Function custarr_display)
Tutorial Chapter 8: Modifiable DISPLAY ARRAY
Defining the form
Form example: custlistmod.per
DISPLAY ARRAY modification triggers
The ON APPEND trigger
The ON INSERT trigger
The ON UPDATE trigger
The ON DELETE trigger
Example: custlistmod.4gl (Function custarr_display)
Tutorial Chapter 9: Record list with direct update
Defining the form
Form example: custlistinp.per
The INPUT ARRAY statement
Binding program arrays to screen arrays
Configuration options
Control blocks of INPUT ARRAY
Dialog methods for INPUT ARRAY
Predefined actions
Example: custlistinp.4gl (Function custarr_input)
Tutorial Chapter 10: Multiple Dialogs
Defining the forms
Form example: stocklist.per
Form example: custlist.per
Form example: orders.per
The DIALOG statement
Secondary modules
Example: comutils.4gl
Example: stocklist.4gl
Example: custlist.4gl
Example: custlist.4gl (header)
Example: custlist.4gl (Function custarr_fill)
Example: custlist.4gl (Function select_customer)
The orders main module
Example: orders.4gl (header)
Example: orders.4gl (MAIN block)
Example: orders.4gl (Function orditems_dialog)
Example: orders.4gl (Function order_update)
Example: orders.4gl (Function order_insert)
Example: orders.4gl (Function order_check)
Example: orders.4gl (Function order_validate)
Example: orders.4gl (Function order_query)
Example: orders.4gl (Function order_fetch)
Example: orders.4gl (Function order_move)
Example: orders.4gl (Function orders_fetch_nums)
Example: orders.4gl (Function items_line_total)
Example: orders.4gl (Function items_fetch)
Example: orders.4gl (Function item_delete)
Example: orders.4gl (Function item_insert)
Example: orders.4gl (Function item_update)
Example: orders.4gl (Function comp_order_total)
Example: orders.4gl (Function get_stock_info)
Copyrights and Trademarks
Doc conventions
[1]