sync SVN r18238

This commit is contained in:
2026-09-30 22:27:28 +03:00
parent 1a24467667
commit 6f3e25d888
3 changed files with 420 additions and 9 deletions

View File

@@ -109,6 +109,12 @@
*!* elemente "in (...)" da ORA-01795); plasa de siguranta din VerificaListaCIF aduna codurile ramase
*!* fara raspuns si cere istoricul intr-un singur apel, in loc de un apel Oracle per cod
*!* 29.09.2026
*!* marius.mutu
*!* CitesteIstoricPentruCoduri: pe sursa CACHE randul din istoric se accepta doar daca verificarea ANAF e din
*!* ziua datei cerute sau ulterioara (pentru date viitoare, din azi); CACHE_INDISP accepta si verificari mai vechi
*!* ANAF_VerdictDinCursor: obiectul single-CUI poarta si dataRadiere
*!* http://ec.europa.eu/taxation_customs/vies/viesquer.do
*!* http://localhost/contafinupdate/verificarecod.aspx/verificarecod/verificare/CIF/1879855/MFIN
*!* http://localhost/contafinupdate/verificarecod.aspx/verificarecod/verificare/CNP/1810228134187
@@ -1790,6 +1796,7 @@ Function ANAF_VerdictDinCursor
Addproperty(loResult, "cui", cui)
Addproperty(loResult, "scpTVA", Nvl(scpTVA, .F.))
Addproperty(loResult, "statusInactivi", Nvl(statusInactivi, .F.))
Addproperty(loResult, "dataRadiere", Nvl(dataRadiere, {}))
Addproperty(loResult, "denumire", Nvl(denumire, ""))
Addproperty(loResult, "mesaj", Nvl(mesaj, ""))
Addproperty(loResult, "dInceputScpTVA", Nvl(data_inceput_ScpTVA, {}))
@@ -2908,6 +2915,7 @@ Define Class VerificareANAF As Custom
*** in SQL, la tdData, verdictele din intervale (platitor TVA, TVA la incasare, split TVA, inactiv)
*** Adauga randurile in tcAlias (cursor in forma crsANAF + sursa/data_sursa), creandu-l daca lipseste
*** tcSursa (optional, implicit 'CACHE') eticheteaza randurile inserate - 'CACHE' sau 'CACHE_INDISP'
*** Cu 'CACHE' se accepta doar verificari din ziua tdData sau ulterioare (pentru tdData viitoare, din azi); 'CACHE_INDISP' accepta si verificari mai vechi
*** Un rand NU se intoarce cand tdData e inainte de inceputul unui interval cunoscut (scpTVA/TVAINC/
*** inactivare) - ANAF intoarce o singura perioada, nu istoricul complet, deci pentru o data anterioara
*** primei perioade memorate cache-ul nu poate afirma "nu era" - codul ramane netratat, merge la ANAF
@@ -2916,7 +2924,7 @@ Define Class VerificareANAF As Custom
Function CitesteIstoricPentruCoduri
Lparameters tcListaCoduriN, tdData, tcAlias, tcSursa
Local lcAlias, lcCursorIstoric, lcSql, ldData, lnZileCache, lcSelect, lcSursa, lcCondCod, lnTotalCod, lnTranse, lnTransa, lnI, lcTransa
Local lcAlias, lcCursorIstoric, lcSql, ldData, lnZileCache, lcSelect, lcSursa, lcCondCod, lnTotalCod, lnTranse, lnTransa, lnI, lcTransa, lcCondCache
*!* 30.07.2026 marius.mutu: pdDataCache/pnZileCache Private, nu Local, ca sa fie vizibile in goExecutor.oExecuta la bind
Private pdDataCache, pnZileCache
lcAlias = Iif(!Empty(m.tcAlias) And Type('tcAlias') = "C", m.tcAlias, "crsANAF")
@@ -2960,6 +2968,9 @@ Define Class VerificareANAF As Custom
lcCondCod = '(' + m.lcCondCod + ')'
Endif
*!* CACHE: verificarea trebuie sa fie din ziua ceruta sau ulterioara
lcCondCache = Iif(m.lcSursa == 'CACHE', ' and trunc(dataorav_anaf) >= least(?pdDataCache, trunc(sysdate))', '')
*!* 01.08.2026 marius.mutu: v_tvainc - margine exclusiva (data_sfarsit_tvainc - 1), aliniata cu pack_roartvai; ground truth rtvai_istoric confirma [inceput,sfarsit)
*!* 02.08.2026 marius.mutu: randul curent se alege pe dataorav_anaf desc - dupa fuziunea istoricelor, ID-ul nu mai urmeaza ordinea cronologica
TEXT To lcSql TEXTMERGE Noshow
@@ -2975,7 +2986,7 @@ select cod_fiscal_n, firma, adresa, judet, regcom, dataorav_anaf,
from istoric_coduri_fiscale i
where <<m.lcCondCod>>
and dataorav_anaf is not null
and sysdate - dataorav_anaf <= ?pnZileCache)
and sysdate - dataorav_anaf <= ?pnZileCache<<m.lcCondCache>>)
where rn = 1
and (data_inceput_scptva is null or ?pdDataCache >= data_inceput_scptva)
and (data_inceput_tvainc is null or ?pdDataCache >= data_inceput_tvainc)