rules repository

G-7110

🆓
Warning

Try to use named notation when calling program units.

Stored Object Check

Reason

Named notation makes sure that changes to the signature of the called program unit do not affect your call.

This is not needed for standard functions like (to_char, to_date, nvl, round, etc.) but should be followed for any other stored object having more than one parameter.

Note

The rule parameters SchemaNames and OracleMaintainedSchemas allow the check to distinguish schema-qualified standalone functions and procedures from package-qualified calls. Calls to standalone functions and procedures are excluded from this rule, even when they are prefixed with a schema name.

Example

Non-Compliant Example

declare
   r_employee employees%rowtype;
   co_id      constant employees.employee_id%type := 107;
begin
   employee_api.employee_by_id(r_employee,co_id);
end;
/
Issues
LineColumnMessage
532Use named notation.
543Use named notation.

Compliant Solution - ★★★★★

declare
   r_employee employees%rowtype;
   co_id      constant employees.employee_id%type := 107;
begin
   employee_api.employee_by_id(
      out_row        => r_employee
     ,in_employee_id => co_id
   );
end;
/

Parameters

Use parameters to customize the rule to your needs.

ParameterDescriptionDefault Value
SchemaNamesComma-separated list of database schemas owning the database objects of an application.dbl_owner
OracleMaintainedSchemasComma-separated list of Oracle maintained schemas with public synonyms in Oracle AI Database 26ai Free Release 23.26.0.0.0. Object prefixed with these owners are accepted.appqossys, audsys, ctxsys, dvsys, flows_files, gsmadmin_internal, lbacsys, mdsys, outln, sys, system, wmsys, xdb

References