USP_DATAFORMTEMPLATE_EDITLOAD_CREDITGLDISTRIBUTION
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@DATALOADED | bit | INOUT | |
@TSLONG | bigint | INOUT | |
@GLDISTRIBUTION | xml | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_CREDITGLDISTRIBUTION(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@GLDISTRIBUTION xml = null output
)
as
begin
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
-- populate the output parameters, which correspond to fields on the form. Note that
-- we set @DATALOADED = 1 to indicate that the load was successful. Otherwise, the system
-- will display a "no data loaded" message. Also note that we fetch the TSLONG so that concurrency
-- can be considered.
set @GLDISTRIBUTION = (
select
JE.ID,
JE.TRANSACTIONAMOUNT AMOUNT,
JE.TRANSACTIONTYPECODE,
JE.GLACCOUNTID,
JEX.PROJECT,
JE.COMMENT as REFERENCE,
JE.TRANSACTIONCURRENCYID,
FT.PDACCOUNTSYSTEMID
from
dbo.FINANCIALTRANSACTION FT
inner join dbo.FINANCIALTRANSACTIONLINEITEM LI on LI.FINANCIALTRANSACTIONID = FT.ID
inner join dbo.JOURNALENTRY JE on JE.FINANCIALTRANSACTIONLINEITEMID = LI.ID
inner join dbo.JOURNALENTRY_EXT JEX on JEX.ID = JE.ID
where FT.ID = @ID
for xml raw('ITEM'),type,elements,root('GLDISTRIBUTION'),BINARY BASE64
);
if @GLDISTRIBUTION is not null
begin
select
@TSLONG = max(JE.TSLONG),
@DATALOADED = 1
from
dbo.FINANCIALTRANSACTION FT
inner join dbo.FINANCIALTRANSACTIONLINEITEM LI on LI.FINANCIALTRANSACTIONID = FT.ID
inner join dbo.JOURNALENTRY JE on JE.FINANCIALTRANSACTIONLINEITEMID = LI.ID
where FT.ID = @ID
end
return 0;
end