USP_DATAFORMTEMPLATE_VIEW_GLACCOUNTCODEPROFILE
The load procedure used by the view dataform template "Account Code Profile View 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. |
@SHORTID | nvarchar(100) | INOUT | Account code |
@DESCRIPTION | nvarchar(60) | INOUT | Description |
@CATEGORYCODE | tinyint | INOUT | Category |
@SUBCATEGORYCODE | tinyint | INOUT | Subcategory |
@ACTIVE | bit | INOUT | Active |
@CONTRAACCOUNT | bit | INOUT | Contra account |
@CONTROLACCOUNT | bit | INOUT | Control account |
@PREVENTDATAENTRY | bit | INOUT | Prevent data entry |
@PREVENTDATAENTRYBEFOREDATE | datetime | INOUT | Before |
@PREVENTDATAENTRYAFTERDATE | datetime | INOUT | After |
@PREVENTPOST | bit | INOUT | Prevent posting |
@PREVENTPOSTBEFOREDATE | datetime | INOUT | Before |
@PREVENTPOSTAFTERDATE | datetime | INOUT | After |
@BALANCETYPE | tinyint | INOUT | Balance type |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_GLACCOUNTCODEPROFILE
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@SHORTID nvarchar(100) = null output,
@DESCRIPTION nvarchar(60) = null output,
@CATEGORYCODE tinyint = null output,
@SUBCATEGORYCODE tinyint = null output,
@ACTIVE bit = null output,
@CONTRAACCOUNT bit = null output,
@CONTROLACCOUNT bit = null output,
@PREVENTDATAENTRY bit = null output,
@PREVENTDATAENTRYBEFOREDATE datetime = null output,
@PREVENTDATAENTRYAFTERDATE datetime = null output,
@PREVENTPOST bit = null output,
@PREVENTPOSTBEFOREDATE datetime = null output,
@PREVENTPOSTAFTERDATE datetime = null output,
@BALANCETYPE tinyint = null output
)
as
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
-- 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,
@SHORTID = T2.SHORTDESCRIPTION,
@DESCRIPTION = T2.DESCRIPTION,
@CATEGORYCODE = T1.CATEGORYCODE,
@ACTIVE = T2.ISACTIVE,
@CONTRAACCOUNT = T1.CONTRAACCOUNT,
@SUBCATEGORYCODE = T1.SUBCATEGORYCODE,
@CONTROLACCOUNT = case when T2.ID in (select unPvt.DATAELEMENTID
from
(select ID, DATAELEMENT1ID, DATAELEMENT2ID, DATAELEMENT3ID, DATAELEMENT4ID, DATAELEMENT5ID, DATAELEMENT6ID, DATAELEMENT7ID, DATAELEMENT8ID, DATAELEMENT9ID, DATAELEMENT10ID,
DATAELEMENT11ID, DATAELEMENT12ID, DATAELEMENT13ID, DATAELEMENT14ID, DATAELEMENT15ID, DATAELEMENT16ID, DATAELEMENT17ID, DATAELEMENT18ID, DATAELEMENT19ID, DATAELEMENT20ID,
DATAELEMENT21ID, DATAELEMENT22ID, DATAELEMENT23ID, DATAELEMENT24ID, DATAELEMENT25ID, DATAELEMENT26ID, DATAELEMENT27ID, DATAELEMENT28ID, DATAELEMENT29ID, DATAELEMENT30ID
from dbo.CONTROLACCOUNT) p
unpivot
(DATAELEMENTID for dColumn in
(DATAELEMENT1ID, DATAELEMENT2ID, DATAELEMENT3ID, DATAELEMENT4ID, DATAELEMENT5ID, DATAELEMENT6ID, DATAELEMENT7ID, DATAELEMENT8ID, DATAELEMENT9ID, DATAELEMENT10ID,
DATAELEMENT11ID, DATAELEMENT12ID, DATAELEMENT13ID, DATAELEMENT14ID, DATAELEMENT15ID, DATAELEMENT16ID, DATAELEMENT17ID, DATAELEMENT18ID, DATAELEMENT19ID, DATAELEMENT20ID,
DATAELEMENT21ID, DATAELEMENT22ID, DATAELEMENT23ID, DATAELEMENT24ID, DATAELEMENT25ID, DATAELEMENT26ID, DATAELEMENT27ID, DATAELEMENT28ID, DATAELEMENT29ID, DATAELEMENT30ID)) as unPvt)
then 1 else 0 end,
@PREVENTDATAENTRY = T2.PREVENTDATAENTRY,
@PREVENTDATAENTRYBEFOREDATE = T2.PREVENTDATAENTRYBEFOREDATE,
@PREVENTDATAENTRYAFTERDATE = T2.PREVENTDATAENTRYAFTERDATE,
@PREVENTPOST = T2.PREVENTPOST,
@PREVENTPOSTBEFOREDATE = T2.PREVENTPOSTBEFOREDATE,
@PREVENTPOSTAFTERDATE = T2.PREVENTPOSTAFTERDATE,
@BALANCETYPE = dbo.UFN_GETCATEGORYBALANCEFROMID(@ID)
from dbo.ACCOUNTCODE as T1
inner join dbo.PDACCOUNTSEGMENTVALUE as T2 on T1.ID = T2.ID
where T1.ID = @ID
return 0;