USP_ACCOUNTINGELEMENTRELATIONSHIPS_VALIDATE
Validates the accounting element relationship before saving.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ACCOUNTINGELEMENTRELATIONSHIPID | uniqueidentifier | IN | |
@BASEELEMENTSTRUCTUREID | uniqueidentifier | IN | |
@ACCOUNTSTRUCTURE | xml | IN |
Definition
Copy
CREATE procedure dbo.USP_ACCOUNTINGELEMENTRELATIONSHIPS_VALIDATE
(
@ACCOUNTINGELEMENTRELATIONSHIPID uniqueidentifier,
@BASEELEMENTSTRUCTUREID uniqueidentifier,
@ACCOUNTSTRUCTURE xml
)
as
begin
declare @BASEELEMENTSELECTEDELEMENTS xml
declare @QUERYID uniqueidentifier
select @BASEELEMENTSELECTEDELEMENTS = ACCOUNTSTRUCTUREXML.[ACTSTR].query('(SELECTEDELEMENTS)'),
@QUERYID = ACCOUNTSTRUCTUREXML.[ACTSTR].value('(QUERYID)[1]', 'uniqueidentifier')
from @ACCOUNTSTRUCTURE.nodes('ACCOUNTSTRUCTURE/ITEM') as ACCOUNTSTRUCTUREXML([ACTSTR])
where ACCOUNTSTRUCTUREXML.[ACTSTR].value('(ID)[1]', 'uniqueidentifier') = @BASEELEMENTSTRUCTUREID
create table #DATAELEMENTS (DATAELEMENTID uniqueidentifier)
insert into #DATAELEMENTS(DATAELEMENTID)
select distinct T2.c.value('(ID)[1]', 'uniqueidentifier')
from @BASEELEMENTSELECTEDELEMENTS.nodes('SELECTEDELEMENTS/ITEM') T2(c)
if @QUERYID is not null
begin
insert into #DATAELEMENTS(DATAELEMENTID)
select distinct ID
from dbo.UFN_IDSETREADER_GETRESULTS_GUID(@QUERYID)
end
if (select count(*) from #DATAELEMENTS) = 0
begin
raiserror('ERR_BASEELEMENTSELECTEDELEMENTS_REQUIRED',13,1);
return 1;
end
drop table #DATAELEMENTS
end