A script-enabled browser is required for this page to function properly.

CREATE_GROUP Built-in

Description

Creates a non-query record group with the given name. The new record group has no columns and no rows until you explicitly add them using the ADD_GROUP_COLUMN, the ADD_GROUP_ROW, and the POPULATE_GROUP_WITH_QUERY Built-ins.

Syntax

FUNCTION CREATE_GROUP
(recordgroup_name VARCHAR2,
scope
NUMBER,
array_fetch_size
NUMBER);

Built-in Type unrestricted function

Returns RecordGroup

Enter Query Mode yes

Parameters

recordgroup_name 
 
The string you defined as the name of the record group at design time. When Oracle Forms creates the record group object it also assigns the object a unique ID of type RecordGroup. You can call the record group by name or by ID in later calls to record group or record group column Built-in subprograms.
 
scope 
 
Specifies whether tlhe record group can be used only within the current form or within every form in a multi-form application. Takes the following constants as arguments:

FORM_SCOPE

Indicates that the record group can by used only within the current form. This is the default value.
 
GLOBAL_SCOPE
Indicates that the record group is global, and that it can be used within all forms in the application. Once created, a global record group persists for the remainder of the runtime session.
 
array_fetch_size 
 
Specifies the array fetch size. The default array size is 0.

CREATE_GROUP Examples

/*

** Built-in: CREATE_GROUP
** Example: Creates a record group and populates its values
** from a query.
*/
DECLARE
rg_name VARCHAR2(40) := 'Salary_Range';
rg_id RecordGroup;
gc_id GroupColumn;
errcode NUMBER;
BEGIN
/*
** Make sure the record group does not already exist.
*/
rg_id := Find_Group(rg_name);
/*
** If it does not exist, create it and add the two
** necessary columns to it.
*/
IF Id_Null(rg_id) THEN
rg_id := Create_Group(rg_name);
/* Add two number columns to the record group */
gc_id := Add_Group_Column(rg_id, 'Base_Sal_Range',
NUMBER_COLUMN);
gc_id := Add_Group_Column(rg_id, 'Emps_In_Range',
NUMBER_COLUMN);
END IF;
/*
** Populate group with a query
*/
errcode := Populate_Group_With_Query( rg_id,
'SELECT SAL-MOD(SAL,1000),COUNT(EMPNO) '
||'FROM EMP '
||'GROUP BY SAL-MOD(SAL,1000) '
||'ORDER BY 1');
END;