Press "Enter" to skip to content

ADD_GROUP_ROW built-in Oracle D2k / Oracle Forms

ADD_GROUP_ROW built-in Oracle D2k / Oracle Forms

Description
Adds a row to the given record group.
Syntax
PROCEDURE ADD_GROUP_ROW
(recordgroup_id RecordGroup,
row_number NUMBER);
PROCEDURE ADD_GROUP_ROW
(recordgroup_name VARCHAR2,
row_number NUMBER);
Built-in Type unrestricted procedure
Enter Query Mode yes
Parameters
recordgroup_id The unique ID that Form Builder assigns when it creates the group. The
data type of the ID is RecordGroup.
recordgroup_name The name you gave to the record group when creating it. The data type of
the name is VARCHAR2.
row_number A whole number that specifies a row in the group. If you add a row to any
but the last position in a group, all rows below that are logically
renumbered. To add a row to the end of a group, use the
END_OF_GROUP constant.
Error Conditions:
Form Builder returns a runtime error given either of the following conditions:
·  If you enter the name of a non-existent record group.
·  If you supply a row number that is out of range or is invalid (for example, an alphabetic character).
ADD_GROUP_ROW restrictions
·  A group can consist of 0 or more rows.
·  You can add rows to a group only after it has been created and columns have been added.
·  If you specify a row number greater than the number of rows already in the group (or a negative
number), the row is inserted at the end of the group.
·  You cannot add rows to a static group without a query.
ADD_GROUP_ROW examples
/*
** Built-in: ADD_GROUP_ROW
** Example: Add ten rows to a new record group and populate.
*/
PROCEDURE Populate_My_Group IS
rg_name VARCHAR2(20) := ’My_Group’;
rg_col1 VARCHAR2(20) := rg_name||’.NumCol’;
rg_col2 VARCHAR2(20) := rg_name||’.CharCol’;
rg_id RecordGroup;
gc_id GroupColumn;
in_words VARCHAR2(15);
BEGIN
/*
** Check to see if Record Group already exists
*/
rg_id := Find_Group( rg_name );
/*
** If it does, then clear all the rows from the group and
** populate ten rows with the numbers from 1..10 along
** with the equivalent number in words.
**
** Row# NumCol CharCol
** —- —— ——-
** 1 1 one
** 2 2 two
** : : :
** 10 10 ten
*/
IF NOT Id_Null(rg_id) THEN
Delete_Group_Row( rg_id, ALL_ROWS );
FOR i IN 1..10 LOOP
/*
** Add the i-th Row to the end (bottom) of the
** record group, and set the values of the two cells
*/
in_words := TO_CHAR(TO_DATE(i,’YYYY’),’year’);
Add_Group_Row( rg_id, END_OF_GROUP );
Set_Group_Number_Cell( rg_col1, i, i);
Set_Group_Char_Cell( rg_col2, i, in_words);
END LOOP;
END IF;
END;

Vinish Kapoor

FoxInfotech.in is created, written, and maintained by Vinish Kapoor. It is built on WordPress, and hosted by Bluehost. Connect with Vinish on Facebook, Twitter, and GitHub.

You may also like: