Thursday, March 7, 2013

E-Business Suite: How to Uncover Which Synonym is Invalid.

E-Business Suite: How to Uncover Which Synonym is Invalid.
While Compiling APPS Packages:
  ALTER PACKAGE package-name COMPILE BODY;
  ORA-00980: synonym translation is no longer valid


        sqlplus APPS
        prompt #---------------------------------------------------------------#
        prompt #- What Synonyms are Invalid (Have No Source-Object) ??        -#
        prompt #- When Compiling a Package:                                   -#
        prompt #-        ORA-00980: synonym translation is no longer valid    -#
        prompt #-                                                             -#
        prompt #- This SQL-Script will List ALL the Invalid Synonyms.         -#
        prompt #---------------------------------------------------------------#

        COLUMN  sownr   FORMAT A9               HEADING 'Schema|Owner'
        COLUMN  sname   FORMAT A29              HEADING 'Synonym Name'
        COLUMN  townr   FORMAT A9               HEADING 'Table|Owner'
        COLUMN  tname   FORMAT A29              HEADING 'Table Name'
        COLUMN  dblnk   FORMAT A9               HEADING 'Table Name'

        ALTER SESSION set NLS_DATE_FORMAT = 'DD-MON-YY HH24:MI:SS';

        SELECT  owner           sownr,
                synonym_name    sname,
                table_owner     townr,
                table_name      tname
          FROM  dba_synonyms dbas
         WHERE  table_owner not in('SYSTEM','SYS')
           AND  table_owner =     ('&SCHEMA_NAME')
           AND  db_link is null
           AND  not exists
                (SELECT 1
                 FROM   dba_objects dbao
                WHERE   dbas.table_owner=dbao.owner
                  AND   dbas.table_name=dbao.object_name);

No comments:

Post a Comment