-- probe_e2e_cont_667_semn.sql -- E2E (Pas 4, partea Oracle): dovada ca pack_facturare.scrie_nota aplica SEMNUL NEGATIV pentru -- linia de discount generata de fix (SCD=667, ASCD=11, SCC=4111, ASCC=12) - suma scrisa in -- ACT_TEMP iese negativa, exact ca la articolele 667 din catalogul de articole. -- Semnul nu e cod nou: regula V_SCD in ('667','267','2678','709') exista deja in scrie_nota -- (ff_2026_09_16_04_COMUN_PACK_FACTURARE.sql:12879-12887). -- -- Ruleaza in TRANZACTIE si se inchide cu ROLLBACK - nu ramane nimic in ACT_TEMP. -- Rulare: -- sqlplus MARIUSM_AUTO/@ROA_CENTRAL @probe_e2e_cont_667_semn.sql -- Rezultat asteptat: E2E2|SUMA=-84.03|SCD=667|SCC=4111|ret=84.03 si ramase_667=0 set serveroutput on size 100000 set feedback off pagesize 200 linesize 250 heading off begin pack_sesiune.set_id_util(8); pack_sesiune.setluna(8); pack_sesiune.setan(2026); pack_sesiune.setlunabal(8); pack_sesiune.setanbal(2026); pack_contafin.SET_DATA_RON('MARIUSM_AUTO'); pack_sesiune.set_data_ron('MARIUSM_AUTO'); pack_contafin.set_id_sucursala(110); pack_contafin.set_id_firma(110); end; / declare v_ret number; v_suma act_temp.suma%type; v_scd act_temp.scd%type; v_scc act_temp.scc%type; v_idval number; v_idact number; begin pack_facturare.nid_util := 8; pack_facturare.ntip := 1; pack_facturare.nin_valuta := 0; v_idval := pack_def.GetIdMonedaNationala(); pack_facturare.nid_moneda_nationala := v_idval; select nvl(max(id_act), 0) into v_idact from act_temp; pack_facturare.nid_act := v_idact; pack_facturare.nnumar_act := 999999; pack_facturare.nnumar_bon := 0; pack_facturare.cserie_act := 'TESTE2E'; pack_facturare.ddata_ireg := sysdate; pack_facturare.ddata_act := sysdate; pack_facturare.ddata_scadenta := sysdate; pack_facturare.nid_fdoc := 0; pack_facturare.nid_part := 0; pack_facturare.nid_partc := 0; pack_facturare.nid_factc := 0; pack_facturare.nperechec := 0; pack_facturare.cexplicatia4 := null; pack_facturare.nid_responsabil := 0; pack_facturare.nid_jtva_coloana := null; pack_facturare.nTaxCode := null; pack_facturare.nproc_tva_max := 0; pack_facturare.nid_politica_stoc := 41; v_ret := pack_facturare.scrie_nota(1, 100, 0, 1, v_idval, 0, 1, 0, 0, 0, 'E2E DISCOUNT 667', '667', '11', '4111', '12', 0, 0, 0, 0, 19, null, null, null); select suma, scd, scc into v_suma, v_scd, v_scc from act_temp where id_act = pack_facturare.nid_act; dbms_output.put_line('E2E2|SUMA=' || v_suma || '|SCD=' || v_scd || '|SCC=' || v_scc || '|ret=' || v_ret); end; / rollback; prompt ROLLBACK EFECTUAT select count(*) ramase_667 from act_temp where scd = '667' and serie_act = 'TESTE2E'; exit