USP_DATAFORMTEMPLATE_ADJUSTLOAD_GIFTINKINDSALEGLDISTRIBUTION
The load procedure used by the edit dataform template "Gift-in-Kind Sale GL Distribution Adjust Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@GLDISTRIBUTION | xml | INOUT | Sold gift-in-kind GL distribution |
@CAPTION | nvarchar(12) | INOUT | Stock, Gift-in-Kind, or Property |
@TSLONG | bigint | INOUT | Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record. |
@ADJUSTMENTDATE | datetime | INOUT | Adjustment date |
@ADJUSTMENTPOSTDATE | datetime | INOUT | Adjustment post date |
@ADJUSTMENTPOSTSTATUSCODE | tinyint | INOUT | Post status Code |
@ADJUSTMENTREASON | nvarchar(300) | INOUT | Adjustment details |
@ADJUSTMENTREASONCODEID | uniqueidentifier | INOUT | Adjustment reason |
@DEFAULTTRANSACTIONCURRENCYID | uniqueidentifier | INOUT | Default Transaction currency ID |
@DEFAULTGLPAYMENTMETHODREVENUETYPEMAPPINGID | uniqueidentifier | INOUT | Default mapping type |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADJUSTLOAD_GIFTINKINDSALEGLDISTRIBUTION
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@GLDISTRIBUTION xml = null output,
@CAPTION nvarchar(12) = null output,
@TSLONG bigint = 0 output,
@ADJUSTMENTDATE datetime = null output,
@ADJUSTMENTPOSTDATE datetime = null output,
@ADJUSTMENTPOSTSTATUSCODE tinyint = null output,
@ADJUSTMENTREASON nvarchar(300) = null output,
@ADJUSTMENTREASONCODEID uniqueidentifier = null output,
@DEFAULTTRANSACTIONCURRENCYID uniqueidentifier = null output,
@DEFAULTGLPAYMENTMETHODREVENUETYPEMAPPINGID uniqueidentifier = null output
)
as
begin
set nocount on;
set @DATALOADED = 0;
set @TSLONG = 0;
set @GLDISTRIBUTION = (
select
ACCOUNT,
BASECURRENCYID,
BASEEXCHANGERATEID,
DEBITCREDIT,
GLPAYMENTMETHODREVENUETYPEMAPPINGID,
ID,
MAPPINGTYPE,
ORGANIZATIONAMOUNT,
ORGANIZATIONEXCHANGERATEID,
PROJECT,
REFERENCE,
GIFTINKINDSALEID,
TRANSACTIONAMOUNT AMOUNT,
TRANSACTIONCURRENCYID,
TRANSACTIONTYPECODE
from dbo.[UFN_REVENUE_GETGIFTINKINDSALEGLDISTRIBUTION](@ID)
for xml raw('ITEM'),type,elements,root('GLDISTRIBUTION'),BINARY BASE64
);
select
@CAPTION = 'gift-in-kind',
@ADJUSTMENTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate()),
@ADJUSTMENTPOSTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate()),
@ADJUSTMENTPOSTSTATUSCODE = 0;
-- if adjustment already exists for this sold gift-in-kind detail
select top 1
@ADJUSTMENTDATE = GIFTINKINDSALEADJUSTMENT.DATE,
@ADJUSTMENTPOSTDATE = GIFTINKINDSALEADJUSTMENT.POSTDATE,
@ADJUSTMENTPOSTSTATUSCODE = 1,
@ADJUSTMENTREASON = GIFTINKINDSALEADJUSTMENT.REASON,
@ADJUSTMENTREASONCODEID = GIFTINKINDSALEADJUSTMENT.REASONCODEID
from dbo.GIFTINKINDSALEADJUSTMENT
where GIFTINKINDSALEADJUSTMENT.GIFTINKINDSALEID = @ID and GIFTINKINDSALEADJUSTMENT.POSTSTATUSCODE = 1;
if @GLDISTRIBUTION is not null
begin
set @DATALOADED = 1;
select top 1
@TSLONG = max(GIFTINKINDSALEGLDISTRIBUTION.TSLONG),
@DEFAULTTRANSACTIONCURRENCYID = GIFTINKINDSALEGLDISTRIBUTION.TRANSACTIONCURRENCYID,
@DEFAULTGLPAYMENTMETHODREVENUETYPEMAPPINGID = GIFTINKINDSALEGLDISTRIBUTION.GLPAYMENTMETHODREVENUETYPEMAPPINGID
from
dbo.GIFTINKINDSALEGLDISTRIBUTION
where
GIFTINKINDSALEGLDISTRIBUTION.GIFTINKINDSALEID = @ID and GIFTINKINDSALEGLDISTRIBUTION.TRANSACTIONTYPECODE = 1 -- Credit is expected by unit tests when DEFAULTGLPAYMENTMETHODREVENUETYPEMAPPINGID are different!
group by GIFTINKINDSALEGLDISTRIBUTION.TRANSACTIONCURRENCYID, GIFTINKINDSALEGLDISTRIBUTION.GLPAYMENTMETHODREVENUETYPEMAPPINGID;
end
return 0;
end