It could be useful to know some more details about your database and forms versions.
It sounds to me like a network issue, but I think it could also be that the database connection is timing out due to some database/sqlnet setting.
Is there some network device between the database and the application (or app server) ? If yes, I would review any timeout setting on that device.
I found this on metalink, but with no solution:
While trying to open up an AERS case, error message FRM-40733 appears.
Session appears to hang and user must restart their application session.
FRM-40733 PL/SQL built in DBMS_error_code failed
This can be a generic error for any application that exploits FORMS.
1. If at a particular point in time,the instance encountered an error
( eg : ORA-3113 – end of file on communication channel …or
ORA-3114 – database connection lost … or some Internal ORA -600 error
that lead to stoppage of any of the Background Processes…
( SMON, PMON ……) then the form would have abruptly thrown the exception
as its database connection thread to the kernel can no
longer communicate to the DB kernel. At that point in time the form is capable
of throwing any error message. </pre>
If the forms can be modified, you could try to set some timer in the form, to issue any simple select statement against the database every 5 minutes, and see what happens.
Hope this helps.