USP_DATAFORMTEMPLATE_EDIT_UNMAPPEDERRORPROCESS
The save procedure used by the edit dataform template "GL Account Mapping Message Update Process Edit Data Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@MESSAGES | xml | IN | Messages |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_UNMAPPEDERRORPROCESS
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@MESSAGES XML
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
declare @PDACCOUNTSYSTEMIDID uniqueidentifier;
select @PDACCOUNTSYSTEMIDID = PDACCOUNTSYSTEMID from dbo.GLACCOUNTMAPPINGERRORUPDATEPROCESS where ID = @ID;
declare @tempTbl Table (ERRORMESSAGE nvarchar(max));
insert into @tempTbl (ERRORMESSAGE)
select ERRORMESSAGE
from dbo.UFN_UNMAPPEDTRANSACTIONERROR_GETSELECTEDERRORS_FROMITEMLISTXML(@MESSAGES)
where INCLUDE = 1;
-- handle updating the data
update dbo.GLACCOUNTMAPPINGERROR
set
GLACCOUNTMAPPINGERRORUPDATEPROCESSID = @ID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where exists (
select ME.ID
from dbo.GLACCOUNTMAPPINGERROR ME
left join dbo.SALESORDER SO on SO.ID = ME.TRANSACTIONID
inner join dbo.FINANCIALTRANSACTION FT on FT.ID = ME.TRANSACTIONID or FT.ID = SO.REVENUEID
where
ME.ID = GLACCOUNTMAPPINGERROR.ID
and FT.PDACCOUNTSYSTEMID = @PDACCOUNTSYSTEMIDID
and ME.ERRORMESSAGE in (select ERRORMESSAGE from @tempTbl)
and ME.GLACCOUNTMAPPINGERRORUPDATEPROCESSID is null
and ME.DELETED = 0
);
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;