UFN_REVENUE_GETGLDISTRIBUTION
Gets a table of Revenue GL distribution (Actual or Projected).
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_REVENUE_GETGLDISTRIBUTION(@REVENUEID uniqueidentifier)
returns @REVENUEGLDISTRIBUTION table
(
ID uniqueidentifier null,
GLPAYMENTMETHODREVENUETYPEMAPPINGID uniqueidentifier not null,
TRANSACTIONTYPECODE tinyint not null,
DEBITCREDIT nvarchar(50) not null,
ACCOUNT nvarchar(100) not null,
PROJECT nvarchar(100) null,
AMOUNT money not null,
REFERENCE nvarchar(255) not null,
ORGANIZATIONAMOUNT money not null,
BASECURRENCYID uniqueidentifier,
TRANSACTIONAMOUNT money,
TRANSACTIONCURRENCYID uniqueidentifier,
BASEEXCHANGERATEID uniqueidentifier,
ORGANIZATIONEXCHANGERATEID uniqueidentifier,
GLTRANSACTIONID uniqueidentifier
)
as
begin
/*If entry exists in REVENUEGLDISTRIBUTION then get those (user has chosen to override the system generated entries */
insert into @REVENUEGLDISTRIBUTION (ID, GLPAYMENTMETHODREVENUETYPEMAPPINGID, TRANSACTIONTYPECODE, DEBITCREDIT, ACCOUNT, PROJECT, AMOUNT, REFERENCE,
ORGANIZATIONAMOUNT, BASECURRENCYID, TRANSACTIONAMOUNT, TRANSACTIONCURRENCYID, BASEEXCHANGERATEID, ORGANIZATIONEXCHANGERATEID, GLTRANSACTIONID)
select
JEX.GLTRANSACTIONID as ID,
JEX.GLPAYMENTMETHODREVENUETYPEMAPPINGID,
JE.TRANSACTIONTYPECODE,
JE.TRANSACTIONTYPE as DEBITCREDIT,
coalesce(GLACCOUNT.ACCOUNTNUMBER, JEX.ACCOUNT,'') as ACCOUNT,
JEX.PROJECT,
JE.BASEAMOUNT as AMOUNT,
JE.COMMENT as REFERENCE,
JE.ORGAMOUNT ORGANIZATIONAMOUNT,
V.BASECURRENCYID,
JE.TRANSACTIONAMOUNT,
JE.TRANSACTIONCURRENCYID,
JEX.PRECALCBASEEXCHANGERATEID as BASEEXCHANGERATEID,
JEX.PRECALCORGANIZATIONEXCHANGERATEID as ORGANIZATIONEXCHANGERATEID,
JE.ID as GLTRANSACTIONID
from
dbo.FINANCIALTRANSACTIONLINEITEM LI
inner join
dbo.JOURNALENTRY JE on JE.FINANCIALTRANSACTIONLINEITEMID = LI.ID
inner join
dbo.JOURNALENTRY_EXT JEX on JEX.ID = JE.ID
inner join
dbo.V_BASECURRENCYFORFINANCIALTRANSACTION_I V with (noexpand) on LI.FINANCIALTRANSACTIONID = V.FINANCIALTRANSACTIONID
left outer join
dbo.GLACCOUNT on JE.GLACCOUNTID = GLACCOUNT.ID
where
LI.FINANCIALTRANSACTIONID = @REVENUEID
and JEX.OUTDATED = 0
and JEX.TABLENAMECODE = 1;
return
end