From 0d7f3c7db72e85a3c927bc20b5b5755746b1d681 Mon Sep 17 00:00:00 2001 From: Marius Mutu Date: Thu, 10 Sep 2026 14:39:25 +0300 Subject: [PATCH] sync SVN r18091 --- docs/scripturi-migrare-db.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/scripturi-migrare-db.md b/docs/scripturi-migrare-db.md index b2dc753..fa1215d 100644 --- a/docs/scripturi-migrare-db.md +++ b/docs/scripturi-migrare-db.md @@ -21,6 +21,11 @@ Reguli confirmate de Marius (24.07.2026): fie interpretat linie cu linie ca si comenzi, cu zeci de `SP2-0734` si un `ORA-00936` derutant care arata spre comentariu. Pus la sfarsit de fraza, `.` in loc de `;`. Comentariile de **dinaintea** instructiunii nu sunt afectate. +- **Fiecare instructiune se incheie explicit cu `;`** (sau `/` pentru blocurile PL/SQL). Fara el, + prima linie goala inchide bufferul SQL*Plus si arunca instructiunea **fara nicio eroare** — + scriptul continua pana la `UpdateVersiune`, se marcheaza aplicat, iar obiectul ramane cel vechi. + `WHENEVER SQLERROR EXIT` nu prinde cazul, pentru ca nu exista eroare. Verificare inainte de + publicare: ultima linie a fiecarui `CREATE`/`ALTER`/`MERGE` se termina cu `;`. - **Fiecare script se incheie cu `exec pack_migrare.UpdateVersiune('');` urmat de `commit;`.** Numele se da **fara extensia `.sql`** — o adauga `UpdateVersiune`; trecuta si in argument, ajunge in `VERSIUNE` ca `..._.sql.sql` si scriptul apare ca neaplicat la comparatia de @@ -177,6 +182,10 @@ firme), `co` (`CONTAFIN_ORACLE`), `sys`, `ris`, `rf`. - **`NN` e o secventa unica pe zi, comuna tuturor prefixelor** — un numar consumat de un `co_` nu se reia intr-un `ff_` din aceeasi zi si invers. +- **Un script marcat in `VERSIUNE` nu se mai aplica a doua oara.** Clientul ia doar scripturile cu + `data||NN` peste marcajul din `SERVER_INFO.VERSIUNE_`, iar marcajul avanseaza la maximul + atins. Un script gresit nu se repara prin republicarea aceluiasi fisier: corectia se livreaza ca + script nou, cu data si `NN` noi. - In `versiune_db.txt` (radacina aplicatiei) se trece **doar versiunea ultimului script `ff_`**: programele se conecteaza pe schema firmei, nu pe `CONTAFIN_ORACLE`, deci markerul urmareste numai migrarile aplicate acolo.