fix(roa-setup): sinonime publice si obiecte SYS lipsa pe serverele instalate cu kitul

Pe VADECO (instalat 25.08.2026) salvarea in istoric coduri fiscale pica cu
PLS-00905: VADECO.PACK_PARTENERI invalid. Cauza: pachetul isi declara parametrii
ca ISTORIC_CODURI_FISCALE.<col>%TYPE, nume necalificat, iar sinonimul public
lipsea. Serverul avea 81 de sinonime publice catre CONTAFIN_ORACLE, productia
10.0.20.36 are 100 -- lipseau exact 20.

Gaura apare pentru ca sinonimele publice nu fac parte dintr-un export
schema-mode (impdp nu le aduce), singurul loc care le creeaza este o lista
enumerata manual, iar CONTAFIN_ORACLE.VERSIUNE vine cu DMP-ul si marcheaza
scripturile co_*/sys_* drept aplicate, deci nici ROAACTUALIZARI nu le mai
ruleaza. Din acelasi motiv lipsea si SYS.NEWSCHEMAPROGRESS, o functie din 2014.

- synonyms-public.sql: cele 20 de sinonime (81 -> 101 CREATE)
- sys-objects.sql: pas [9b/10], SYS.NEWSCHEMAPROGRESS (sys_2014_11_06_01_FIRMA)
- sys-grants.sql: SYN_NEWSCHEMAPROGRESS in [3/6]; granturi directe SELECT pe
  SYS.DBA_DATAPUMP_JOBS si SYS.AUTH_SERII in [1/6] (sys_2013_01_23_02)
- docs/refresh-scripturi-dupa-instalare.md: de ce completarea listelor e paliativ
  si ce ar trebui sa faca un pas de refresh rulat dupa instalare, nu la instalare
- sys-updates/README.md, CLAUDE.md: trimiteri catre documentul nou

Aplicat pe VADECO: PACK_PARTENERI si PACK_IMPORT_COMENZI sunt VALID pe VADECO,
DANUBE, LACERTA si SPACE. Obiectele ramase invalide sunt cele preexistente,
invalide si pe 10.0.20.36.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J7vUBDUY5hvLwRZ45Uqzcf
This commit is contained in:
Marius
2026-08-31 13:56:56 +03:00
parent a89cf201ab
commit e69fc07e46
6 changed files with 223 additions and 2 deletions

View File

@@ -1122,6 +1122,52 @@ end;
/
-- ============================================================================
-- SYS.NEWSCHEMAPROGRESS
-- ============================================================================
-- Consolidat din sys_2014_11_06_01_FIRMA.sql (versiunea curenta, neimpachetata;
-- sys_2012_06_21_01_FIRMA.sql o crea impachetata). NU era in acest kit: pe o
-- instalare curata functia lipsea complet, iar tabela de versiuni vine cu DMP-ul
-- si o marcheaza drept aplicata, deci ROAACTUALIZARI nu o mai ruleaza niciodata.
-- Constatat lipsa pe serverul VADECO nou, prezenta pe productia 10.0.20.36.
--
-- Clientul ROA o apeleaza ca sa afiseze progresul importului la adaugarea unei
-- firme noi (NewSchema/NewSchemaJob ruleaza impdp, iar asta citeste starea din
-- dba_datapump_jobs). Sinonimul public SYN_NEWSCHEMAPROGRESS si grantul se fac
-- in sql\sys-grants.sql, sectiunea [3/6].
-- ============================================================================
PROMPT
PROMPT [9b/10] Creating SYS.NEWSCHEMAPROGRESS function...
CREATE OR REPLACE FUNCTION SYS.NEWSCHEMAPROGRESS(tcSchema VARCHAR2)
RETURN VARCHAR2 IS
Result VARCHAR2(10000);
lcSchema VARCHAR2(100) := UPPER(tcSchema);
BEGIN
BEGIN
SELECT state
INTO Result
FROM dba_datapump_jobs
WHERE job_name = lcSchema
AND OPERATION = 'IMPORT'
AND JOB_MODE = 'SCHEMA';
IF UPPER(Result) = 'EXECUTING' THEN
Result := 'IN EXECUTIE';
ELSIF UPPER(Result) = 'COMPLETING' THEN
Result := 'SE FINALIZEAZA';
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
Result := 'FINALIZAT';
END;
RETURN(Result);
END NEWSCHEMAPROGRESS;
/
PROMPT NEWSCHEMAPROGRESS created.
-- ============================================================================
-- SECTION 7: UTL_MAIL
-- ============================================================================
@@ -1158,7 +1204,7 @@ WHERE owner = 'SYS'
AND object_name IN (
'AUTH_PACK', 'AUTH_DETALII', 'AUTH_SERII', 'VAUTH_SERII',
'EXECUTESCRIPTOS', 'NEWSCHEMA', 'NEWSCHEMAJOB', 'UPDATESQLPLUS',
'PINFO', 'INFO', 'SEQ_AUTH_SERII'
'PINFO', 'INFO', 'SEQ_AUTH_SERII', 'NEWSCHEMAPROGRESS'
)
ORDER BY object_type, object_name;
@@ -1170,7 +1216,7 @@ WHERE owner = 'SYS'
AND object_name IN (
'AUTH_PACK', 'AUTH_DETALII', 'AUTH_SERII', 'VAUTH_SERII',
'EXECUTESCRIPTOS', 'NEWSCHEMA', 'NEWSCHEMAJOB', 'UPDATESQLPLUS',
'PINFO', 'INFO', 'SEQ_AUTH_SERII'
'PINFO', 'INFO', 'SEQ_AUTH_SERII', 'NEWSCHEMAPROGRESS'
)
AND status != 'VALID';