Sterling Rules

Summary of coding rules and checks

The following lists the violations that can be produced by SI-Precise while analyzing Sterling/Gertran code. They are broken down below into the categories standards, performance, correctness, seceurity and other.


Validate queue names against a naming standard

Queue names should comply to a set length, should be in uppercase, should not contain underscores, cannot start with SYSTEM. and should not contain blanks. Enforcing a queue names adds to consistency and prevents any issues at run time with MQ names that affect functionality.

No default error handler

No default error handler has been added to the workflow.

In process fault handler

An in process fault handler has been defined where the architecture prefers no handlers be setup.

Process, operation or sequence has no name

A process, operation or sequence has been found that does not have a name assigned.


JDBC Table not defined

The code is referencing a table in a JDBC query that cannot be found in the development database. The table maybe missing from the deployment scripts.

Lock and Unlock do not match

A locked resource may not be unlocked which can cause deadlocks and performance issues.

Duplicate sequence found

2 or more sequences with the same name have been found.

Process called but defined

A process is being called/invoked that cannot be found.

Process invoking self

A process is invoking itself and may cause an infinite loop.

Dead code found

A process step has been found after an en exception is thrown and cannot be reached.

Case not defined

A rule has no CASE associated.

Case has no matching rule

A CASE has no matching rule.


Prefer SFTP over FTP

Use SFTPClientBeginSession over FTPClientBeginSession in process flows.