UFN_FINANCIALTRANSACTION_GETNEXTFINANCIALTRANSACTIONID
Returns the next financial transaction number based on the existing DB financial transactions.
Return
Return Type |
---|
nvarchar(60) |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@FINANCIALTRANSACTIONTYPECODE | tinyint | IN |
Definition
Copy
CREATE function dbo.UFN_FINANCIALTRANSACTION_GETNEXTFINANCIALTRANSACTIONID
(
@FINANCIALTRANSACTIONTYPECODE tinyint = null
)
returns nvarchar(60)
with execute as caller
as begin
-- Get a return value and setup with the default value.
declare @NEXTFINANCIALTRANSACTIONID bigint = 1;
--Check to see if there are any FINANCIALTRANSACTIONs
if (exists (select FINANCIALTRANSACTION.ID
from dbo.FINANCIALTRANSACTION
where ((@FINANCIALTRANSACTIONTYPECODE is null) or (FINANCIALTRANSACTION.TYPECODE = @FINANCIALTRANSACTIONTYPECODE)) and
(isnumeric(FINANCIALTRANSACTION.USERDEFINEDID) = 1) and
(len(FINANCIALTRANSACTION.USERDEFINEDID) < 60)
)
)
begin
select top 1 @NEXTFINANCIALTRANSACTIONID = cast(FINANCIALTRANSACTION.USERDEFINEDID as bigint)
from dbo.FINANCIALTRANSACTION
where ((@FINANCIALTRANSACTIONTYPECODE is null) or (FINANCIALTRANSACTION.TYPECODE = @FINANCIALTRANSACTIONTYPECODE)) and
(isnumeric(FINANCIALTRANSACTION.USERDEFINEDID) = 1) and
(len(FINANCIALTRANSACTION.USERDEFINEDID) < 60)
order by cast(FINANCIALTRANSACTION.USERDEFINEDID as bigint) desc;
set @NEXTFINANCIALTRANSACTIONID = @NEXTFINANCIALTRANSACTIONID + 1;
end
-- Return the next receivable payment ID
return cast(@NEXTFINANCIALTRANSACTIONID as nvarchar(60));
end