ORA-04063: package body 'SYS. DBMS_CUBE_EXP"got error in expdp

Oracle 11.2.0.2 on Redhat. Received the error when export a schema
[oracle@cchorbi1 admin]$ expdp bi/pass@cchbi2 schemas=BISTG directory=DATA_PUMP_DIR parallel=12 
dumpfile=bistg_bi2_0315_%U.dmp logfile=bistg_bi2_0315.log
....
Starting "BI"."SYS_EXPORT_SCHEMA_02":  bi/********@cchbi2 schemas=BISTG directory              
=DATA_PUMP_DIR parallel=12 dumpfile=bistg_bi2_0315_%U.dmp logfile=bistg_bi2_0315.              log
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.GET_TABLE_DATA_OBJECTS []              
ORA-31642: the following SQL statement fails:
BEGIN "SYS"."DBMS_CUBE_EXP".SCHEMA_CALLOUT(:1,0,1,'11.02.00.00.00'); END;
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_METADATA", line 1245
ORA-04063: package body "SYS.DBMS_CUBE_EXP" has errors
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_CUBE_EXP"

ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.KUPW$WORKER", line 8353
Thhs is a routine operation and still works. Recent changes to the database are down some patterns that we thought is perhaps not helpful, refer to
http://abcdba.com/abcdbaserver11gdefaultschema 
. Removed default schema users are
ANONYMOUS,APPQOSSYS,CTXSYS,DIP,EXFSYS,MDDATA,MDSYS,OE,OLAPSYS,
ORACLE_OCM,ORDDATA,ORDPLUGINS,ORDSYS,OWBSYS,OWBSYS_AUDIT,PM,SCOTT,
SH,SI_INFORMTN_SCHEMA,SPATIAL_CSW_ADMIN_USR,SPATIAL_WFS_ADMIN_USR
WMSYS
The remaining default schemas are
APEX_030200,APEX_PUBLIC_USER,DBSNMP,FLOWS_FILES,MGMT_VIEW,
OUTLN,SYS,SYSMAN,SYSTEM,XDB,XS$NULL
SYS objects. DBMS_CUBE_EXP causing ORA-06508 exists but not valid
select owner,object_name,object_type,status from dba_objects where object_name='DBMS_CUBE_EXP'
SYS     DBMS_CUBE_EXP     PACKAGE             VALID
SYS     DBMS_CUBE_EXP     PACKAGE BODY     INVALID
PUBLIC     DBMS_CUBE_EXP     SYNONYM             VALID
We cannot restore the State before drooping users as it occurred last week and the backup is replaced by a more recent and a newapplication schema is generated and we want to keep?

Is there a way to solve this problem without restoring database?

Thank you

In fact, I had the same problem with DBMS_CUBE_EXP. Oracle Enterprise Manager alert recommended remove EXECUTE on the public DBMS_LOB. This caused several * SYS packages and package bodies to go invalid.  I have granted EXECUTE the user (CTXSYS, OLAPSYS, ect) and then compiled the object successfully.

Tags: Database

Similar Questions

  • ORA-04063: package body 'SYS. DBMS_SQLTUNE error' during the upgrade

    Hello
    I am trying to upgrade the oracle 10.2.0.2 on 11.2.0.1 with dbua tool database. During the upgrade "Oracle Server" ORA-04063: package body 'SYS. DBMS_SQLTUNE"error has occurred.
    In the oracle server log:

    ---------------------------------------------------------------------------------------------------------------

    REM create the automated SQL Tuning task
    REM If the task exists already (catproc is re-of running) is not error.
    Start
    2 sys.dbms_sqltune_internal.i_create_auto_tuning_task;
    exception 3
    so 4 than others then
    5 if (sqlcode =-13607) then - task already exists
    6 null;
    7 other
    8 lift;
    9 end if;
    10 end;
    11.
    Start
    *
    ERROR on line 1:
    ORA-04063: package body 'SYS. DBMS_SQLTUNE"contains errors
    ORA-06508: PL/SQL: called program unit is not found: 'SYS. DBMS_SQLTUNE ".
    ORA-06512: at line 8 level

    ------------------------------------------------------------------------------------------------------------------------------------------------------------

    After unsuccessful upgrade I have restore and recover the database. SYS. The DBMS_SQLTUNE package and package body were valid. But when I compile them the package becomes invalid.
    I get the error and reach 390221.1 metalink Note:

    ------------------------------------------------------------------------------------------------------------------------------------------------------

    Solution
    -Drop synonyms
    Drop public synonym existsnode.
    excerpt from Drop public synonym;

    ----------------------------------------------------------------------------------------------------------------------------------------------------

    But there are no synonyms, which is mentioned in this note in my PB.

    How can I solve this problem? Thank you.

    If you have not read the note ORA-04063: package body 'SYS. DBMS_SQLTUNE' errors - upgrade to 10 G and 11 G fails on ID Dbms_sqltune 1271490.1+?

    Nicolas.

  • ORA-04063: package body 'SYS. DBMS_LOGMNR_INTERNAL"contains errors

    Dear all,

    On my production server database RAC node 2, with 11 GR 2 and Linux is the operating system.

    Last month, I created a new tablespace and set it up as a logminer tablespace by using the command:
    EXECUTE DBMS_LOGMNR_D.SET_TABLESPACE ('TBS_LOGMINER');

    Today morning I accidentally dropped the TBS_LOGMINER tablespace and don't have any backup of the tablespace.

    Now when I recreate the tablespace and run the command:

    EXECUTE DBMS_LOGMNR_D.SET_TABLESPACE ('TBS_LOGMINER');

    It returns the following error:

    ERROR on line 1:
    ORA-04063: package body 'SYS. DBMS_LOGMNR_INTERNAL"contains errors
    ORA-06508: PL/SQL: called program unit is not found:
    * "SYS. DBMS_LOGMNR_INTERNAL. "
    ORA-06512: at "SYS." DBMS_LOGMNR_D', line 135
    ORA-06512: at line 1

    Even when I tun and expdp exp
    For exp ORA-04063: package body 'SYS. DBMS_LOGREP_UTIL"contains errors
    For expdp
    ORA-04063: package body 'SYS. DBMS_INTERNAL_LOGSTDBY"contains errors
    ORA-06508: PL/SQL: called program unit is not found: 'SYS. DBMS_INTERNAL_LOGSTDBY ".
    ORA-06512: at "SYS." "KUPV$ FT", line 991
    ORA-04063: package body 'SYS. DBMS_LOGREP_UTIL"contains errors
    ORA-06508: PL/SQL: called program unit is not found: 'SYS. DBMS_LOGREP_UTIL ".

    I tried to compile objects disabled utlrp.sql running, but it did not help.

    Its my production environment and I doubt that I could have run catalog.sql and catproc.sql that can cause other problems as well.

    Please guide how to pass through this error.

    Kind regards
    Imran
    Its my production environment and I doubt i might have to run catalog.sql and catproc.sql that may cause other problems as well.
    

    Why? You manipulated SYS?
    running catalog.sql and catproc.sql in a normal situation only takes time and nothing else.

    ---------
    Sybrand Bakker
    Senior Oracle DBA

  • ORA-04063: package body 'WMSYS. LTADM"has errors

    Hello world

    Could you help me with this:

    -After upgrading oracle 10.2.0.4 10.2.0.1, expdp export displays the following error:

    Treatment of type of object DATABASE_EXPORT, DIAGRAM, POST_SCHEMA, PROCOBJ

    ORA-39127: unexpected error of the call to export_string: = WMSYS.LT_EXPORT_PKG.schema_info_exp ('SYS', 1,1, '10.01.00.02.00', newblock)

    ORA-04063: package body 'WMSYS. LTADM"has errors

    ORA-06508: PL/SQL: called program unit is not found: 'WMSYS. LTADM.

    ORA-06512: at "WMSYS.LT_EXPORT_PKG", line 906

    ORA-06512: at line 1

    ORA-06512: at "SYS." Dbms_metadata", line 5419

    ...

    Work 'SYSTEM '. "" SYS_EXPORT_FULL_09 "completed with error (s 1) at 20:12:07

    -After execution of utlrp.sql:

    SQL > select text of dba_errors, whose name = "LTADM."

    TEXT

    --------------------------------------------------------------------------------

    PL/SQL: ORA-00980: synonym translation is no longer valid

    PL/SQL: SQL statement ignored

    Thank you

    Hello

    Try checking all of the synonyms mentioned in this list:

    Select * from dba_dependencies where name = 'LTADM' and REFERENCED_TYPE = 'SYNONYM '.

    See you soon,.

    Rich

  • upgrade from 12.2 to 12.2.4 ORA-04063: package body "APPS. AD_ZD_PREP"contains errors

    Hello

    do 12.2 upgrade to 12.2.4 (doc: 1617458.1) did all the patch (doc: 1594274.1()

    1617461.1 section 3.2 step 5 (patch 18283295, 20034256,20075842) applied correctly

    apply also 4.1 critical fixes to AD (patch 20125137( )

    and in section 3.2 step 6 generate this error:

    AutoPatch error:

    Error: Cannot run enable_custom_user

    AutoPatch - aiuoraEnableCustom: INFO: ORA-04063: package body "APPS. AD_ZD_PREP"contains errors

    ORA-06508: PL/SQL: called program unit is not found: 'APPS. AD_ZD_PREP ".

    ORA-06512: at line 1

    ##

    SQL > select object_name, object_type of object where status = 'INVALID ';

    OBJECT_NAME OBJECT_TYPE

    ------------------------------ -------------------

    MATERIALIZED VIEW OE_ITEMS_MV

    MATERIALIZED VIEW OZF_EARNING_SUMMARY_MV

    ##

    ###

    SQL > SELECT abbreviation, codelevel FROM AD_TRACKABLE_ENTITIES WHERE abbreviation in ('T2K', 'ad');

    ABBREVIA CODELEVEL

    -------- ---------

    C.5 announcement

    T2K C

    ###

    ####

    file: 1617461_1_adop step6.txt

    contain the adoption order run from doc: 1617461.1 section 3.2 step 6

    file: 19045166_diagnostic_info_serveurv12.serveurvm.zip

    contain the diagnosis of the 19045166

    file: 17537119_check.txt

    contain the diagnosis of the 17537119

    ####

    Please confirm that all the patches of RDBMS postinstall.sql scripts have been executed according to the instructions in the Readme of each patch.

    Thank you

    Hussein

  • ORA-04063: package body "APPS. AD_FILE_SYS_SNAPSHOTS_PKG"contains errors

    Dear Sir

    OS: OUL5x6
    EBS R12 12.0.6
    running patch 7303030 12.1.1 upgrade



    ........
    ....
    Complete the cleaning of data base for the previous session.



    Try to get a lock...


    Attempt to instantiate the snapshot current view...
    ORA-04063: package body "APPS. AD_FILE_SYS_SNAPSHOTS_PKG"contains errors
    ORA-06508: PL/SQL: called program unit is not found: 'APPS. AD_FILE_SYS_SNAPSHOTS_PKG ".
    ORA-06512: at line 2

    AutoPatch error:
    Error executing statement (curr-vw inst)

    Call adusnapInstCurrVwSnapshot (AT_ebstestap2, 12.0.6) error.
    Error calling adphistLoadPtchHistFromFStoDB2

    Update of the snapshot current view...
    ORA-04063: package body "APPS. AD_FILE_SYS_SNAPSHOTS_PKG"contains errors
    ORA-06508: PL/SQL: called program unit is not found: 'APPS. AD_FILE_SYS_SNAPSHOTS_PKG ".
    ORA-06512: at line 2

    AutoPatch error:
    Error executing statement (updt curr-vw)



    Enter the directory where your Oracle Applications patch has been unloaded

    The default directory is [/ u01/TMP/7303030]


    ------
    After the execution of adpatch and receive errors above.
    Please advise a solution.
    Thank you very much
    Kind regards
    Tom

    Tom

    .. but for the workaround, I have set the parameter PLSQL_CODE_TYPE = INTERPRETED and restarted the database.
    then why I still get this error.

    Did you start the patch since the beginning?

    I think that this must be set to NATIVE as shown (Note: 396009.1). However, if the above does not help, just wait for help.

    Kind regards
    Hussein

  • ORA-04063: package body "APPS. HZ_PARTY_STAGE"contains errors

    Hello

    Received the error when compile. Checked in the Note: 427418.1 did not work. Help, please. It's 12.1.3, 11.2.0.3 Linux database.

    SQL > alter package APPS. HZ_PARTY_STAGE compile body;

    WARNING: The bodies of Package modified with compilation errors.

    SQL > show err

    Errors for BODY of PACKAGE applications. HZ_PARTY_STAGE:

    LINE/COL ERROR

    -------- -----------------------------------------------------------------

    85/5 PL/SQL: statement ignored

    85/5 PLS-00201: identifier ' AD_CTX_DDL. DROP_PREFERENCE' must be

    has said

    95/5 PL/SQL: statement ignored

    95/5 PLS-00201: identifier ' AD_CTX_DDL. CREATE_PREFERENCE' must be

    has said

    96/5 PL/SQL: statement ignored

    96/5 PLS-00201: identifier ' AD_CTX_DDL. SET_ATTRIBUTE' must be declared

    3313/28 PL/SQL: statement ignored

    LINE/COL ERROR

    -------- -----------------------------------------------------------------

    3313/28 PLS-00201: identifier ' AD_CTX_DDL. SYNC_INDEX' must be declared

    3322/27 PL/SQL: statement ignored

    3322/27-PLS-00201: identifier ' AD_CTX_DDL. SYNC_INDEX' must be declared

    3352/24 PL/SQL: statement ignored

    3352/24 PLS-00201: identifier ' AD_CTX_DDL. SYNC_INDEX' must be declared

    3362/23 PL/SQL: statement ignored

    3362/23 PLS-00201: identifier ' AD_CTX_DDL. SYNC_INDEX' must be declared

    3399/26 PL/SQL: statement ignored

    3399/26-PLS-00201: identifier ' AD_CTX_DDL. SYNC_INDEX' must be declared

    3409/26 PL/SQL: statement ignored

    3409/26-PLS-00201: identifier ' AD_CTX_DDL. SYNC_INDEX' must be declared

    LINE/COL ERROR

    -------- -----------------------------------------------------------------

    3447/27 PL/SQL: statement ignored

    3447/27-PLS-00201: identifier ' AD_CTX_DDL. SYNC_INDEX' must be declared

    SQL > grant execute on AD_CTX_DDL. DROP_PREFERENCE applications;

    Grant execute on AD_CTX_DDL. Applications DROP_PREFERENCE

    *

    ERROR on line 1:

    ORA-04042: procedure, function, package, or package body does not exist

    The solution in the doc, you mentioned in your first post. Run the dctxpkg.sql script and pass the correct settings and make sure that it runs successfully.

    Thank you

    Hussein

  • PACKAGE BODY APPS. AD_ZD_ADOP contains errors

    APP TIER - Linux - SLES 11 - SP2 - x86_64

    DB LEVEL - Linux for system Z - SLES 11 - SP2 - s390

    I encounter errors in the body to Package APPS. AD_ZD_ADOP, that has brought all the patches to a status quo on our schedule instance.

    The sequence of events have been

    The following hotfixes have been applied.

    1. Patch 19462638
    2. Patch 19197270
    3. Patch 21132723
    4. 19330775
    5. 20677045
    6. 19259764

    Doc 1617461.1 was followed - B path of

    After Patch 19259764 has been applied, all steps until step 8 of Doc 1617461.1 have been completed.

    Failure of the fs_clone step (step 9). My colleague opened a SR - advice was far from expected.

    Yesterday, I took this with success and more cloned the fix for the file system to perform file system (1383621.1) - however, I'm still not able to run fs_clone with success.

    Even a basic ADADMIN session fails.

    Here are the errors while trying to compile APPS package bodies. AD_ZD_ADOP

    SQL > alter package APPS. AD_ZD_ADOP compile body;

    WARNING: The bodies of Package modified with compilation errors.

    SQL > show errors;
    Errors for BODY of PACKAGE applications. AD_ZD_ADOP:

    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    2503/3 PL/SQL: statement ignored
    2503/7 PLS-00201: identifier ' SYS. DBMS_METADATA_UTIL' must be declared
    SQL >

    Also while trying to launch ADADMIN, I get errors themselves.

    Error of Administration AD:

    ORA-04063: package body "APPS. AD_ZD_ADOP"contains errors

    Could not insert the record of the action in the table of patches

    Error of Administration AD:

    Error when you try to insert adadmin task CMP_INVALID action

    Update running adadmin of failure actions

    Error of Administration AD:

    The following ORACLE error:

    ORA-01756: city not properly finished chain

    occurred while executing the SQL statement:

    UPDATE ad_adop_session_patches set status = 'F' where status = 'R' and

    as numero_de_bogue ' ADADMIN

    Error of Administration AD:

    Table ad_adop_session_patches update errors

    You must check the file

    /U02/fs_ne/EBSapps/log/ADadmin/log/ADadmin.log

    to find errors.

    Can someone please. I have also a SR - but nice try various channels to find a solution.

    Hello

    The necessary subsidies on the SYS package may be missing. DBMS_METADATA_UTIL.

    Try this command (as sysdba) and compile the package:

    Grant execute on SYS. DBMS_METADATA_UTIL applications;

    Kind regards

    Bashar

  • Package body

    I get the following error
    >
    Error on line 10: PLS-00103: encountered the symbol "CREATE".
    1. create or replace package auditpkg AS - package specification
    2. procedure auditproc (p_tablename varchar2, varchar2 p_columnname,
    (3 p_oldval varchar2, p_newval varchar2);
    >

    If I remove the stanza of package body , there is no error
    This is my code:
    create or replace package auditpkg AS -- package spec
      procedure auditproc( p_tablename varchar2, p_columnname varchar2,
        p_oldval varchar2, p_newval varchar2 );
      procedure auditproc( p_tablename varchar2, p_columnname varchar2,
        p_oldval number, p_newval number );
      procedure auditproc( p_tablename varchar2, p_columnname varchar2,
        p_oldval date, p_newval date );
    end auditpkg;
    
    create or replace package body auditpkg AS -- package body   
         procedure auditproc
    ( p_tablename varchar2, p_columnname varchar2, p_oldval varchar2, p_newval varchar2 ) 
         IS
         BEGIN
             if (p_oldval is null and p_newval is not null)
             or (p_oldval is not null and p_newval is null)
             or (p_oldval != p_newval)
             then
    insert into audit_logs( tablename, columnname, username, oldval, newval, auditdate )
         values (p_tablename, p_columnname, USER, p_oldval, p_newval, SYSDATE );
             end if;
         END auditproc;
    END auditpkg;   

    You still building package and package body hurt
    one create or replace package auditpkg
    and we create or replace package body auditpkg

    create or replace package auditpkg AS -- package spec
      procedure auditproc( p_tablename varchar2, p_columnname varchar2,
        p_oldval varchar2, p_newval varchar2 );
      procedure auditproc( p_tablename varchar2, p_columnname varchar2,
        p_oldval number, p_newval number );
      procedure auditproc( p_tablename varchar2, p_columnname varchar2,
        p_oldval date, p_newval date );
    end auditpkg;
    /
    SHOW ERRORS
    
    create or replace package body auditpkg AS -- package body
         procedure auditproc
                             ( p_tablename varchar2,
                               p_columnname varchar2,
                               p_oldval varchar2,
                               p_newval varchar2 )
         IS
         BEGIN
             if (p_oldval is null and p_newval is not null)
             or (p_oldval is not null and p_newval is null)
             or (p_oldval != p_newval)
             then
                           insert into audit_logs( tablename, columnname, username, oldval, newval, auditdate )
                                  values (p_tablename, p_columnname, USER, p_oldval, p_newval, SYSDATE );
             end if;
         END auditproc;
    
         procedure auditproc
                            ( p_tablename varchar2,
                              p_columnname varchar2,
                              p_oldval number,
                              p_newval number )
         IS
         BEGIN
             if (p_oldval is null and p_newval is not null)
             or (p_oldval is not null and p_newval is null)
             or (p_oldval != p_newval)
             then
                              insert into audit_logs( tablename, columnname, username, oldval, newval, auditdate )
                                   values (p_tablename, p_columnname, USER, p_oldval, p_newval, SYSDATE );
             end if;
         END auditproc;
    
         procedure auditproc
                              (p_tablename varchar2,
                               p_columnname varchar2,
                               p_oldval date,
                               p_newval date )
         IS
         BEGIN
             if (p_oldval is null and p_newval is not null)
             or (p_oldval is not null and p_newval is null)
             or (p_oldval != p_newval)
             then
                              insert into audit_logs( tablename, columnname, username, oldval, newval, auditdate )
                                  values (p_tablename, p_columnname, USER, p_oldval, p_newval, SYSDATE );
             end if;
         END auditproc;
    
    END auditpkg;   
    
    / 
    
  • How to display errors in compiling the package body

    Hi friends,


    My package body is not valid. How to compile it?

    I tried > alter compilation of body package PACKAGE1.

    But I got error.

    I tried > alter compilation package PACKAGE1.

    with compilation errors.

    SQL > show errors

    No errors.


    How can I get the errors of compilation of a package body?

    Thank you very much

    Check with--for the compilation of the body and package

    alter package   compile package
    alter package   compile body
    

    and after that check... display errors

    http://Stanford.edu/dept/ITSS/docs/Oracle/10G/server.101/b10759/statements_2005.htm

    Ravi Kumar

  • Package body error

    Hello people.

    Oracle Database 10 g Express Edition Release 10.2.0.1.0 - product

    PL/SQL Release 10.2.0.1.0 - Production

    Hope you are all well.  I am creating a package as a procedure body, but I get the following error:

    • Error (37.7): PL/SQL: statement ignored
    • Error (38,15): PLS-00201: identifier ' C1. Email_address' must be declared

    I'm fairly inexperienced, so the resolution may be simple, but I'm still confused as to what to do.  Here is my code:

    create or replace 
    PACKAGE BODY            "CHECK_VISA_DATE" 
    AS
    PROCEDURE "VISA_EXPIRY"
    IS
        l_msg_body varchar2(32000) := null;
        l_count number := 0;
    BEGIN
    FOR c1 IN
        (SELECT E.EMPLOYEE_ID,
        E.CLOCK_NUMBER,
        E.LAST_NAME,
        E.FIRST_NAME,
        E.EMAIL_ADDRESS,
        E.VISA_EXPIRY
        FROM EMPLOYEE E,
        EMPLOYEE_CONTRACT EC
        WHERE E.EMPLOYEE_ID = EC.EMPLOYEE_ID
        AND EC.ACTUAL_END IS NULL
        AND EC.FUTURE_CONTRACT = 1
        AND EC.SUB_TASK = 1
        AND E.VISA_EXPIRY < SYSDATE + 60)
    LOOP
      IF l_count = 0
        THEN
            L_MSG_BODY :=
            'As of today, your visa is due to 
            expire in 60 days '||chr(10)||
            CHR(10)||
            ' Visa Expiration: '|| c1.VISA_EXPIRY;
      END IF;
        l_count := l_count + 1;
    END LOOP;
    
    
    IF L_MSG_BODY IS NOT NULL
      THEN
          HTMLDB_MAIL.SEND(
          P_TO => c1.EMAIL_ADDRESS,
          P_BODY => L_MSG_BODY,
          P_SUBJ => 'Visa Expiration '||
          c1.VISA_EXPIRY);
    END IF;
    END "VISA_EXPIRY";
    END "CHECK_VISA_DATE";
    

    Hello

    AquaNX4 wrote:

    ...

    Output is an email, so there really isn't any type of insert statements, or additional information to give...

    If there is no relevant information in AMPEMP or EMP_CONTRACT tables, then you don't need to question the in your procedure.

    • Error (24,112): PLS-00302: component 'VISA_EXPIRY' must be declared

    There is no column called

    VISA_EXPIRis the cursor.  Did you mean to say

    E VISA_EXPIR?

  • ORA-04063: display error

    Hello guys,.

    When I try to open the view in sql developer. I ORA-04063: discovers ". POSTRACK_TR error WIZARD_SURVEY. The SQL code of the view is down, I don't understand what the problem is. I just met this kind of mistake. You have an idea? What should I do?
    CREATE OR REPLACE FORCE VIEW "POSTRACK_TR"."WIZARD_SURVEY" ("SURVEY_TYPE", "GROUPNAME", "MAIN_ORDER", "SUBGROUPNAME", "SUB_ORDER", "QUESTION", "QUESTION_ORDER", "QUESTION_TYPE_NAME", "QUESTION_REQUIRED", "ANSWERS_TYPE", "CATEGORY", "SUB_CATEGORY", "BRAND", "SKU", "BARCODE", "FLAVOR", "PRODUCT_FAMILY", "PACKAGETYPE", "SUPPLIER", "FACTOR", "QUESTION_UID")
    AS
      SELECT DISTINCT sut.survey_type,
        mg.groupname,
        mg.order_number AS main_order,
        sg.subgrouptext AS subgroupname,
        --sgd.sub_order,
        q.question,
        qd.order_number AS question_order,
        qt.question_type_name,
        qd.question_required,
        AT.answers_type,
        c.category ,
        sc.sub_category,
        b.brand,
        sk.sku,
        sk.barcode,
        f.flavor,
        pf.product_family,
        pt.packagetype,
        sp.supplier,
        cs.factor,
        qd.question_uid
      FROM survey_types sut,
        question_def qd,
        main_groups_def mg,
        subgroups sg,
        --sub_groups_def sgd,
        questions q,
        question_type qt,
        answers_types AT,
        categories_suppliers cs,
        categories c,
        sub_categories sc,
        brands b,
        skus sk,
        flavors f,
        product_families pf,
        package_types pt,
        suppliers sp
      WHERE mg.group_id = qd.main_group_id
      AND sg.subgroupid = qd.sub_group_id
        --AND sgd.sub_group_id        = qd.sub_group_id
        --AND sgd.main_group_id       = qd.main_group_id
      AND q.questionid            = qd.question_id
      AND qt.question_type_id     =qd.question_type_id
      AND AT.answers_type_id      = qd.answer_type_id
      AND cs.question_uid(+)      = qd.question_uid
      AND c.category_id(+)        = cs.category_id
      AND sc.sub_category_id(+)   = cs.sub_category_id
      AND b.brand_id(+)           = cs.brand_id
      AND sk.barcode(+)           = cs.barcode
      AND f.flavor_id(+)          = cs.flavor_id
      AND pf.product_family_id(+) = cs.product_family_id
      AND pt.packagetype_id(+)    = cs.packagetype_id
      AND sp.supplier_id(+)       = cs.supplier_id
      AND ((mg.belongto1          =1
      AND qd.belongto1            = 1
      AND sut.survey_type_id      = 1)
      OR ( mg.belongto2           =1
      AND qd.belongto2            = 1
      AND sut.survey_type_id      = 2)
      OR ( mg.belongto3           =1
      AND qd.belongto3            = 1
      AND sut.survey_type_id      = 3)
      OR ( mg.belongto4           =1
      AND qd.belongto4            = 1
      AND sut.survey_type_id      = 4)
      OR ( mg.belongto5           =1
      AND qd.belongto5            = 1
      AND sut.survey_type_id      = 5)
      OR ( mg.belongto6           =1
      AND qd.belongto6            = 1
      AND sut.survey_type_id      = 6)
      OR ( mg.belongto7           =1
      AND qd.belongto7            = 1
      AND sut.survey_type_id      = 7)
      OR ( mg.belongto8           =1
      AND qd.belongto8            = 1
      AND sut.survey_type_id      = 8)
      OR ( mg.belongto9           =1
      AND qd.belongto9            = 1
      AND sut.survey_type_id      = 9)
      OR ( mg.belongto10          =1
      AND qd.belongto10           = 1
      AND sut.survey_type_id      = 10)
      OR (mg.belongto11           =1
      AND qd.belongto11           = 1
      AND sut.survey_type_id      = 11)
      OR ( mg.belongto12          =1
      AND qd.belongto12           = 1
      AND sut.survey_type_id      = 12)
      OR ( mg.belongto13          =1
      AND qd.belongto13           = 1
      AND sut.survey_type_id      = 13)
      OR ( mg.belongto14          =1
      AND qd.belongto14           = 1
      AND sut.survey_type_id      =14)
      OR ( mg.belongto15          =1
      AND qd.belongto15           = 1
      AND sut.survey_type_id      = 15) )
      ORDER BY sut.survey_type,
        mg.order_number,
        --sgd.sub_order,
        qd.order_number;
    In addition, when I type wizard_survey desc, it gives very interesting power?
    desc wizard_survey
    Name               Null Type        
    ------------------ ---- ----------- 
    SURVEY_TYPE             UNDEFINED() 
    GROUPNAME               UNDEFINED() 
    MAIN_ORDER              UNDEFINED() 
    SUBGROUPNAME            UNDEFINED() 
    SUB_ORDER               UNDEFINED() 
    QUESTION                UNDEFINED() 
    QUESTION_ORDER          UNDEFINED() 
    QUESTION_TYPE_NAME      UNDEFINED() 
    QUESTION_REQUIRED       UNDEFINED() 
    ANSWERS_TYPE            UNDEFINED() 
    CATEGORY                UNDEFINED() 
    SUB_CATEGORY            UNDEFINED() 
    BRAND                   UNDEFINED() 
    SKU                     UNDEFINED() 
    BARCODE                 UNDEFINED() 
    FLAVOR                  UNDEFINED() 
    PRODUCT_FAMILY          UNDEFINED() 
    PACKAGETYPE             UNDEFINED() 
    SUPPLIER                UNDEFINED() 
    FACTOR                  UNDEFINED() 
    QUESTION_UID            UNDEFINED() 
    Thanks for your help.

    Published by: 944258 on 11:43 11.Tem.2012

    944258 wrote:
    CREATE OR REPLACE VIEW "POSTRACK_TR" of the FORCE . "" WIZARD_SURVEY ".

    FORCE means create view even if it contains errors. To check what errors are either remove FORCE or, in SQL * more the question:

    SEE ERR WIZARD_SURVEY VIEW

    Or question:

    SELECT * FROM ALL_ERRORS
    WHERE OWNER = "POSTRACK_TR" and NAME = "WIZARD_SURVEY" AND the TYPE = "DISPLAY";

    SY.

  • error during the creation of the Package body

    Hi, I tried the following package is created but the body is created with errors
    CREATE OR REPLACE PACKAGE pack_ttt IS
     TYPE rec_ttt_colinfo IS RECORD (
      columnName VARCHAR2(30));
     TYPE nt_ttt_colInformation IS TABLE OF rec_ttt_colinfo;
     FUNCTION getColumns(schemaNm VARCHAR2 , TableNm VARCHAR2)
      RETURN nt_ttt_colInformation;
    END; 
    CREATE OR REPLACE PACKAGE BODY pack_ttt IS
    function getColumns(
      schemaNm VARCHAR2 , 
      TableNm VARCHAR2) 
     RETURN nt_ttt_colInformation IS
     colvarfunc1 nt_ttt_colInformation;
     EXECUTE IMMEDIATE 'SELECT COLUMN_NAME, DATA_TYPE FROM ALL_TAB_COLUMNS WHERE OWNER = ''' || schemaNm || ''' AND TABLE_NAME = ''' || TableNm || ''''
          BULK COLLECT INTO columnsList;
          RETURN colvarfunc1;
     END;
    END;
    And the error is
    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    7/20     PLS-00103: Encountered the symbol "SELECT COLUMN_NAME, DATA_TYPE
             FROM ALL_TAB_COLUMNS WHERE OWNER =" when expecting one of the
             following:
             := . ( @ % ; not null range default character
             The symbol ":=" was substituted for "SELECT COLUMN_NAME,
             DATA_TYPE FROM ALL_TAB_COLUMNS WHERE OWNER =" to continue.
    
    8/7      PLS-00103: Encountered the symbol "BULK" when expecting one of
             the following:
             * & = - + ; < / > at in is mod remainder not rem
             <an exponent (**)> <> or != or ~= >= <= <> and or like LIKE2_
    
    LINE/COL ERROR
    -------- -----------------------------------------------------------------
             LIKE4_ LIKEC_ between || member SUBMULTISET_

    You forgot to put the begin clause in the service

    CREATE OR REPLACE PACKAGE BODY pack_ttt IS
    function getColumns( schemaNm VARCHAR2 ,  TableNm VARCHAR2) RETURN nt_ttt_colInformation
    IS
      colvarfunc1 nt_ttt_colInformation;
    BEGIN
      EXECUTE IMMEDIATE 'SELECT COLUMN_NAME, DATA_TYPE FROM ALL_TAB_COLUMNS WHERE OWNER = ''' || schemaNm || ''' AND TABLE_NAME = ''' || TableNm || ''''    BULK COLLECT INTO columnsList;
      RETURN colvarfunc1;
    END;
    END;
    
  • package body "APPS. AD_ZD_ADOP' mistakes adoption apply fail

    Hello to any help/solution for this error:

    EBS version 12.2

    Intend to upgrade to 12.2.4 then only may apply Doc-Id 1617461.1 :

    "adoption phase = apply patches = 19330775, 20677045 = /hotpatch merge Yes = yes".

    Validation of the system configuration...

    [ERROR] Could not execute the SQL statement:

    Select AD_ZD_ADOP. The double GET_INVALID_NODES()

    [ERROR] Error message:

    [ERROR] Could not execute the SQL statement:

    Select AD_ZD_ADOP. The double GET_INVALID_NODES()

    [ERROR] Error message:

    [UNEXPECTED] '-1' nodes are listed in the table ADOP_VALID_NODES, but not in the FND_NODES table.

    [UNEXPECTED] To fix this problem, run AutoConfig on the nodes '-1 '.

    [UNEXPECTED] Error checking if it is an instance of multi node

    SQL > ALTER PACKAGE APPS. BODY OF AD_ZD_ADOP OF COMPILATION;

    WARNING: The bodies of Package modified with compilation errors.

    SQL > SHOW ERRORS, PACKAGE BODY APPS. AD_ZD_ADOP

    Errors for BODY of PACKAGE applications. AD_ZD_ADOP:

    LINE/COL ERROR

    -------- -----------------------------------------------------------------

    505/13 PL/SQL: statement ignored

    507/86 PL/SQL: ORA-00904: "SESSION_TYPE": invalid identifier

    511/13 PL/SQL: statement ignored

    513/86 PL/SQL: ORA-00904: "SESSION_TYPE": invalid identifier

    521/12 PL/SQL: statement ignored

    524/18 PL/SQL: ORA-00904: "SESSION_TYPE": invalid identifier

    533/9 PL/SQL: statement ignored

    535/121 PL/SQL: ORA-00904: "SESSION_TYPE": invalid identifier

    575/9 PL/SQL: statement ignored

    577/123 PL/SQL: ORA-00904: "SESSION_TYPE": invalid identifier

    1580/7 PL/SQL: statement ignored

    LINE/COL ERROR

    -------- -----------------------------------------------------------------

    1582/65 PL/SQL: ORA-00904: "SESSION_TYPE": invalid identifier

    SQL >

    Thank you!

    Luis

    Hello

    The solution is:

    1. check that your ad_adop_session_patches.xdf file is version 120.6.12020000.4

    grep Header $AD_TOP/patch/115/xdf/ad_adop_session_patches.xdf

    2. If the version is correct, then run this command (from Bug 18544083 : ADOPTION: ORA-04063: "APPS.) (AD_ZD_ADOP"CONTAINS ERRORS / ORA-00904:"SESSION_TYPE"):

    adjava-mx512m - nojit oracle.apps.fnd.odf2.FndXdfCmp applsys APPS apps APPS thin :: table $AD_TOP/patch/115/xdf/ad_adop_session_patches.xdf $FND_TOP/patch/115/xdf/xsl changedb = y

    Please put in the host current (complete), port, and SID

    NOTE: If you want to test the command first, please change "changedb = y" to "changedb = n".

    3. Please retry compilation AD_ZD_ADOP (or try running ADZDADOPB.pls).

    4. If the compilation of work, retry the patch.

    Kind regards

    Luis

  • PLS-00304: cannot compile &lt; package &gt; body without its specification

    Hi all
    When compiling the below pasted together, I got the following error msg.
    PL/SQL: Compilation unit analysis terminated
    PLS-00304: cannot compile body of 'EDR_RPT_CLASS_BY_TAWT_PACKAGE'
    without its specification
    
    PLS-00905: object HDOT.EDR_RPT_CLASS_BY_TAWT_PACKAGE is invalid
    But me, which forfeit and ppackage specification of the body properly. Please could someone help me find the error

    CREATE OR REPLACE PACKAGE edr_rpt_class_by_tawt_package AS
    
    
    PROCEDURE edr_rpt_gen_class_by_tawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    );
    
    PROCEDURE edr_rpt_gen_class_by_fawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    );
    
    PROCEDURE edr_rpt_gen_class_by_sawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    );
    
    
    PROCEDURE edr_rpt_gen_class_by_triawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    );
    
    PROCEDURE edr_rpt_gen_class_by_qawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    );
    
    FUNCTION  class_count
    (
      in_lane_id                  edr_rpt_by_ranges_output.lane_id%TYPE,
      in_direction_id             edr_rpt_by_ranges_output.direction_id%TYPE,
      in_interval_start_date_time edr_rpt_by_ranges_output.interval_start_date_time%TYPE,
      in_interval_end_date_time   edr_rpt_by_ranges_output.interval_start_date_time%TYPE,
      in_axle_wt_min              edr_cls_by_tawt_report_data.group_weight%TYPE,
      iin_axle_wt_max             edr_cls_by_tawt_report_data.group_weight%TYPE,
      in_class_min                edr_cls_by_tawt_report_data.vehicle_class%TYPE,
      in_class_max                edr_cls_by_tawt_report_data.vehicle_class%TYPE
    )
    RETURN VARCHAR2;
    
    
    END edr_rpt_class_by_tawt_package;
    /
    
    CREATE OR REPLACE PACKAGE BODY edr_rpt_class_by_tawt_package AS
    
       c_front_axle_only         CONSTANT axle_class.group_type%TYPE := -1;
       c_axle_single_group_type  CONSTANT axle_class.group_type%TYPE := 1;
       c_axle_tandem_group_type  CONSTANT axle_class.group_type%TYPE := 2;
       c_axle_tridem_group_type  CONSTANT axle_class.group_type%TYPE := 3;
       c_axle_quadrem_group_type CONSTANT axle_class.group_type%TYPE := 4;
       c_kips_conversion_unit_id CONSTANT units.unit_id%TYPE         := 8;
    
       v_report_axle_group_type  axle_class.group_type%TYPE := 0;
    
    
    FUNCTION  class_count
    (
      in_lane_id                  edr_rpt_by_ranges_output.lane_id%TYPE,
      in_direction_id             edr_rpt_by_ranges_output.direction_id%TYPE,
      in_interval_start_date_time edr_rpt_by_ranges_output.interval_start_date_time%TYPE,
      in_interval_end_date_time   edr_rpt_by_ranges_output.interval_start_date_time%TYPE,
      in_axle_wt_min              edr_cls_by_tawt_report_data.group_weight%TYPE,
      in_axle_wt_max              edr_cls_by_tawt_report_data.group_weight%TYPE,
      in_class_min                edr_cls_by_tawt_report_data.vehicle_class%TYPE,
      in_class_max                edr_cls_by_tawt_report_data.vehicle_class%TYPE
    )
    RETURN NUMBER
    IS
      my_count_result NUMBER(18);
    BEGIN
    
       SELECT NVL(SUM(vehicle_count), 0 )
       INTO my_count_result
       FROM
           (
            SELECT site_lane_id
            FROM   edr_rpt_tmp_report_lanes
            WHERE  edr_rpt_tmp_report_lanes.output_lane_id        = in_lane_id
              AND  edr_rpt_tmp_report_lanes.output_direction_id   = in_direction_id
           ) report_lanes
       JOIN edr_cls_by_tawt_report_data
         ON edr_cls_by_tawt_report_data.site_lane_id          = report_lanes.site_lane_id
       WHERE edr_cls_by_tawt_report_data.bin_start_date_time >= in_interval_start_date_time
         AND edr_cls_by_tawt_report_data.bin_start_date_time <  in_interval_end_date_time
         AND edr_cls_by_tawt_report_data.group_weight >= in_axle_wt_min
         AND edr_cls_by_tawt_report_data.group_weight  < in_axle_wt_max  
         AND edr_cls_by_tawt_report_data.vehicle_class >= in_class_min
         AND edr_cls_by_tawt_report_data.vehicle_class <= in_class_max
         ;
    
       RETURN my_count_result;
    END;
    
    
    FUNCTION get_row_class_counts_text
    RETURN VARCHAR2
    IS
       my_row_counts_text  VARCHAR2(10000);
       my_row_counts_entry  VARCHAR2(10000);
    
       CURSOR row_counts_text IS
         SELECT 'edr_rpt_class_by_tawt_package.class_count('
                           ||'lane_id, '
                           ||'direction_id, '
                           ||'interval_start_date_time, '
                           ||'interval_end_date_time, '
                           ||'range_low, '
                           ||'range_high, '
                           || class_id || ', '
                           || class_id || ') "'|| class_id || '"'
         FROM edr_rpt_tmp_report_classes
         ORDER BY class_id;
    
    BEGIN
    
      my_row_counts_text   := '';
      my_row_counts_entry  := '';
    
      -- generate the speed ranges function calls
      OPEN row_counts_text;
      LOOP
    
        FETCH row_counts_text INTO my_row_counts_entry;
    
        EXIT WHEN row_counts_text%NOTFOUND;
    
        my_row_counts_text := my_row_counts_text || ', ' || my_row_counts_entry;
    
      END LOOP;
      CLOSE row_counts_text;
    
      RETURN my_row_counts_text;
    
    END;
    
    
    
    FUNCTION get_row_totals_text
    RETURN VARCHAR2
    IS
       my_row_count_total_text  VARCHAR2(10000);
    BEGIN
    
      my_row_count_total_text := '';
    
      -- generate the 'total' column function call
      SELECT 'edr_rpt_class_by_tawt_package.class_count('
                           ||'lane_id, '
                           ||'direction_id, '
                           ||'interval_start_date_time, '
                           ||'interval_end_date_time, '
                           ||'range_low, '
                           ||'range_high, '
                           || MIN(class_id) || ', '
                           || MAX(class_id) || ') " "'
      INTO my_row_count_total_text
      FROM edr_rpt_tmp_report_classes;
    
      RETURN ', ' || my_row_count_total_text;
    
    END;
    
    
    
    PROCEDURE apply_default_awt_ranges(in_report_parameter_id   IN   NUMBER)
    IS
    
      my_awt_ranges_count NUMBER(4);
    
    BEGIN
    
     SELECT nvl(count(1),0)
     INTO my_awt_ranges_count
     FROM report_range_parameters
     WHERE REPORT_PARAMETER_ID = in_report_parameter_id
       AND REPORT_PARAMETER_GROUP = 'AXLE_GROUP'
       AND REPORT_PARAMETER_NAME = 'AXLE_NAME';
    
     IF  ( my_awt_ranges_count = 0 )
     THEN
      INSERT INTO report_range_parameters (REPORT_PARAMETER_ID, REPORT_PARAMETER_GROUP, REPORT_PARAMETER_NAME, REPORT_PARAMETER_MIN_VALUE, REPORT_PARAMETER_MAX_VALUE)
        VALUES (in_report_parameter_id, 'AXLE_GROUP', 'AXLE_NAME', '0', '2'); 
        VALUES (in_report_parameter_id, 'AXLE_GROUP', 'AXLE_NAME', '30', '32');
     END IF;
    
    END;
    
    
    PROCEDURE edr_class_by_tawt_use_per_veh
    (
       in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
       in_good_status_mask      IN      NUMBER
    )
    IS
    
     max_axle_group_value NUMBER(12);
    
    BEGIN
    
      DELETE FROM edr_cls_by_tawt_report_data;
     
      COMMIT;
    
      INSERT INTO edr_cls_by_tawt_report_data
                    (
                      site_id,
                      site_lane_id,
                      site_direction_id,
                      site_direction_name,
                      bin_start_date_time,
                      group_weight,
                      bin_id,
                      bin_value
                     )
      SELECT site_id,
             site_lane_id,
             site_direction_id,
             site_direction_name,
             date_time,
             group_weight,
             vehicle_class,
             COUNT(vehicle_class)
      FROM
             (
               SELECT edr_cls_by_tawt_per_veh_data.*
                 FROM edr_cls_by_tawt_per_veh_data           
         GROUP BY date_time,
               site_lane_id,
               group_weight,
               vehicle_class,
               site_id,
               site_direction_id,
               site_direction_name;
    
    END edr_class_by_tawt_use_per_veh;
    
    
    PROCEDURE edr_class_by_tawt_data_type
    (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      in_good_status_mask      IN      NUMBER,
      in_data_type             IN      VARCHAR2,
      out_data_type_used          OUT  VARCHAR2
    )
    IS
      my_bin_entry_count   NUMBER(12,0);
      my_veh_entry_count   NUMBER(12,0);
    BEGIN
    
      IF(UPPER(in_data_type) = 'BINNED') THEN
    
        --  Axle information can only be read from Per Vehicle data records
        --   - using bins-only is not a supported option
        RAISE_APPLICATION_ERROR(-20101,'Binned data cannot be used for this report.');
    
    
      ELSIF    (UPPER(in_data_type) = 'PERVEHICLE')
            OR (UPPER(in_data_type) = 'COMBINED')
      THEN
    
        out_data_type_used := 'Per Vehicle (All Vehicles)';
    
        edr_class_by_tawt_use_per_veh( in_report_parameter_id, in_good_status_mask );
    
      ELSE
         RAISE_APPLICATION_ERROR(-20101,'The data type specified is not recognized.');
      END IF;
    
    END edr_class_by_tawt_data_type;
    
    
    PROCEDURE edr_class_by_tawt_get_veh_data
    (
      in_report_parameter_id   IN   NUMBER,
      in_site_id               IN   NUMBER,
      in_start_date_time       IN   TIMESTAMP,
      in_end_date_time         IN   TIMESTAMP,
      in_report_level_min      IN   NUMBER,
      in_report_level_max      IN   NUMBER
    )
    IS
    
    BEGIN
     
      DELETE FROM edr_cls_by_tawt_per_veh_data;
    
      INSERT INTO edr_cls_by_tawt_per_veh_data
            (
              site_id,
              site_lane_id,
              site_direction_id,
              site_direction_name,
              record_id,
              date_time,
              group_weight,
              vehicle_class,
              group_number,
              vehicle_status,
              vehicle_error_count,
              axle_violations_count,
              group_type          
            )
      SELECT axle_info.site_id,
             axle_info.site_lane_id,
             axle_info.site_direction_id,
             axle_info.site_direction_name,
             axle_info.record_id,
             axle_info.datetime,
             axle_info.group_weight,
             axle_info.v_class,
             axle_info.group_number,
             NVL((SELECT SUM(status_code)
                    FROM traffic_status
                   WHERE traffic_status.record_id = axle_info.record_id), 0) vehicle_status,
             NVL((SELECT COUNT(error_code)
                    FROM traffic_error
                   WHERE traffic_error.record_id = axle_info.record_id), 0) vehicle_error_count,
             NVL((SELECT COUNT(1)
                    FROM axle_weight_violation
                   WHERE axle_weight_violation.record_id = axle_info.record_id), 0) axle_violations_count,
             axle_info.group_type            
        FROM (SELECT site_to_data_source_lane_v.site_id,
                     site_to_data_source_lane_v.site_lane_id,
                     site_to_data_source_lane_v.site_direction_id,
                     site_to_data_source_lane_v.site_direction_name,
                     traffic_record.record_id,
                     traffic_record.datetime,
                     NVL(traffic_class.v_class, 0)   v_class,
                     NVL(axle_class.group_type, 0)   group_type,
                     NVL(axle_class.group_number, 0) group_number,                
                     NVL(TRUNC(sum(convert_units(axle.weight_unit_id,
                                             c_kips_conversion_unit_id,
                                             axle.axle_weight
                                            )
                               )
                           ),
                           0
                         ) group_weight
               FROM  traffic_record
               JOIN  site_to_data_source_lane_v
                 ON  traffic_record.data_source_id = site_to_data_source_lane_v.data_source_id
                AND  traffic_record.lane = site_to_data_source_lane_v.data_source_lane_id                    
           GROUP BY site_to_data_source_lane_v.site_id,
                     site_to_data_source_lane_v.site_lane_id,
                     site_to_data_source_lane_v.site_direction_id,
                     site_to_data_source_lane_v.site_direction_name,
                     traffic_record.record_id,
                     traffic_record.datetime,
                     traffic_class.v_class,                 
                     axle_class.group_type,
                     axle_class.group_number
            ) axle_info
       
    
    END edr_class_by_tawt_get_veh_data;
    
    
    PROCEDURE gen_class_by_axle_type
    (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    )
    AS
    
     
    BEGIN
     
      apply_default_awt_ranges(in_report_parameter_id);
    
      my_date_format_mask   := edr_rpt_generic_package.edr_rpt_get_date_format_mask(in_report_parameter_id);
      my_start_date_time    := edr_rpt_generic_package.edr_rpt_get_start_date_time(in_report_parameter_id, my_date_format_mask);
      my_end_date_time      := edr_rpt_generic_package.edr_rpt_get_end_date_time(in_report_parameter_id, my_date_format_mask);
      my_lane_grouping      := edr_rpt_generic_package.edr_rpt_get_lane_grouping(in_report_parameter_id);
      my_site_id            := edr_rpt_generic_package.edr_rpt_get_site_id(in_report_parameter_id);
      my_selected_data_type := edr_rpt_generic_package.edr_rpt_get_data_type(in_report_parameter_id);
    
      -- ensure selected classes and lanes temp tables have been populated
      edr_rpt_generic_package.edr_rpt_gen_tmp_lanes(in_report_parameter_id);
      edr_rpt_generic_package.edr_rpt_gen_tmp_classes(in_report_parameter_id);
      edr_rpt_generic_package.edr_rpt_gen_tmp_speed_ranges(in_report_parameter_id);
    
      my_good_weight_statuses_mask   := edr_rpt_generic_package.get_good_weight_status_mask(in_report_parameter_id);
    
    
      edr_rpt_generic_package.edr_rpt_gen_inclusion_table
      (
        in_report_parameter_id,
        my_date_format_mask,
        my_start_date_time,
        my_end_date_time
      );
    
      edr_rpt_generic_package.edr_rpt_gen_grouping_table
      (
        in_report_parameter_id,
        my_date_format_mask,
        my_start_date_time,
        my_end_date_time
      );
    
      edr_class_by_tawt_get_veh_data
      (
        in_report_parameter_id,
        my_site_id,
        my_start_date_time,
        my_end_date_time,
        0,                          --Hardcoded until reclassification is supported.
        0                           --Hardcoded until reclassification is supported.
      );
    
      edr_class_by_tawt_data_type
      (
        in_report_parameter_id,
        my_good_weight_statuses_mask,
        my_selected_data_type,
        my_used_data_type
      );
    
    
      edr_rpt_generic_package.gen_rpt_by_ranges_output_table
      (
        in_report_parameter_id,
        'AXLE_GROUP',
        'AXLE_NAME'
      );
    
      COMMIT;
      my_report_data_statement :=
          ' SELECT rank "Rank", '
        ||       ' row_type "Row Type", '
        ||       ' interval_start_date_time "Date", '
        ||       ' interval_start_date_time, '
        ||       ' range_label "Chart X-Axis", '
        ||       ' lane_id "Group Id" , '
        ||       ' ''None'' "Group Name", '
        ||       ' range_label "Speed (mph)" '
        ||         get_row_class_counts_text
        ||         get_row_totals_text
        ||       ' FROM edr_rpt_by_ranges_output '
        ||       ' ORDER BY lane_id, '
        ||                ' direction_id, '
        ||                ' interval_start_date_time, '
        ||                ' range_high, '
        ||                ' rank, '
        ||                ' range_low'
        ;
    
      dbms_output.put_line('SQL start------------------------');
      dbms_output.put_line(my_report_data_statement);
      dbms_output.put_line('SQL end--------------------------');
    
    
      my_chart_data_statement :=
           ' SELECT range_low "X Axis", '
        ||        ' lane_id "Group" '
        ||         get_row_class_counts_text
        || ' FROM '
        || ' ( '
        || ' SELECT lane_id, '
        ||        ' direction_id, '
        ||        ' range_low, '
        ||        ' range_high, '
        ||        ' min(interval_start_date_time) interval_start_date_time, '
        ||        ' max(interval_end_date_time) interval_end_date_time '
        || ' FROM edr_rpt_by_ranges_output '
        || ' WHERE rank = 1 '
        || ' GROUP BY lane_id, direction_id, range_low,  range_high '
        || ' ) '
        || ' order by "Group", range_low '
        ;
    
      dbms_output.put_line('SQL start------------------------');
      dbms_output.put_line(my_chart_data_statement);
      dbms_output.put_line('SQL end--------------------------');
    
    
    
      SELECT my_used_data_type
        INTO my_data_type_used
        FROM SYS.DUAL;
    
      SELECT NVL(COUNT(DISTINCT record_id), 0)
        INTO my_per_vehicle_total
        FROM edr_cls_by_tawt_per_veh_data;
    
      SELECT NVL(COUNT(DISTINCT record_id), 0)
        INTO my_status_vehicle_total
        FROM edr_cls_by_tawt_per_veh_data
       WHERE vehicle_status > 0
         AND vehicle_error_count = 0;
    
    
      SELECT NVL(COUNT(DISTINCT record_id), 0)
        INTO my_error_vehicle_total
        FROM edr_cls_by_tawt_per_veh_data
       WHERE vehicle_error_count > 0;
    
    
      SELECT NVL(COUNT(DISTINCT record_id), 0)
        INTO my_status_clear_total
        FROM edr_cls_by_tawt_per_veh_data
       WHERE vehicle_status = 0
         AND vehicle_error_count = 0;
    
    
      SELECT NVL(COUNT(1), 0)
        INTO my_binned_vehicle_total
        FROM edr_cls_by_tawt_per_veh_data;
    
      SELECT NVL(COUNT(1), 0)
        INTO my_good_weight_total
        FROM edr_cls_by_tawt_per_veh_data
       WHERE vehicle_error_count = 0
         AND BITAND(vehicle_status, my_good_weight_statuses_mask) = 0;
    
      -- insert vehicle totals into the temporary table
      DELETE FROM edr_rpt_tmp_veh_totals_table;
    
      INSERT INTO edr_rpt_tmp_veh_totals_table
      SELECT my_data_type_used,
             my_per_vehicle_total,
             my_binned_vehicle_total,
             my_error_vehicle_total,
             my_status_vehicle_total,
             my_good_weight_total,
             my_status_clear_total
        FROM SYS.DUAL;
    
      -- execute the query into the output refcursor
      OPEN report_data FOR
        my_report_data_statement;
    
      OPEN chart_data FOR
        my_chart_data_statement;
    
      OPEN footer_data FOR
        SELECT data_type_used,
               per_vehicle_total,
               binned_vehicle_total,
               error_vehicle_total,
               status_vehicle_total,
               good_weight_total,
               status_clear_total
          FROM edr_rpt_tmp_veh_totals_table;
    
    END gen_class_by_axle_type;
    
    PROCEDURE edr_rpt_gen_class_by_sawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    )
    AS
    BEGIN
      v_report_axle_group_type := c_axle_single_group_type;
      gen_class_by_axle_type(in_report_parameter_id, report_data, chart_data, footer_data);
    END;
    
    PROCEDURE edr_rpt_gen_class_by_fawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    )
    AS
    BEGIN
      v_report_axle_group_type := c_front_axle_only ;
      gen_class_by_axle_type(in_report_parameter_id, report_data, chart_data, footer_data);
    END;
    
    PROCEDURE edr_rpt_gen_class_by_tawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    )
    AS
    BEGIN
      v_report_axle_group_type := c_axle_tandem_group_type;
      gen_class_by_axle_type(in_report_parameter_id, report_data, chart_data, footer_data);
    END;
    
    PROCEDURE edr_rpt_gen_class_by_triawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    )
    AS
    BEGIN
      v_report_axle_group_type := c_axle_tridem_group_type;
      gen_class_by_axle_type(in_report_parameter_id, report_data, chart_data, footer_data);
    END;
    
    PROCEDURE edr_rpt_gen_class_by_qawt (
      in_report_parameter_id   IN      report_tasks.report_task_id%TYPE,
      report_data              OUT     SYS_REFCURSOR,
      chart_data               OUT     SYS_REFCURSOR,
      footer_data              OUT     SYS_REFCURSOR
    )
    AS
    BEGIN
      v_report_axle_group_type :=  c_axle_quadrem_group_type;
      gen_class_by_axle_type(in_report_parameter_id, report_data, chart_data, footer_data);
    END;
    
    END edr_rpt_class_by_tawt_package;
    /
    
    
    LIST
    
    SHOW ERROR

    FUNCTION RETURN VARCHAR2 class_count in package specifications and
    FUNCTION RETURN NUMBER class_count in the package body.
    change the type of data SERVICE class_count

Maybe you are looking for