# Fluxul actualizarii ROA si al buletinului informativ Referinta de ansamblu: cine cheama pe cine, de pe ce masina si cu ce fisiere. Pentru depanare mergi la `depanare-pack-update.md` (baza clientului) si `depanare-server-update-roa.md` (serverul care livreaza). ## Masinile | Rol | Masina | Ce ruleaza | |---|---|---| | baza clientului | serverul Oracle al clientului | jobul `UPDATEROA_ZILNIC` -> `CONTAFIN_ORACLE.PACK_UPDATE` | | serverul de actualizari | **ROACENTRAL**, 10.0.20.122 | IIS + ActiveVFP, `D:\APPUPDATESERVERAVFP`; rutele `updroa` | | baza centrala | **ROA_CENTRAL**, 10.0.20.121 | `SOFT_SERII` (contracte, clienti), `CONTAFIN_ORACLE` (`UPD_DATABASE`, scripturi) | | proxy public | 10.0.20.36 | `roa.romfast.ro` -> ROACENTRAL | | SMTP | `mail.romfast.ro` = 185.141.190.195 | Exim (a2hosting), **cerut cu TLS** | ## 1. Actualizarea, pe client `UPDATEROA_ZILNIC` -> `PACK_UPDATE.UpdateROA`, trei etape secventiale; una esuata le opreste pe urmatoarele si starea ramane in `UPD_ISTORIC` (`0` start, `1` aplicatii, `2` scripturi, `3` aplicare, `4` incheiat): 1. **UpdateApp** - descarca `roa_app.xml` / `roastart_app.xml` (lista de versiuni) si arhivele programelor cu versiune mai noua, in directoarele Oracle `UPD_`; la final cere serverului trimiterea buletinului informativ (vezi mai jos). 2. **UpdateScripts** - descarca `roa_database.xml` + arhivele de scripturi si umple `UPD_DATABASE`. 3. **UpdateDatabaseSqlPlus** - genereaza in `DMPDIR` (`C:\DMPDIR`) `script_.sql` + `script_master.sql` si le da unui SQL*Plus extern; iesirea in `C:\DMPDIR\script_master.log` (erorile de aici **nu** ajung in `UPD_LOG`). Logul rularii curente e in `UPD_LOG` (se goleste la fiecare rulare); esecul real al jobului in `dba_scheduler_job_run_details`. ### Cum se descarca, de fapt ``` PACK_UTILS.URL2Clob / URL2Blob daca SERVER_INFO.POWERSHELLDOWNLOAD = 1: -> PACK_UTILS.DownloadFileOS scrie in DMPDIR un script ps (download_.ps1; inainte de co_2026_09_16_02_COMUN_PACK_UTILS era un nume fix, download_file.ps1) -> sys.ExecuteScriptOS (job scheduler 'executable', asincron) -> powershell -ExecutionPolicy Bypass -File