USP_DATAFORMTEMPLATE_OPPORTUNITY_ADD_PRELOAD

The load procedure used by the edit dataform template "Opportunity Add Form"

Parameters

Parameter Parameter Type Mode Description
@PROSPECTPLANID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@HEADER nvarchar(100) INOUT Header
@PROSPECTPLAN nvarchar(100) INOUT Plan type
@PROSPECTPLANNAME nvarchar(100) INOUT Plan name
@PROSPECTID uniqueidentifier INOUT
@ISGROUP bit INOUT
@TRANSACTIONCURRENCYID uniqueidentifier INOUT Transaction currency
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_OPPORTUNITY_ADD_PRELOAD
(
  @PROSPECTPLANID uniqueidentifier,
  @HEADER nvarchar(100) = null output,
  @PROSPECTPLAN nvarchar(100) = null output,
  @PROSPECTPLANNAME nvarchar(100) = null output,
  @PROSPECTID uniqueidentifier = null output,
  @ISGROUP bit = null output,
  @TRANSACTIONCURRENCYID uniqueidentifier = null output,
  @CURRENTAPPUSERID uniqueidentifier = null
) as
begin
  set nocount on;

  select
    @HEADER = NF.NAME,
    @PROSPECTPLAN = dbo.UFN_PROSPECTPLANTYPECODE_GETDESCRIPTION(PROSPECTPLAN.PROSPECTPLANTYPECODEID),
    @PROSPECTPLANNAME = PROSPECTPLAN.NAME,
    @PROSPECTID = PROSPECTPLAN.PROSPECTID,
    @ISGROUP = CONSTITUENT.ISGROUP,
    @TRANSACTIONCURRENCYID = PROSPECTPLAN.BASECURRENCYID
  from
    dbo.PROSPECTPLAN
  inner join
    dbo.CONSTITUENT on CONSTITUENT.ID = PROSPECTPLAN.PROSPECTID
  outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(CONSTITUENT.ID) NF
  where
    PROSPECTPLAN.ID = @PROSPECTPLANID;

  -- If the base currency is not in the user's currency set, don't default the transaction currency to the base currency.

  declare @CURRENCYSETID uniqueidentifier;
  set @CURRENCYSETID = dbo.UFN_CURRENCYSET_GETAPPUSERCURRENCYSET(@CURRENTAPPUSERID);

  if not exists(
    select
      CURRENCY.ID
    from
      dbo.CURRENCYSETTRANSACTIONCURRENCY
    inner join 
      dbo.CURRENCY on CURRENCYSETTRANSACTIONCURRENCY.CURRENCYID = CURRENCY.ID
    where
      CURRENCYSETTRANSACTIONCURRENCY.CURRENCYSETID = @CURRENCYSETID and
      CURRENCY.ID = @TRANSACTIONCURRENCYID
  )
    set @TRANSACTIONCURRENCYID = null;

  return 0;
end