Plan completat: tlReconnect e al 8-lea parametru din oExecute si e implicit .T., deci transa 3 trebuie sa-l paseze .F. explicit. N din dialogul transei 3 numara facturi distincte (decizie marius.mutu, 28.07.2026). SVN r17914; script DB in DATABASE r17912. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DhJwsrFFe1ZNAAtS8Twuti
3.2 KiB
3.2 KiB
Handoff TRANSA 2 (L4) — borderou eFactura, taxare inversa
Data: 28.07.2026. Status: implementat si validat pe schema dev, NEAPLICAT pe view-urile reale.
Ce am scris
D:\ROA\DATABASE\SCRIPTURI_CLAR\2026\07\ff_2026_07_28_01_COMUN_EFACTURA.sql(nou, CRLF):create or replace viewpentruanaf_vefactura_primit(coloanajtva_ti= suma celor 13 termeniTI*/XX*TITde pejc2007, printr-un singurCROSS APPLYcare intoarce sijtotctvasijtva_tiodata — un singur scan, nu doi subselecti) sianaf_vefactura_trimis(jtva_ti=0constant,jtotctvaneschimbat). La final:alter view ... compilepe cele doua DETALIU + verificareuser_objects.status='INVALID'care arunca eroare daca ramane ceva invalid.versiune_db.txt:2026_07_26_02->2026_07_28_01.COMUN\programe\import_efactura.prg: sondauser_tab_columnspelcTabel(goExecutor.oExecuta, tipar deja folosit in fisier lacGestiuni/cUMISO/cUM) inainte de a construilcSelect;lcExprDiferentaia una din doua forme (cu/farajtva_ti), injectata prin<<m.lcExprDiferenta>>inTEXTMERGE.lcSchemaneatins (numar de coloane identic). Antet actualizat cu intrare noua*!* 28.07.2026 / marius.mutu.
Ce am validat pe baza (MARIUSM_AUTO@ROA_CENTRAL, doar SELECT + view-uri temporare)
Am creat zz_test_jtva_primit/zz_test_jtva_trimis cu EXACT corpul din script, verificat, apoi
DROP VIEW pe amandoua (confirmat: no rows selected la interogarea finala pe user_objects).
- Ambele compileaza (
STATUS = VALID). zz_test_jtva_primit: 487 randuri (coincide cu ce raporta handoff-ul conditiilor); 459 pe trimis.- Cele 8 randuri cu
id_factcompletat:jtotctvaneschimbat fata de azi,jtva_ti = 0pe toate (niciuna nu e taxare inversa — coincide cu constatarea dinhandoff_transa2_conditii.md). - Pe trimis:
jtva_tie0pe toate randurile, niciodata NULL. - Testul aritmetic direct pe cazul sintetic din handoff (
jc2007.id_fact=8007136,an=2022 luna=4 dataact=30-APR-22 nract=222 id_part=614):totctva=119,jtva_ti_expr=19— exact valorile asteptate (confirma cadiferentaar deveni100-(119-19)=0). - Sonda
user_tab_columnsgasesteJTVA_TIpe ambele view-uri de test — confirma ca tehnica folosita inimport_efactura.prgfunctioneaza identic pe view ca pe tabela.
NU am rulat create or replace view pe view-urile reale si nu am atins jc2007/jv2007.
Ce ramane de facut de om
- Aplicarea scriptului pe schema clientului, INAINTE de deploy-ul exe-ului (ordinea ceruta de plan).
- Verificarea finala pe o factura REALA de taxare inversa importata din eFactura — schema dev nu are
niciuna (confirmat deja in
handoff_transa2_conditii.md); mecanismul e demonstrat doar numeric. - Review + aprobare
docs\diff_runda1_transa2.patchinainte de orice commit (SVN sau git). - Curatenie dupa aprobare:
import_efactura.prg.pre_runda1.baksi patch-ul se sterg (nu se comit).
Fisiere
- Backup:
D:\ROA\ROACONT\COMUN\programe\import_efactura.prg.pre_runda1.bak - Patch:
D:\ROA\ROACONT\docs\diff_runda1_transa2.patch - Script nou:
D:\ROA\DATABASE\SCRIPTURI_CLAR\2026\07\ff_2026_07_28_01_COMUN_EFACTURA.sql D:\ROA\ROACONT\versiune_db.txt:2026_07_28_01