rspec/rules/S2536/plsql/rule.adoc

42 lines
711 B
Plaintext
Raw Normal View History

2021-04-28 16:49:39 +02:00
Procedures which don't accept parameters are likely to either not be reused that often or to depend on global variables instead. Refactoring those procedures to take parameters will make them both more flexible and reusable.
2021-04-28 16:49:39 +02:00
== Noncompliant Code Example
----
SET SERVEROUTPUT ON
DECLARE
name VARCHAR2(42) := 'John';
PROCEDURE print_name; -- Noncompliant
PROCEDURE print_name AS -- Noncompliant
BEGIN
DBMS_OUTPUT.PUT_LINE('Name: ' || name);
END;
BEGIN
print_name;
END;
/
----
2021-04-28 16:49:39 +02:00
== Compliant Solution
----
SET SERVEROUTPUT ON
DECLARE
PROCEDURE print_name(name VARCHAR2) AS -- Compliant
BEGIN
DBMS_OUTPUT.PUT_LINE('Name: ' || name);
END;
BEGIN
print_name('John');
END;
/
----