Achizitie din import: secundara debifata de la participa_valuta nu mai incarca pretul in lei
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
This commit is contained in:
@@ -11207,11 +11207,11 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
*!* direct. 16.07.2026b claude (C4 - corectii T2): pe import, procent_lei NU mai e
|
||||
*!* 100*baza_totala/baza_principala (ar dubla incarcarea documentelor de transport in
|
||||
*!* valuta - do_reface aplica intai procent_val pe pretd, apoi procent_lei pe pret derivat
|
||||
*!* din pretd*curs) - procent_lei pe import = 100 + contributia DOAR a documentelor
|
||||
*!* care NU participa la pretul in valuta (restul intra in procent_val). Ramura intern
|
||||
*!* din pretd*curs) - procent_lei pe import = 100; documentele neparticipante NU mai
|
||||
*!* incarca pretul, raman pe randul D (recalc_diferente). Ramura intern
|
||||
*!* ramane neschimbata (echivalenta cu vechiul calcul din do_executa).
|
||||
Local lnBazaLei, lnBazaVal, lnBazaVal2, lnTvaLei, lnTvaVal, lnTvaVal2, lcSel
|
||||
Local lnMinNrDoc, lnBazaPrincipalaLei, lnBazaPrincipalaVal, lnBazaLeiOnly, lnBazaValBased
|
||||
Local lnMinNrDoc, lnBazaPrincipalaLei, lnBazaPrincipalaVal
|
||||
lcSel = Select()
|
||||
If !Used('introdc')
|
||||
Select (lcSel)
|
||||
@@ -11247,11 +11247,8 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
If This.lIntern
|
||||
This.procent_lei = Iif(lnBazaPrincipalaLei <> 0, 100 * lnBazaLei / lnBazaPrincipalaLei, 100)
|
||||
Else
|
||||
*!* C4b: documentele cu participa_valuta (si cele platite in lei, convertite la curs in
|
||||
*!* nbaza_val) sunt acoperite de procent_val - in procent_lei raman doar neparticipantele
|
||||
Sum suma For Inlist(tip_rand,'B','S') And !participa_valuta And !Inlist(scd,'4426','4428') And !Empty(id_jtva_coloana) To lnBazaLeiOnly
|
||||
Sum suma For Inlist(tip_rand,'B','S') And participa_valuta And !Inlist(scd,'4426','4428') And !Empty(id_jtva_coloana) To lnBazaValBased
|
||||
This.procent_lei = 100 + Iif(lnBazaValBased <> 0, 100 * lnBazaLeiOnly / lnBazaValBased, 0)
|
||||
*!* 25.07.2026 claude - debifat participa_valuta = exclus complet din pret; diferenta merge pe randul D
|
||||
This.procent_lei = 100
|
||||
Endif
|
||||
This.procent_val = Iif(lnBazaPrincipalaVal <> 0, 100 * lnBazaVal / lnBazaPrincipalaVal, 100)
|
||||
Select (lcSel)
|
||||
@@ -11709,9 +11706,14 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
Replace explicatia4 With '100.00'
|
||||
Replace explicatia5 With Iif(in_valuta = 1 Or participa_valuta, '100.00', '')
|
||||
Else
|
||||
Replace explicatia4 With Iif(This.nbazaprincipala_lei <> 0, Allt(Str(suma/This.nbazaprincipala_lei*100,6,2)), '')
|
||||
lnValRandProc = Iif(in_valuta = 1 And Nvl(id_valuta,0) = Nvl(This.oact.id_valuta,0), suma_val, Round(suma/This.oact.Curs, gnPval))
|
||||
Replace explicatia5 With Iif(This.nbazaprincipala_val <> 0, Allt(Str(lnValRandProc/This.nbazaprincipala_val*100,6,2)), '')
|
||||
If !This.lIntern And !participa_valuta
|
||||
Replace explicatia4 With ''
|
||||
Replace explicatia5 With ''
|
||||
Else
|
||||
Replace explicatia4 With Iif(This.nbazaprincipala_lei <> 0, Allt(Str(suma/This.nbazaprincipala_lei*100,6,2)), '')
|
||||
lnValRandProc = Iif(in_valuta = 1 And Nvl(id_valuta,0) = Nvl(This.oact.id_valuta,0), suma_val, Round(suma/This.oact.Curs, gnPval))
|
||||
Replace explicatia5 With Iif(This.nbazaprincipala_val <> 0, Allt(Str(lnValRandProc/This.nbazaprincipala_val*100,6,2)), '')
|
||||
Endif
|
||||
Endif
|
||||
Endscan
|
||||
Endif
|
||||
|
||||
Reference in New Issue
Block a user