Import parteneri: cautare pe codul salvat si preluarea partenerului cel mai vechi

Importul cauta partenerul dupa codul brut din XML, dar il salva pe cel intors de
GetCodFiscalValid, care la persoana fizica poate lua CNP-ul din campul de serie CI /
pasaport. Cand cele doua difera, partenerul nu era gasit niciodata si pack_def.adauga_partener
respingea inserarea ("Mai exista un partener cu acest CNP"), oprind tot importul.

- cautarea se face acum pe codul cu care partenerul chiar se salveaza, cu revenire pe codul
  brut si pe cheia externa a importului;
- GetIdPartener() intoarce partenerul cel mai vechi cand mai multi au acelasi cod fiscal;
- GetIdPartenerROA() preia partenerul existent din ROA dupa refuzul procedurii, ca importul
  sa continue; se opreste doar daca nici acolo nu exista;
- lcCod nu mai e suprascris cu codul fiscal, deci in coresp_parteneri se scrie iar cheia
  externa, nu codul fiscal.

Verificat pe baza reala cu Teste\test_parteneri_roa.prg (doar SELECT, in afara suitei
implicite); suita implicita ramane PASS.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PTZNiJg2pZk1rky1rpw94u
This commit is contained in:
2026-08-18 13:34:53 +03:00
parent 36b116c00d
commit de23611b4d
5 changed files with 230 additions and 63 deletions

View File

@@ -39,6 +39,9 @@ Specific FLORA2ROA:
- `test_conectare_roa.prg` - verifica drumul CU conectare la Oracle: fie se conecteaza si
executa o interogare de proba, fie raporteaza esecul si iese controlat. NU e in suita
implicita (depinde de reteaua/serverul Oracle).
- `test_parteneri_roa.prg` - cautarea partenerului la import, pe datele reale din ROA:
cautarea se face pe codul cu care partenerul se salveaza, iar cand mai multi parteneri au
acelasi cod fiscal se ia cel mai vechi. Doar SELECT-uri, NU e in suita implicita (cere Oracle).
## Comenzi uzuale