129 lines
7.1 KiB
Plaintext
129 lines
7.1 KiB
Plaintext
* ointroduceri_efactura.prg
|
|
|
|
Procedure importEfacturaPrimite
|
|
DO vizImportEFactura WITH 'PRIMITE'
|
|
ENDPROC
|
|
|
|
PROCEDURE importEfacturaTrimise
|
|
DO vizImportEFactura WITH 'TRIMISE'
|
|
ENDPROC
|
|
|
|
PROCEDURE vizImportEFactura
|
|
LPARAMETERS tcTip
|
|
* tcTIP: PRIMITE/TRIMISE
|
|
|
|
Private poFacturi, poFacturiDetalii
|
|
Local loFrmFacturi As "frm_efactura_import", lcTip, llPrimite
|
|
Local lcData1, lcFiltru, lcFiltruOriginal, lcOrder, lcSchema, lcgroup, llAfiseaza, llModParam
|
|
poFacturi = Null
|
|
poFacturiDetalii = Null
|
|
|
|
lcTip = IIF(TYPE('tcTip') = 'C' and !EMPTY(m.tcTip), UPPER(ALLTRIM(m.tcTip)), 'PRIMITE')
|
|
llPrimite = (m.lcTip = 'PRIMITE')
|
|
|
|
lcTabel = IIF(m.lcTip = 'PRIMITE', 'anaf_vefactura_primit', 'anaf_vefactura_trimis')
|
|
|
|
* FACTURI PRIMITE/TRIMISE
|
|
lcData1 = '01' + Padl(Int(m.gnLuna),2,'0') + Alltrim(Str(m.gnAn))
|
|
TEXT To lcSchema Noshow
|
|
ales N(1), id N(20), id_fact N(20), data_act D, data_scad D, numar_act C(30), xfurnizor C(200), xclient C(200), partener C(200), id_incarcare C(36), id_descarcare c(36) null, tip_mesaj_raspuns C(50) null,mesaj_raspuns C(250) null, data_raspuns D null, trimis N(1) null, data_trimis T null, cod_fiscal C(30) null, cod_fiscal_emitent C(30) null, cod_fiscal_beneficiar C(30) null, detalii M null, total_fara_tva N(16,4), total_tva N(16,4), total_cu_tva N(16,4), discount_fara_tva N(16,4), taxe_fara_tva N(16,4), valoare_fara_tva N(16,4), total_de_plata N(16,4), nume_valuta C(5), test N(1) null, jtotctva N(16,4), descriere M null, detalii_plata M null, diferenta N(16,4), procesat N(1)
|
|
ENDTEXT
|
|
|
|
TEXT To lcSelect TEXTMERGE Noshow
|
|
SELECT 0 as ales, id, id_fact, data_act, data_scad, numar_act, xfurnizor, xclient, partener, id_incarcare, id_descarcare, tip_mesaj_raspuns, mesaj_raspuns, data_raspuns, NVL(trimis,0) as trimis, data_trimis, cod_fiscal, cod_fiscal_emitent, cod_fiscal_beneficiar, detalii, total_fara_tva, total_tva, total_cu_tva, discount_fara_tva, taxe_fara_tva, valoare_fara_tva, total_de_plata, nume_valuta, test, jtotctva, descriere, detalii_plata, NVL(total_cu_tva, 0.00)-NVL(jtotctva, 0.00) as diferenta, procesat FROM <<m.lcTabel>>
|
|
ENDTEXT
|
|
lcOrder = [data_act,numar_act,data_raspuns]
|
|
lcgroup = []
|
|
lcFiltru = [(extract(year from data_act) = ?gnAn and extract(month from data_act) = ?gnLuna) or (data_act is null and data_raspuns >= to_date('] + m.lcData1 + [','ddmmyyyy'))]
|
|
lcFiltruOriginal = []
|
|
llModParam = .T.
|
|
llAfiseaza = .F.
|
|
|
|
gencursor('poFacturi', 'crsFacturi', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal)
|
|
poFacturi.ca_baza1.afisare()
|
|
Select crsFacturi
|
|
Go Top
|
|
|
|
* DETALII FACTURI PRIMITE/TRIMISE/EMISE
|
|
TEXT To lcSchema Noshow
|
|
id_tip N(10) null, cont c(4) null, id_articol N(20) null, id_gestiune N(20) null, id N(20), id_efactura N(20), nr N(5), articol V(250), descriere V(250), detalii M, cantitate N(18,6), um V(20), um_iso V(50), id_um I, um_roa V(50), pret N(20,6), proctva N(7,2), valoarefaratva N(20,6), in_stoc N(1), articol_roa V(250)
|
|
ENDTEXT
|
|
TEXT To lcSelect Noshow
|
|
select CAST(0 as number(10)) as id_tip, CAST('' as Varchar2(4)) as cont, CAST(null as Number(20)) as id_articol, CAST(null as Number(20)) as id_gestiune, id, id_efactura, nr, articol, descriere, detalii, cantitate, um, um_iso, id_um, um_roa, pret, proctva, valoarefaratva, 0 as in_stoc, CAST('' as Varchar2(250)) as articol_roa from anaf_vefactura_detalii
|
|
ENDTEXT
|
|
lcOrder = [nr]
|
|
lcgroup = []
|
|
lcFiltru = [1=2] && IIF(!EMPTY(NVL(crsFacturiPrimite.id,0)), [id_efactura=] + ALLTRIM(STR(crsFacturiPrimite.id)), [1=2])
|
|
lcFiltruOriginal = []
|
|
llModParam = .T.
|
|
llAfiseaza = .F.
|
|
|
|
gencursor('poFacturiDetalii', 'crsDetaliiFacturi', lcSelect, lcFiltru, lcSchema, lcOrder, llAfiseaza, lcgroup, llModParam, lcFiltruOriginal)
|
|
poFacturiDetalii.ca_baza1.afisare()
|
|
|
|
* Cursoare helper
|
|
CREATE CURSOR cTip (id I, in_stoc N(1), tip V(50), cont V(4))
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Nedefinit','', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. mat. nestoc.','604', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. Energie','6051', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. Apa','6052', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. Gaze','6053', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. chirii','6123', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. colaboratori','621', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. comisioane','622', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. protocol','623', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. transp. bunuri/pers.','624', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. deplasari','625', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. posta/telecom.','626', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ch. terti','628', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Altele','461', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('-----------------','', 0)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Marfuri','371', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Materii prime','301', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Materiale auxiliare','3021', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ambalaje','381', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Obiecte de inventar','303', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Amenajari provizorii','323', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Mat. spre prelucrare','8032', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Mat. in pastrare/consig.','8033', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Discount financiar','767', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Combustibili','3022', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Piese de schimb','3024', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Alte mat. consumabile','3028', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Discount comercial','609', 1)
|
|
INSERT INTO cTip (tip, cont, in_stoc) VALUES ('Ambalaje SGR','461', 0)
|
|
|
|
REPLACE ALL id WITH RECNO()-1 IN cTip
|
|
GO TOP IN cTip
|
|
INDEX on id TAG id
|
|
|
|
*!* llSucces = goExecutor.oExecuta("select id_articol, denumire, codmat from vnom_articole where inactiv = 0", 'cArticole')
|
|
|
|
*!* SELECT cArticole
|
|
*!* INDEX on id_articol TAG id_articol
|
|
|
|
llSucces = goExecutor.oExecuta([select distinct nume_gestiune,cgest,id_gestiune,nr_pag,cont from vgest_gestiuni_util where inactiv = 0 and id_util = ] + Alltrim(Str(m.gnIdUtil)), 'cGestiuni')
|
|
SELECT cGestiuni
|
|
INDEX on id_gestiune TAG id_gest
|
|
|
|
llSucces = goExecutor.oExecuta("select cod_um_iso, um_iso from syn_vnom_um_iso", 'cUMISO')
|
|
SELECT cUMISO
|
|
INDEX on cod_um_iso TAG cod_um_iso
|
|
|
|
llSucces = goExecutor.oExecuta("select id, um, cod_um_iso, um_iso from vnom_um", 'cUM')
|
|
SELECT cUM
|
|
INDEX on id TAG id
|
|
|
|
Select crsFacturi
|
|
loFrmFacturi = Createobject("frm_import_efactura", m.llPrimite)
|
|
* Do Form anaf_efactura Name loFrmBorderou Linked With this Noshow
|
|
|
|
loFrmFacturi.Show(1)
|
|
|
|
Use In (Select('crsFacturi'))
|
|
Use In (Select('crsDetaliiFacturi'))
|
|
Use In (Select('cTip'))
|
|
Use In (Select('cArticole'))
|
|
Use In (Select('cGestiuni'))
|
|
Endproc && vizFacturiPrimite
|
|
|