RM COBOL-85...anyway this concept isn't much different compared to what your caller is, for all subroutines use these.
Variables are passed either by value or by reference. This is probably what you will be most concerned with. The COBOL calling program will need to match the subroutine in how it is called.
A "By Value" reference is copied to an internal reference in the function. If it's not set as a constant, it can be changed, but changes will not be reflected outside of the function.
A "By Reference" reference is passed via pointer reference. It can be changed, and the change will be reflected in the main program after the call.
There are also many other methods regarding the order/way parameters are passed to subroutines. You will need to match this in the subroutine with how RM-COBOL handles things. But with the way your post reads, you are modifying and not creating, so this should not be a concern for you.
Measurement is not management.