﻿-- =============================================
-- Author:		<Author,,Name>
-- Create date: <Create Date,,>
-- Description:	<Description,,>
-- =============================================
CREATE FUNCTION [dbo].[backup__fds__r_getBalanceThisMonth](
	@authuser varchar(100)
)
RETURNS varchar(25)
BEGIN
	DECLARE @today date = GETDATE();
	DECLARE @tomorrow date = DATEADD(DAY,1,@today);
	DECLARE @thismonthfirst date = [dbo].[date_monthfirst](@today);
	DECLARE @ret varchar(25) = ''

	IF [dbo].[fis_getModuleAuth]('fds_reports', @authuser) < 2
		SET @ret = '';
	ELSE 
		BEGIN
		
			WITH inv as (
				SELECT 
						i.[Dateofcreation]
						,i.[InvoiceBalance]
						,i.[InvoiceBalanceNetto]
					FROM [dbo].[mfr__invoices] as i 
					where --i.[invoicestate] in('eIsSent','eIsPaid','eIsOpen') and
						 i.[FileType] in( 'PdfInvoice','PdfCancelInvoice','PdfPartialInvoice') and ISNULL(InvoiceId,'') not in ('Preview','') 
						  AND [dbo].[date_monthfirst](i.[Dateofcreation]) = @thismonthfirst
				UNION
				SELECT 
						[Dateofcreation] = i.[DateFinalized]
						,i.[InvoiceBalance]
						,[InvoiceBalanceNetto] = i.[InvoiceBalance_net]
					FROM [dbo].[fds__invoices] as i 
					WHERE i.[isFinal] = 1 AND [dbo].[date_monthfirst](i.[DateFinalized]) = @thismonthfirst
			)
			SELECT TOP(1) @ret = FORMAT(  SUM(  ISNULL(inv.[InvoiceBalanceNetto],0) ) * 0.001, '#,0 k€', 'de') FROM inv;
		END

	RETURN @ret;
END