USP_DATAFORMTEMPLATE_ADJUSTLOAD_STOCKSALEGLDISTRIBUTION_2
The load procedure used by the edit dataform template "Stock Sale GL Distribution Adjust Form 2"
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 Stock GL distribution |
@CAPTION | nvarchar(10) | INOUT | Stock 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 |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT | Transaction currency ID |
@DEFAULTGLPAYMENTMETHODREVENUETYPEMAPPINGID | uniqueidentifier | INOUT | Default mapping type |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADJUSTLOAD_STOCKSALEGLDISTRIBUTION_2
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@GLDISTRIBUTION xml = null output,
@CAPTION nvarchar(10) = 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,
@TRANSACTIONCURRENCYID 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,
STOCKSALEID,
TRANSACTIONAMOUNT AMOUNT,
TRANSACTIONCURRENCYID,
TRANSACTIONTYPECODE
from dbo.[UFN_REVENUE_GETSTOCKSALEGLDISTRIBUTION](@ID)
for xml raw('ITEM'),type,elements,root('GLDISTRIBUTION'),BINARY BASE64
);
select
@CAPTION = 'stock',
@ADJUSTMENTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate()),
@ADJUSTMENTPOSTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate()),
@ADJUSTMENTPOSTSTATUSCODE = 0;
-- if adjustment already exists for this sold stock detail
select top 1
@ADJUSTMENTDATE = STOCKSALEADJUSTMENT.DATE,
@ADJUSTMENTPOSTDATE = STOCKSALEADJUSTMENT.POSTDATE,
@ADJUSTMENTPOSTSTATUSCODE = 1,
@ADJUSTMENTREASON = STOCKSALEADJUSTMENT.REASON,
@ADJUSTMENTREASONCODEID = STOCKSALEADJUSTMENT.REASONCODEID
from dbo.STOCKSALEADJUSTMENT
where STOCKSALEADJUSTMENT.STOCKSALEID = @ID and STOCKSALEADJUSTMENT.POSTSTATUSCODE = 1;
if @GLDISTRIBUTION is not null
begin
set @DATALOADED = 1;
select
@TSLONG = max(STOCKSALEGLDISTRIBUTION.TSLONG),
@TRANSACTIONCURRENCYID = STOCKSALEGLDISTRIBUTION.TRANSACTIONCURRENCYID,
@DEFAULTGLPAYMENTMETHODREVENUETYPEMAPPINGID = STOCKSALEGLDISTRIBUTION.GLPAYMENTMETHODREVENUETYPEMAPPINGID
from
dbo.STOCKSALEGLDISTRIBUTION
where
STOCKSALEGLDISTRIBUTION.STOCKSALEID = @ID
group by STOCKSALEGLDISTRIBUTION.TRANSACTIONCURRENCYID, STOCKSALEGLDISTRIBUTION.GLPAYMENTMETHODREVENUETYPEMAPPINGID;
end
return 0;
end