ControlSource-ul coloanei cPretFactura se rebindeaza calificat (rul_temp.pret_lei);
necalificat, VFP il rezolva pe workarea altei grile si celula nu accepta tastare.
Test de reproducere + nota docs/capcana_grid_controlsource.md.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RYbiinqXxdEqXi53x4Ro7K
caut_partener primeste tlVerificaANAF/tdDataDoc (acelasi bloc ca la caut_parteneri) si citeste
tip_persoana din vnom_parteneri, ca banda de stare sa distinga CNP de CIF, nu dupa lungimea codului.
Apelanti pe documente: factura si partenerul DVI din achizitia de import (data din formular,
dDataAct), furnizorul de la finalizarea NIR-ului (data cade pe poAct.dataact) si schimbarea
furnizorului pe rulaj.
verific_partener si verificare_note_contabile (ooperatii_comune.prg) cer verificarea si cand
completeaza partenerul lipsa pe cont, la salvarea documentului.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RYbiinqXxdEqXi53x4Ro7K
In import_nota, randul de TVA al DVI-ului pastreaza doc_key-ul facturii-mama.
copiaza_valoare il sarea doar ca tinta, nu si ca sursa, asa ca o trecere prin
celula "Nr" a randului DVI scria numarul vamal peste randurile facturii (B/G/S)
si, la Terminat, in ACT si RUL.nract. Garda e acum in ambele sensuri, pentru
numar, serie, data, fel document si partener; propagarea de partener din
Grid1.cPartC.Text1.Valid a primit aceeasi protectie.
Garzile comparau numele de camp bar, dar ControlSource-ul unei coloane de grid
e calificat la runtime (introdc.nract), deci nu se activau pe drumul din grila.
Teste noi in utile/Teste/achizitie_import.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U9uDgDfUQXbh2Neib36CN8
- TVA-ul de pe DVI poate avea valuta si curs proprii, diferite de ale facturii
(rand "protejat": rand_dvi/valuta_proprie pe introdc, sparge_tva_protejat).
- Discount financiar pe factura: rand tip_rand='G' (401 = 767), TVA calculat pe
baza diminuata, marfa si preturile articolelor pe valoarea integrala.
- Factura multi-cota: randurile S, G si T se sparg pe cotele articolelor, cu
explicatia TVA din familia coloanei si alinierea T -> S.
- Teste noi in utile/Teste/achizitie_import (discount, DVI, cote, e2e).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U9uDgDfUQXbh2Neib36CN8
Debifat = exclus complet din pretul articolului (lei si valuta); procent_lei
ramane 100 pe import, diferenta e absorbita de randul D (recalc_diferente).
Procentele afisate pe randurile neparticipante raman goale. Test nou pe
fluxul real: test_secundara_debifata_pret (15/15 PASS); regresie curata
(test_valuta_dvi_usd 22/22, test_debifare_invaluta 68/68, scenariu complet PASS).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KXsyJZBek1e9RvyLAQkoCx
cCurs.Text1.Valid armeaza sincronizarea amanata (repretare articole +
recalc diferente) si propaga cursul principalei in antet (oact.curs,
doar pe randuri in valuta). Teste: pas nou de schimbare curs pe DVI
secundar in test_valuta_dvi_usd (22/22 PASS), regresie
test_debifare_invaluta (68/68) si test_scenariu_dvi_complet PASS.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KXsyJZBek1e9RvyLAQkoCx
Rundele 1-7: golire campuri valuta la debifare in_valuta (cu suma_doc_val),
recalcul din curs pe tot documentul (cu refacere suma_doc/suma_doc_val),
spargere document principal in valuta (suma_val doar pe randuri in valuta),
TVA repartizat din baza in valuta pe import, iar la recalculeaza()/procente
per rand sumele in valuta ale documentelor participante aflate in alta
valuta decat a principalei se convertesc prin lei (suma/curs principal),
nu se mai aduna direct la baza in valuta (100 USD nu mai devine 100 EUR).
Teste UI: test_valuta_dvi_usd (scenariu mixt EUR+USD, 8/8 PASS),
test_debifare_invaluta (64/64 PASS), test_repro_valuta_dblclick,
mock_caut_valuta; regresie test_scenariu_dvi_complet PASS.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KXsyJZBek1e9RvyLAQkoCx