Invalid objects in Lawson schema in Oracle

 4 Replies
 0 Subscribed to this topic
 27 Subscribed to this forum
Sort:
Author
Messages
Lyall
New Member
Posts: 2
New Member
    Hello everyone,
    I was searching through this site and couldn't find the answer to my question, so i'll post my question.
    We have Lawson installed on Oracle 10gR2 on an IBM server. I do not know how long we've had Lawson, or how many upgrades we've gone through. The LAWSON schema in our current production system has these invalid objects:
    LAWSON GET_YEAR_SALARY FUNCTION
    LAWSON TEST_PACKAGE PACKAGE
    LAWSON EMPLOYEE_SALARIES_1999 PROCEDURE
    LAWSON GET_SALARY_PAID FUNCTION
    LAWSON EEOC_PROC_MALE_NON_FIX PROCEDURE
    LAWSON EEOC_PROCEDURE_M_MINORITY PROCEDURE
    LAWSON PREV_SALARY FUNCTION
    LAWSON EEOC_PROCEDURE_F_MINORITY PROCEDURE
    LAWSON EEOC_PROC_FEMALE_NON PROCEDURE
    LAWSON EEOC_PROC_MALE_NON PROCEDURE
    LAWSON CURR_SALARY FUNCTION
    LAWSON EMPLOYEESALARIES_EMP PROCEDURE
    LAWSON EMPLOYEESALARIES PROCEDURE
    LAWSON EEOC_PROCEDURE_M_ALL PROCEDURE
    LAWSON EEOC_PROCEDURE_F_ALL PROCEDURE

    Can anyone tell me if these are old code that is no longer needed on our Production enviroment? Users have not called and i do not know what happened to invalidated these objets. I just started this job 2 weeks ago.
    Current version of Lawson Foundation 9.0.1 and Lawson Applications 9.0.0 These functions, packages and procedures say they were created in 2000.
    Thanks,
    Lyall
    riegerj
    Veteran Member
    Posts: 44
    Veteran Member
      Lyall, none of the Lawson environments I have worked with have had delivered procedures or functions so those may be custom. I have worked in LSF 9 and am currently using applications 9.0.0 using Oracle and we do not have any delivered.
      Lyall
      New Member
      Posts: 2
      New Member
        Hmmm, i never thought of that and you are correct. Under the LAWSON schema, there's only those invalid packages, functions or procedures (15 or them) plus one more that is valid:
        LOAD_EEO_CAT_DESCRIPTIONS which is a procedure.
        I'll extract the metadata and drop these objects.
        Thanks,
        Lyall
        riegerj
        Veteran Member
        Posts: 44
        Veteran Member
          If you are lucky, the programmer may have left notes in the items describing their purpose. Otherwise I would check with payroll or HR managers to see if they know of any custom procedures they may need these for. You don't want to be surprised at year end when things don't work... good luck!
          JoeB
          Basic Member
          Posts: 4
          Basic Member
            HI, if you do figure you need them at some point - likely the tables they were based on were updated/replaced/... so you might just be able to recompile the object and then it'll no longer be invalid.

            here's a script you can run that'll create an oracle SQL script called compileinvalid.sql which you can review and run to recompile various triggers, views, packages, if those items are still wanted.

            set echo off
            set feedback off
            set heading off
            spool compileinvalid.sql
            select 'alter view '||substr(object_name,1)|| ' compile;'";" from user_objects
            where object_type = 'VIEW' and status = 'INVALID'
            order by created;
            select 'alter procedure '||substr(object_name,1)|| ' compile;'";" from user_objects
            where object_type = 'PROCEDURE' and status = 'INVALID'
            order by created;
            select 'alter package '||substr(object_name,1)|| ' compile;'";" from user_objects
            where object_type = 'PACKAGE' and status = 'INVALID'
            order by created;
            select 'alter package '||substr(object_name,1)|| ' compile body;'";" from user_objects
            where object_type = 'PACKAGE BODY' and status = 'INVALID'
            order by created;
            select 'alter trigger '||substr(object_name,1)|| ' compile;'";" from user_objects
            where object_type = 'TRIGGER' and status = 'INVALID'
            order by created;
            spool off
            set feedback on
            set heading on