A simple CONNECT that works fine on Oracle 11g fails with ORA-12560 on Oracle 12c and higher.
It appears the trailing spaces on user id and password are no longer trimmed causing the connect to fail, and the result is the same with PICX=CHARF or PICX=VARCHAR2.
As of Oracle 12cR1, this is the new behavior of Pro*COBOL – trailing spaces in the password are not removed.
In order to accommodate this change, Oracle introduces a new option "trim_password" to Pro*COBOL as of 12cR1. However, this option is never mentioned in the Oracle documentation until the Release Note in 12cR2:
By default on Windows, trim_password is set to NO, whereas it is set to YES on Unix/Linux.
You may then do one of the followings: