1 Reply Latest reply on Aug 8, 2013 2:07 PM by 42f36e31-ef33-446f-ad97-cfe4ab242540

    frmcmp cannot compile modules containing SQL code though connected to the database




      i checked several hundreds of forum posts on the net without finding a solution.


      I have a Linux server with WebLogics 11.1 (11gR1) and FormsRuntime installed.


      I'm logged in as root.


      I set all environment variables according to the values in default.env.

      Additionally I set TERM and ORACLE_TERM to vt220. And TNS_ADMIN to the location of sqlnet.ora and tnsnames.ora.


      I compile a simple .pll containing just the following code:


      PROCEDURE test IS

        a INTEGER :=0;






      frmcmp_batch module=TESTLIBPLAIN.pll userid=myuser/mypassword@mydb module_type=LIBRARY output_file=TESTLIBPLAIN.plx compile_all=yes logon=yes batch=no


      result: compilation successful. .plx generated.



      now I try to compile another .pll just containing the follwing code:


      PROCEDURE test IS

        a INTEGER :=0;


         select 1 into a from dual;




      frmcmp_batch module=TESTLIBSQL.pll userid=myuser/mypassword@mydb module_type=LIBRARY output_file=TESTLIBSQL.plx compile_all=yes logon=yes batch=no


      result: error:


      Forms 11 (Form Compiler) Version (Production)


      Copyright (c) 1982, 2010, Oracle and/or its affiliates.  All rights reserved.


      Oracle Database 10g Enterprise Edition Release - Production

           With the Partitioning, OLAP and Data Mining options

      PL/SQL Version (Production)

      Oracle Procedure Builder V11. - Production

      Oracle Virtual Graphics System Version (Production)

      Oracle Multimedia Version (Production)

      Oracle Tools Integration Version (Production)

      Oracle Tools Common Area Version

      Oracle CORE      Production

      Compiling library TESTLIB...

        Invalidating Procedure Body TEST......

        Compiling Procedure Body TEST......

      ERROR 0 at line 5, column 1

        SQL Statement ignored

      Closing library TESTLIB...

      Compilation errors on TEST:

      PL/SQL ERROR 0 at line 5, column 1

      SQL Statement ignored


      Failed to generate library.


      FRM-30312: Failed to compile the library.


      both libraries differ in having/not having SQl commands used.


      I tried to compile some more complex .pll and .fmb containg SQL code. I get similar error messages. The messages i get for each module are the same I would get when compiling the module with FormBuilder 9i (Windows) without being  connected to the database.


      So my first thought was, that frmcmp_batch cannot log into the database.



      Starting frmcmp_batch with an invalid username, passwort or non existing database (resp not in tnsnames.ora), results in appropiate error messages (TNS not found, logon denied etc).

      With myuser/mypassword@mydb I don' t get that kind of messages.


      sqlplus myuser/mypassword@mydb works.

      myuser can access all objects in database mydb.


      tnsping mydb works.


      When I check v$session on mydb while(!) frmcmp_batch is running, I see that there actually is a db session, created from myuser: DB-User=myuser, terminal=myappsever, osuser=root, remote process=frmcmp_batch.  And status of this db session is ACTIVE.



      So, frmcmp_batch fails with error messages I would expect only when there is no database connection, though it is connected !!



      Any ideas what could be wrong with my configuration ?


      Help appreciated.