Remember that there is a new version PL/SQL engine taking care of calls to the database. I stumbled upon a strange error moving from 10g to 11g.
Now in 11g, the PL/SQL is more restricted in functions behaviour.
A function MUST return av value. So code that looked like this, roughly, in Forms 10g passed, but should not have passed. When run in a 11g environment there are strange behaviour of this new more robust view of a function. Some of these errors can be hard to find, but a &debug and/or
does the trick.
Here is what passed earlier, but no longer during run-time. It compiles, but is giving strange errors in Forms 11g. Note that the solution is just to RETURN something in the THEN-clause.
FUNCTION MyFunc(i_personId) RETURN VARCHAR2 IS
/* Do something */
ORA-01704: string literal too long
5 weeks ago