USP_FENXT_ADDACCOUNTPROJECTREQUIREMENT
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@PDACCOUNTSYSTEMID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.USP_FENXT_ADDACCOUNTPROJECTREQUIREMENT
(
@PDACCOUNTSYSTEMID uniqueidentifier
)
as
declare @FUNDSTART tinyint;
declare @FUNDLENGTH tinyint;
declare @CHANGEAGENTID uniqueidentifier;
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
select @FUNDSTART = SEGMENTSTART, @FUNDLENGTH = SEGMENTLENGTH
from dbo.FENXTACCOUNTSTRUCTURE
where PDACCOUNTSYSTEMID = @PDACCOUNTSYSTEMID
and SEGMENTTYPE = 'Fund';
if @FUNDSTART is not null
begin
update dbo.FENXTACCOUNT
set PROJECTREQUIRED =
case FENXTACCOUNTFUNDREQUIREMENT.PROJECT_REQUIREONACCOUNTSSPECIFIED when 'Do not require' then 1 when 'All accounts' then 2 when 'Income Statement Accounts' then
case FENXTACCOUNT.CATEGORY
when 'Gain' then 2
when 'Transfer' then 2
when 'Loss' then 2
when 'Expense' then 2
when 'Gift' then 2
when 'Revenue' then 2
else 1
end
end,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
from dbo.FENXTACCOUNT
inner join dbo.FENXTACCOUNTFUNDREQUIREMENT on substring(FENXTACCOUNT.ACCOUNTNUMBER,@FUNDSTART, @FUNDLENGTH) = FENXTACCOUNTFUNDREQUIREMENT.FUNDVALUE
where FENXTACCOUNT.PDACCOUNTSYSTEMID = @PDACCOUNTSYSTEMID
and FENXTACCOUNT.PROJECTREQUIRED = 0;
end