docs: gardile pe randul DVI la propagarea pe grup + ControlSource calificat

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U9uDgDfUQXbh2Neib36CN8
This commit is contained in:
2026-08-01 22:47:46 +03:00
parent 5217301625
commit 860df34160

View File

@@ -213,6 +213,19 @@ dare în funcțiune deliberată.
trebuie făcute pe valuta EFECTIVĂ (`Empty(nume) Or Upper(nume)=='RON'`), nu pe id brut — o
factură fără valută + RON ales explicit pe DVI sunt ambele „fără valută", dar o comparație
de id-uri brute le-ar vedea ca diferite (`dvi_valuta_proprie` ar da fals 1).
- **`copiaza_valoare` și rândul DVI — gardă în ambele sensuri**: rândul T al DVI-ului păstrează
`doc_key`-ul facturii-mamă, deci propagarea pe grup îl include. Trebuie sărit și ca **țintă**
(identitatea facturii nu-l atinge) și ca **sursă** (numărul/data/partenerul vamal nu ajung pe
factură). Fără garda pe sursă, o simplă trecere prin celula „Nr" a rândului DVI scria numărul
DVI-ului peste toată factura (B/G/S) și, la Terminat, în `ACT` și `RUL.nract`. Rândul D scapă,
pentru că își moștenește antetul o singură dată, la creare. `copiaza_valoare` nu face refresh de
grilă, deci pe ecran rămân valorile vechi — coruperea e invizibilă până la salvare.
Propagarea de partener are flux propriu (`Grid1.cPartC.Text1.Valid`), cu aceeași gardă.
- **`ControlSource`-ul unei coloane de grid e CALIFICAT la runtime**: `This.Parent.ControlSource`
întoarce `introdc.nract`, nu `nract` (cum apare în `.vc2`). Orice `Inlist`/comparație pe nume de
câmp cu valoarea primită din `Valid`-urile de grilă trebuie să normalizeze întâi (taie prefixul
până la ultimul punct) — altfel garda arată corect scrisă și nu se activează niciodată. Regresie:
`COMUN\utile\Teste\achizitie_import\test_diag_controlsource_calificat.prg`.
## Ștergere note — model istoric pe paritate (înlocuit de rundele de mai sus)