Acest site folosește cookie-uri. Prin navigarea pe acest site, iți exprimi acordul asupra folosirii cookie-urilor. Vezi și politica noastră de confidențialitate

N E X U S
Nexus ERP

Nexus ERP progres

loading

Conținut fișier plăți


Funcțiile customizate de tipul "Conținut fișier plăți" sunt de două tipuri: STANDARD și INLINE și sunt utilizate pentru exportul propunerilor de plată.

Pentru funcțiile INLINE se va realiza un select care să returneze structura prezentată, iar pentru funcțiile STANDARD se va realiza un INSERT INTO @ret_table, respectând aceeași structură.

În cadrul modulului "Conturi bănci", pentru contul asociat propunerii de plată există posibilitatea de a selecta funcția customizată pentru exportul fișierelor de plată.

Parametri funcție customizată

Parametru Tip Descriere
@al_tabel VARCHAR(6) ANLUNA, parte din cheia primară a înregistrării asociate
@pl_tabel SMALLINT PCT_LCR, parte din cheia primară a înregistrării asociate
@id_tabel NUMERIC(18,0) ID, parte din cheia primară a înregistrării asociate

 

Structura returnată de funcția customizată

Structură Tip Descriere
nume_fisier VARCHAR(200) Denumirea fișierului generat, inclusiv extensia
continut_fisier NVARCHAR(MAX) Conținutul fișierului generat

 

Exemplu de funcție customizată INLINE pentru exportul conținutului fișierului de plăți BCR

Pentru funcția STANDARD se va insera în tabela @ret_table, urmat de același select:

INSERT INTO @ret_table(nume_fisier, continut_fisier)

SELECT 
	nume_fisier = 'plati_bcr_' + MAX(m.detalii) + '.csv',
	continut_fisier = STRING_AGG(m.linie, CHAR(13))
FROM (
	SELECT TOP 10000 linie, detalii
		FROM (SELECT	idx = 0, 
				'' AS detalii,
				linie = CAST('Numar OP,Suma,IBAN Beneficiar,Banca Beneficiar,Nume Beneficiar,Cod fiscal beneficiar,Detalii 1,Detalii 2,Valuta (RON),Plata buget,Nume platitor,IBAN Platitor,Banca platitor,Cod fiscal platitor' AS VARCHAR(MAX))
		UNION 
		SELECT	idx = ROW_NUMBER() OVER(ORDER BY l.nume_furn ASC), 
			a.nr_doc + '_' + CONVERT(CHAR(10), a.data_doc, 120) + '_' + TRIM(a.cont_iban) AS detalii,
			linie = CAST(CONCAT_WS(',', dbo.string(ROW_NUMBER() OVER(ORDER BY l.nume_furn ASC)),	
					LTRIM(STR(l.suma, 15,2)),										
					TRIM(l.cont_banca), 											
					TRIM(l.cod_bic), 												
					TRIM(REPLACE(l.nume_furn, ',', ' ')), 							
					TRIM(l.part_cod_fiscal), 										
					TRIM(l.detalii), 												
					'', 															
					TRIM(a.prescdeviz),												
					'', 															
					TRIM(REPLACE(ds.denumire, ',', ' ')), 							
					TRIM(a.cont_iban), 												
					TRIM(ISNULL(a.cod_bic, '')), 									
					TRIM(dbo.cod_fiscal(ds.cod_fiscal))) AS VARCHAR(MAX))			
		FROM propuneri_plata_view a  
		INNER JOIN propuneri_plata_lin_view l ON l.pl_prop = a.pct_lcr AND l.id_prop = a.id 
		INNER JOIN parteneri p ON p.pct_lcr = l.pl_401 AND p.id = l.id_401  
		CROSS APPLY date_soc_view ds
		WHERE l.anluna = @al_tabel AND l.pl_prop = @pl_tabel AND l.id_prop = @id_tabel) l 
ORDER BY l.idx) m

  •     Calcul promoție
  • Conținut fișier plăți salarii