Fix ROA Windows setup scripts for Oracle XE deployment
Key fixes: - Add Run.cmd/RunAll.cmd wrappers with ExecutionPolicy Bypass - Add Get-ListenerHost() to auto-detect listener IP address - Fix impdp connection using EZConnect format (host:port/service) - Add parallel=1 for Oracle XE compatibility - Fix Write-Log to accept empty strings with [AllowEmptyString()] - Fix Get-SchemaObjectCount regex for Windows line endings (\r\n) - Fix path comparison for DMP file copy operation - Add GRANT EXECUTE ON SYS.AUTH_PACK TO PUBLIC for PACK_DREPTURI - Fix VAUTH_SERII view to use SYN_NOM_PROGRAME (has DENUMIRE column) - Add sections 10-11 to grants-public.sql for SYS object grants Tested on VM 302 (10.0.20.130) with Oracle XE 21c. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -386,6 +386,78 @@ SELECT grantee, table_name, privilege
|
||||
FROM dba_tab_privs
|
||||
WHERE table_name = 'DMPDIR';
|
||||
|
||||
-- ============================================================================
|
||||
-- SECTION 10: GRANTS ON UNDERLYING TABLES FOR SYS OBJECTS
|
||||
-- ============================================================================
|
||||
-- SYS.AUTH_PACK needs direct access to CONTAFIN_ORACLE tables through synonyms
|
||||
-- These grants ensure SYS-owned objects can resolve synonym references
|
||||
|
||||
PROMPT [10/11] Granting table access for SYS objects...
|
||||
|
||||
-- Tables accessed by SYS.AUTH_PACK
|
||||
GRANT SELECT ON CONTAFIN_ORACLE.NOM_PROGRAME TO PUBLIC;
|
||||
GRANT SELECT ON CONTAFIN_ORACLE.DEF_PROGRAME TO PUBLIC;
|
||||
GRANT SELECT ON CONTAFIN_ORACLE.AUTH_SERII TO PUBLIC;
|
||||
GRANT SELECT ON CONTAFIN_ORACLE.AUTH_DETALII TO PUBLIC;
|
||||
|
||||
-- Tables accessed by VAUTH_SERII view
|
||||
GRANT SELECT ON CONTAFIN_ORACLE.VDEF_PROGRAME TO PUBLIC;
|
||||
|
||||
-- ============================================================================
|
||||
-- SECTION 11: RECOMPILE SYS AND CONTAFIN_ORACLE OBJECTS
|
||||
-- ============================================================================
|
||||
|
||||
PROMPT [11/11] Recompiling SYS and CONTAFIN_ORACLE objects...
|
||||
|
||||
-- Recompile SYS.AUTH_PACK (depends on synonyms now available)
|
||||
ALTER PACKAGE SYS.AUTH_PACK COMPILE;
|
||||
ALTER PACKAGE SYS.AUTH_PACK COMPILE BODY;
|
||||
|
||||
-- Grant EXECUTE on SYS.AUTH_PACK so CONTAFIN_ORACLE.PACK_DREPTURI can call it
|
||||
-- through the PACK_AUTENTIFICARE synonym
|
||||
GRANT EXECUTE ON SYS.AUTH_PACK TO PUBLIC;
|
||||
|
||||
-- Recreate VAUTH_SERII view (may have been invalid due to missing synonym)
|
||||
-- This view uses SYN_NOM_PROGRAME for program names and AUTH_PACK functions for license info
|
||||
BEGIN
|
||||
EXECUTE IMMEDIATE '
|
||||
CREATE OR REPLACE VIEW SYS.VAUTH_SERII AS
|
||||
SELECT a.id_program,
|
||||
a.denumire AS nume,
|
||||
auth_pack.selecteaza_serie(a.id_program) AS serie,
|
||||
auth_pack.selecteaza_nr_util(a.id_program) AS nr_util,
|
||||
auth_pack.selecteaza_data_val(a.id_program) AS data_val
|
||||
FROM syn_nom_programe a
|
||||
LEFT JOIN syn_def_programe b ON a.id_program = b.ide_program
|
||||
WHERE b.sters = 0
|
||||
AND b.instalat = 1';
|
||||
DBMS_OUTPUT.PUT_LINE(' View VAUTH_SERII created/replaced.');
|
||||
EXCEPTION
|
||||
WHEN OTHERS THEN
|
||||
DBMS_OUTPUT.PUT_LINE(' Warning: Could not create VAUTH_SERII: ' || SQLERRM);
|
||||
END;
|
||||
/
|
||||
|
||||
GRANT SELECT ON SYS.VAUTH_SERII TO PUBLIC;
|
||||
|
||||
-- Recompile CONTAFIN_ORACLE invalid objects
|
||||
PROMPT Recompiling CONTAFIN_ORACLE schema...
|
||||
BEGIN
|
||||
DBMS_UTILITY.COMPILE_SCHEMA(schema => 'CONTAFIN_ORACLE', compile_all => FALSE);
|
||||
END;
|
||||
/
|
||||
|
||||
-- Show remaining invalid objects
|
||||
PROMPT
|
||||
PROMPT Remaining invalid objects (excluding email procedures):
|
||||
SELECT owner, object_name, object_type
|
||||
FROM dba_objects
|
||||
WHERE owner IN ('SYS', 'CONTAFIN_ORACLE')
|
||||
AND status = 'INVALID'
|
||||
AND object_type NOT IN ('SYNONYM')
|
||||
AND object_name NOT IN ('SENDEMAIL', 'EMAILINCASARI', 'EMAILNOTIFICAREFACTURI', 'EMAILSTOCCRITIC')
|
||||
ORDER BY owner, object_type, object_name;
|
||||
|
||||
PROMPT
|
||||
PROMPT ========================================
|
||||
PROMPT Grant Configuration Complete
|
||||
|
||||
Reference in New Issue
Block a user