...
Syntax:
block Name [ AcceptsObjidList ] [ RequiredComponent ] {
[ Filters ] [ Parameters ] [ CursorDefinition ] [ BlockDefinition ] Attributes [ Entities ] [ Aggregates ] PropertyArray
}
Name of the block
Syntax:
<Identifier>
Restrictions:
Syntax:
#AcceptsObjidList
Name of a required component
When a required component is used, the report block will not be executed unless the component is installed in the database.
Syntax:
requires <UppercaseIdentifier>
block Scene requires FILMDB { attributes { attribute SceneIndex Integer; attribute Duration Number; attribute Content Text(2000); } entities { } }
Note: This functionality uses PL/SQL conditional compilation. When the required component gets installed, compilation errors can occur for the part of PL/SQL code that gets active.
Restrictions:
List of block filters
Syntax:
filter on BlockFilter ( ,BlockFilter )* ;
filter on Genre;
List of block parameters
Syntax:
bindings {
( BlockParameter )+
}
block Biography { bindings { parameter ActorId Number; }
SQL select statement to retrieve data
Syntax:
SQL-Statement
<SqlStatement> ;
To make use of binding parameters, the statement must contain references to them in it's WHERE-clause
filter on Genre; PL/SQL-Block { BEGIN :ActorBiography := (:ActorCount > 0); END; } attributes { attribute ActorCount Number; } aggregates { aggregate ActorData[] Biography() conditionally ActorBiography; } } block Biography { bindings { parameter ActorId Number; } SQL-Statement SELECT *
When filters are used, the statement will gen a dynamically prepared WHERE-clause that is formatted according to the actual filter values.
Note: Must begin with the word 'SELECT' or 'CURSOR' and end with ';'.
For-each-row PL/SQL execution block
An optional PL/SQL block that is executed for each fetched row.
Syntax:
PL/SQL-Block{
<PlsqlStatement>
}
PL/SQL-Block { BEGIN :ActorBiography := (:ActorCount > 0); END; }
Both conditions and attributes can be referenced in the PL/SQL code as bind variables. Also, attribute values can be set by the code.
Note: Must begin with the word 'DEFINE' or 'BEGIN' and end with 'END;'.
List of block attributes
Syntax:
attributes {
( Attribute )*
}
List of entity connections
Syntax:
entities {
( Rowkey )*
}
List of aggregated detail blocks
Syntax:
aggregates {
( Aggregate )+
}
This page is generated from IFS Developer Studio at 2021-08-13 08:48.