USP_DATAFORMTEMPLATE_VIEW_BATCH2TEMPLATESETTINGS

The load procedure used by the view dataform template "Batch2 Template Settings View Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@BATCHTYPESPECXML xml INOUT Batch type spec xml
@TEMPLATEDATAFORMINSTANCEID uniqueidentifier INOUT Template dataforminstance id
@SELECTEDFIELDS xml INOUT Selected fields
@DISPLAYTOTALAMOUNT bit INOUT Display Total Amount
@HASSTANDARDNUMBERINGSCHEME bit INOUT Has Standard Numbering Scheme
@AUTOSAVEONROWCHANGE bit INOUT Enable auto save
@AUTOMATCHTHRESHOLD int INOUT
@OVERALLMATCHTHRESHOLD int INOUT
@CHECKFORDUPLICATES bit INOUT
@PARAMETERSXML xml INOUT

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_BATCH2TEMPLATESETTINGS
(
    @ID uniqueidentifier
    , @CURRENTAPPUSERID uniqueidentifier
    , @DATALOADED bit = 0 output
    , @BATCHTYPESPECXML xml = null output
    , @TEMPLATEDATAFORMINSTANCEID uniqueidentifier = null output
    , @SELECTEDFIELDS xml = null output
    , @DISPLAYTOTALAMOUNT bit = null output
    , @HASSTANDARDNUMBERINGSCHEME bit = null output
    , @AUTOSAVEONROWCHANGE bit = null output
    , @AUTOMATCHTHRESHOLD int = null output
    , @OVERALLMATCHTHRESHOLD int = null output
    , @CHECKFORDUPLICATES bit = null output
    , @PARAMETERSXML xml = null output
)
as
  set nocount on;

  -- be sure to set this, in case the select returns no rows

  set @DATALOADED = 0;
  declare @APPUSERHASBATCHACCESS bit = (select dbo.UFN_SECURITY_APPUSER_GRANTED_BATCHPROCESSOR(@CURRENTAPPUSERID, @ID));

  select 
    @DATALOADED = 1
    , @BATCHTYPESPECXML = BC.SPECXML
    , @TEMPLATEDATAFORMINSTANCEID = (Select TEMPLATESPECXML.value('declare namespace bbfa="bb_appfx_editdataformtemplate";/bbfa:EditDataFormTemplateSpec[1]/@DataFormInstanceID','uniqueidentifier') from DATAFORMTEMPLATECATALOG where ID = BC.EDITROWDATAFORMTEMPLATEID)
    , @SELECTEDFIELDS = BT.FORMDEFINITIONXML
    , @DISPLAYTOTALAMOUNT = (case when len(BC.AMOUNTCOLUMN) > 0 then 1 else 0 end)
    , @HASSTANDARDNUMBERINGSCHEME = (case when BN.NUMBERINGSCHEMECODE = 0 then 1 else 0 end)
    , @AUTOSAVEONROWCHANGE = BT.AUTOSAVEONROWCHANGE
    , @AUTOMATCHTHRESHOLD = BT.AUTOMATCHTHRESHOLD
    , @OVERALLMATCHTHRESHOLD = BT.OVERALLMATCHTHRESHOLD
    , @CHECKFORDUPLICATES = BT.DEFAULTCHECKFORDUPLICATES
    , @PARAMETERSXML = BT.PARAMETERSXML
  from dbo.[BATCHTEMPLATE] as BT
    inner join BATCHTYPECATALOG as BC on BT.BATCHTYPECATALOGID = BC.ID
    left join BATCHNUMBERINGSCHEME as BN on BT.BATCHNUMBERINGSCHEMEID = BN.ID
  where
    (exists
    ( select BS.ID 
      from dbo.BATCHTYPECATALOG as BC
        inner join dbo.BATCHWORKFLOW as BW on BT.BATCHWORKFLOWID = BW.ID
        inner join dbo.BATCHWORKFLOWSTATE BS on BW.ID = BS.BATCHWORKFLOWID
      where
        BC.ID = BT.BATCHTYPECATALOGID 
        and dbo.UFN_SECURITY_APPUSER_GRANTED_BATCHWORKFLOWSTATE(@CURRENTAPPUSERID, BS.ID) = 1
    ) 
  or @APPUSERHASBATCHACCESS = 1 
  or exists
    ( select BATCH.ID
      from dbo.BATCHTEMPLATE 
        inner join dbo.BATCH on BATCH.BATCHTEMPLATEID = BATCHTEMPLATE.ID
      where BATCH.APPUSERID = @CURRENTAPPUSERID 
        and dbo.UFN_SECURITY_APPUSER_GRANTED_BATCHOWNER(@CURRENTAPPUSERID, BATCH.ID) = 1
    )
  )
  and 1 = dbo.UFN_INSTALLEDPRODUCTS_OPTIONALPRODUCTSINSTALLED
          (
            BC.SPECXML.query
            (
              'declare namespace common="bb_appfx_commontypes";
              /*/common:InstalledProductList'
            )
          )
  and BT.[ID] = @ID;

  return 0;