Forms-Based Application Development Tools User Guide > Part 5: 4GL > Using 3GL Procedures > Passing Records and Arrays Between 4GL and 3GL Routines
Was this helpful?
Passing Records and Arrays Between 4GL and 3GL Routines
A common reason for passing data to 3GL is enhanced performance when performing complicated mathematical calculations. If you are passing a small number of scalar data items, you can use a 3GL procedure. However, if the amount of scalar data you pass exceeds the number of parameters allowed on your system, or you want to pass structured data, such as an array or a record, you access the data from an embedded SQL procedure.
When accessing structured data in 4GL from 3GL, use a special set of embedded SQL statements that have the following syntax:
[margin] exec 4gl 4gl_statement [terminator]
Note that this syntax is similar to that for embedded SQL and SQL/Forms.
These statements are documented in this chapter. All 3GL routines using these statements can be used only in 4GL applications.
Use an embedded SQL procedure in conjunction with 4GL to perform the following functions:
Getting and putting record and array attributes
Dynamically accessing record and array attributes by a describe operation using the SQLDA
Indexing into arrays to get or put objects
Inserting rows into, deleting rows from, and removing rows from arrays
Clearing arrays
Accessing global variables and constants
Last modified date: 11/28/2023