UFN_ADJUSTMENTHISTORY_GETADJUSTEDSPLITS_FOR_SPECIFIC_LINEITEMS
Return
Return Type |
---|
nvarchar(max) |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | IN | |
@LINEITEMS | UDT_GENERICID | IN | |
@CURRENCYCODE | tinyint | IN |
Definition
Copy
create function [dbo].[UFN_ADJUSTMENTHISTORY_GETADJUSTEDSPLITS_FOR_SPECIFIC_LINEITEMS]
(
@REVENUEID uniqueidentifier
,@LINEITEMS UDT_GENERICID readonly
,@CURRENCYCODE tinyint
)
returns nvarchar(max)
as
begin
declare @RESULT nvarchar(max);
declare @DESIGNATION nvarchar(512);
declare @AMOUNT money;
set @RESULT = N'';
if @REVENUEID is null
return @RESULT;
declare SPLIT_CURSOR cursor local fast_forward for
select
coalesce(dbo.UFN_DESIGNATION_BUILDNAME(DESIGNATIONID), ''),
case @CURRENCYCODE when 0 then AMOUNT when 2 then TRANSACTIONAMOUNT else ORGANIZATIONAMOUNT end
from @LINEITEMS LI
inner join dbo.REVENUESPLIT RS on RS.ID = LI.ID
where REVENUEID = @REVENUEID;
open SPLIT_CURSOR;
fetch next from SPLIT_CURSOR into @DESIGNATION, @AMOUNT;
while @@FETCH_STATUS = 0
begin
if len(@DESIGNATION) <> 0
set @RESULT = @RESULT + ' ' + @DESIGNATION + ' (' + cast(@AMOUNT as nvarchar) + ')' + char(13) + char(10);
fetch next from SPLIT_CURSOR into @DESIGNATION, @AMOUNT;
end
deallocate SPLIT_CURSOR;
return coalesce(@RESULT, '');
end