rules repository

A-2420 Avoid regions without a template.

Severity Warning Check + SQL-based Test Free New

Reason

A region with the template No Template renders only its content, without the theme's title bar, padding, borders or responsive behaviour. It looks different from the rest of the application and bypasses the Universal Theme styling, so theme changes do not reach it. Pick a template such as Standard or Blank with Attributes.

Regions that deliberately render raw HTML or are fully styled by custom CSS or JavaScript are a legitimate exception: use Blank with Attributes there so the intent stays visible.

Example

Non-Compliant Example

page 10 (
    // ...
    region details (
        name: Details
        type: staticContent
        // no appearance.template
        // ...
    )
)
Issues
LineColumnMessage
312Region has no template.

Compliant Solution - ★★★★★

page 10 (
    // ...
    region details (
        name: Details
        type: staticContent
        appearance {
            template: @/standard
        }
        // ...
    )
)

Tests

Test SQL query

select aa.workspace || '.' || aa.alias || '.' || r.page_id || '.' || coalesce(r.static_id, to_char(r.region_id)) as identifier,
       'Region ' || r.region_name || ' on page ' || r.page_id || ' of app ' || aa.alias || ' in '
         || aa.workspace || ' has no template.' as message
  from apex_application_page_regions r
  join apex_applications aa
    on aa.application_id = r.application_id
       and aa.workspace = r.workspace
 where aa.workspace in (#ApexWorkspaces#)
   and r.template = 'No Template'

Test results

IdentifierMessageMigration
WORKSPACE.CUSTOMERS.10.DetailsRegion Details on page 10 of app CUSTOMERS in WORKSPACE has no template.-

Parameters

Use parameters to customize the rule to your needs.

ParameterDescriptionDefault Value
ApexWorkspacesComma-separated List of APEX workspaces owning APEX applications to check.dblinter, dbl_gui

References