USP_DATALIST_PROJECT
This data list returns all projects.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@PROJECTID | nvarchar(100) | IN | Project ID |
@DESCRIPTION | nvarchar(60) | IN | Description |
@INCLUDEINACTIVE | bit | IN | Include inactive |
@MAXNUMROWS | int | IN | Limit |
@PDACCOUNTSYSTEMID | uniqueidentifier | IN | PD account system ID |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_PROJECT(
@PROJECTID nvarchar(100) = null,
@DESCRIPTION nvarchar(60) = null,
@INCLUDEINACTIVE bit = 0,
@MAXNUMROWS int = 100,
@PDACCOUNTSYSTEMID uniqueidentifier = null,
@CURRENTAPPUSERID uniqueidentifier
)
as
set nocount on;
set @PROJECTID = replace(ltrim(rtrim(@PROJECTID)), '*', '%');
set @DESCRIPTION = replace(ltrim(rtrim(@DESCRIPTION)), '*','%')
if @PDACCOUNTSYSTEMID is null
set @PDACCOUNTSYSTEMID = '4B121C2C-CCE6-440D-894C-EA0DEF80D50B'
if dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1
select top (@MAXNUMROWS)
PROJECT.ID,
PDACCOUNTSEGMENTVALUE.SHORTDESCRIPTION as [PROJECTID],
PDACCOUNTSEGMENTVALUE.DESCRIPTION as [DESCRIPTION],
PROJECTTYPECODE.DESCRIPTION as [TYPE],
PROJECTLOCATIONCODE.DESCRIPTION as [LOCATION],
PROJECTDIVISIONCODE.DESCRIPTION as [DIVISION],
PROJECTDEPARTMENTCODE.DESCRIPTION as [DEPARTMENT],
PROJECT.STARTDATE,
PROJECT.ENDDATE,
PDACCOUNTSEGMENTVALUE.ISACTIVE as [ACTIVE],
PDACCOUNTSTRUCTURE.DESCRIPTION as [ELEMENTNAME]
from
dbo.PROJECT
inner join dbo.PDACCOUNTSEGMENTVALUE on PDACCOUNTSEGMENTVALUE.ID = PROJECT.ID
inner join dbo.PDACCOUNTSTRUCTURE on PDACCOUNTSEGMENTVALUE.PDACCOUNTSTRUCTUREID = PDACCOUNTSTRUCTURE.ID
left join dbo.PROJECTTYPECODE on PROJECTTYPECODE.ID = PROJECT.PROJECTTYPECODEID
left join dbo.PROJECTLOCATIONCODE on PROJECTLOCATIONCODE.ID = PROJECT.PROJECTLOCATIONCODEID
left join dbo.PROJECTDIVISIONCODE on PROJECTDIVISIONCODE.ID = PROJECT.PROJECTDIVISIONCODEID
left join dbo.PROJECTDEPARTMENTCODE on PROJECTDEPARTMENTCODE.ID = PROJECT.PROJECTDEPARTMENTCODEID
where
((PDACCOUNTSEGMENTVALUE.SHORTDESCRIPTION like @PROJECTID + '%') or (@PROJECTID is null))
and ((PDACCOUNTSEGMENTVALUE.DESCRIPTION like @DESCRIPTION + '%') or (@DESCRIPTION is null))
and (@INCLUDEINACTIVE = 1 or PDACCOUNTSEGMENTVALUE.ISACTIVE = 1)
and PDACCOUNTSTRUCTURE.PDACCOUNTSYSTEMID = @PDACCOUNTSYSTEMID and PDACCOUNTSTRUCTURE.ISBASICGL = 0
order by
PDACCOUNTSEGMENTVALUE.SHORTDESCRIPTION
else
select top (@MAXNUMROWS)
PROJECT.ID,
PDACCOUNTSEGMENTVALUE.SHORTDESCRIPTION as [PROJECTID],
PDACCOUNTSEGMENTVALUE.DESCRIPTION as [DESCRIPTION],
PROJECTTYPECODE.DESCRIPTION as [TYPE],
PROJECTLOCATIONCODE.DESCRIPTION as [LOCATION],
PROJECTDIVISIONCODE.DESCRIPTION as [DIVISION],
PROJECTDEPARTMENTCODE.DESCRIPTION as [DEPARTMENT],
PROJECT.STARTDATE,
PROJECT.ENDDATE,
PDACCOUNTSEGMENTVALUE.ISACTIVE as [ACTIVE],
PDACCOUNTSTRUCTURE.DESCRIPTION as [ELEMENTNAME]
from
dbo.PROJECT
inner join dbo.PDACCOUNTSEGMENTVALUE on PDACCOUNTSEGMENTVALUE.ID = PROJECT.ID
inner join dbo.PDACCOUNTSTRUCTURE on PDACCOUNTSEGMENTVALUE.PDACCOUNTSTRUCTUREID = PDACCOUNTSTRUCTURE.ID
left join dbo.PROJECTTYPECODE on PROJECTTYPECODE.ID = PROJECT.PROJECTTYPECODEID
left join dbo.PROJECTLOCATIONCODE on PROJECTLOCATIONCODE.ID = PROJECT.PROJECTLOCATIONCODEID
left join dbo.PROJECTDIVISIONCODE on PROJECTDIVISIONCODE.ID = PROJECT.PROJECTDIVISIONCODEID
left join dbo.PROJECTDEPARTMENTCODE on PROJECTDEPARTMENTCODE.ID = PROJECT.PROJECTDEPARTMENTCODEID
where
((PDACCOUNTSEGMENTVALUE.SHORTDESCRIPTION like @PROJECTID + '%') or (@PROJECTID is null))
and ((PDACCOUNTSEGMENTVALUE.DESCRIPTION like @DESCRIPTION + '%') or (@DESCRIPTION is null))
and (@INCLUDEINACTIVE = 1 or PDACCOUNTSEGMENTVALUE.ISACTIVE = 1)
and PDACCOUNTSTRUCTURE.PDACCOUNTSYSTEMID = @PDACCOUNTSYSTEMID and PDACCOUNTSTRUCTURE.ISBASICGL = 0
and PDACCOUNTSEGMENTVALUE.ID in (select ELEMENTID from dbo.UFN_ACCOUNTINGELEMENT_ELEMENTSFORUSER(@CURRENTAPPUSERID))
order by
PDACCOUNTSEGMENTVALUE.SHORTDESCRIPTION