rspec/rules/S1617/rpg/rule.adoc

52 lines
1.3 KiB
Plaintext

== Why is this an issue?
Error handling should be defined on file operations to ensure correct processing of program failures rather than defaulting to an abnormal program end. This rule checks two things:
* ``++INFSR++`` error handling is defined on file operations.
* error handling is delegated to an appropriately named routine.
=== Noncompliant code example
Given the default parameter value, ``++^*PSSR$++``:
[source,rpg]
----
F* Noncompliant
FIPBDCCP IF E K DISK
FEP210 CF E WORKSTN
F SFILE(EP21003S:RELN03)
FEP471R1 O E PRINTER
F USROPN
F INFDS(W1SF01)
----
=== Compliant solution
[source,rpg]
----
FIPBDCCP IF E K DISK INFSR(*PSSR)
FEP210 CF E WORKSTN INFSR(*PSSR)
F SFILE(EP21003S:RELN03)
FEP471R1 O E PRINTER INFSR(*PSSR)
F USROPN
F INFDS(W1SF01)
----
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
include::message.adoc[]
include::parameters.adoc[]
endif::env-github,rspecator-view[]