USP_DATAFORMTEMPLATE_EDITLOAD_UNMAPPEDERRORPROCESS
The load 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 used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@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. |
@ACCOUNTSYSTEM | nvarchar(50) | INOUT | Account system |
@MESSAGES | xml | INOUT | Messages |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_UNMAPPEDERRORPROCESS
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@ACCOUNTSYSTEM nvarchar(50) = null output,
@MESSAGES XML = null output
)
as
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
declare @PDACCOUNTSYSTEMID uniqueidentifier;
-- 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.
select
@DATALOADED = 1,
@TSLONG = PDACCOUNTSYSTEM.TSLONG,
@ACCOUNTSYSTEM = PDACCOUNTSYSTEM.NAME,
@PDACCOUNTSYSTEMID = PDACCOUNTSYSTEM.ID
from dbo.PDACCOUNTSYSTEM
inner join dbo.GLACCOUNTMAPPINGERRORUPDATEPROCESS on GLACCOUNTMAPPINGERRORUPDATEPROCESS.PDACCOUNTSYSTEMID = PDACCOUNTSYSTEM.ID
where GLACCOUNTMAPPINGERRORUPDATEPROCESS.ID = @ID;
declare @TempMessages TABLE(
ID uniqueidentifier
,TRANSACTIONTYPE nvarchar(100)
,OCCURRENCES int
,ERRORMESSAGE nvarchar(max)
,ADDRESSED bit
,ADDED datetime
);
insert into @TempMessages
exec dbo.USP_DATALIST_UNMAPPEDTRANSACTIONERRORS @PDACCOUNTSYSTEMID, null, 0
set @MESSAGES = (
select
MAX(CONVERT(nvarchar(36),M.ID)) as ID
,CAST(1 as bit) [INCLUDE]
,M.TRANSACTIONTYPE
,SUM(M.OCCURRENCES) as [OCCURRENCES]
,M.ERRORMESSAGE
from @TempMessages M
group by M.ERRORMESSAGE, M.TRANSACTIONTYPE
for xml raw('ITEM'),type,elements,root('MESSAGES'),BINARY BASE64
);
return 0;