USP_DATAFORMTEMPLATE_EDITLOAD_CURRENCYEXCHANGERATEDOWNLOADPROCESSXIGNITE

The load procedure used by the edit dataform template "Xignite Currency Exchange Rate Download Process Edit 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.
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@WEBSITEURL UDT_WEBADDRESS INOUT Web site
@NAME nvarchar(100) INOUT Name
@DESCRIPTION nvarchar(4000) INOUT Description
@TYPECODE tinyint INOUT Type
@SETSOURCECODETOPROVIDER bit INOUT Set the exchange rate source to Xignite
@RATES xml INOUT Rates
@PROVIDERAUTHENTICATION xml INOUT Authentication
@SETPROVIDERAUTHENTICATIONASDEFAULT bit INOUT Set as default authentication for Xignite
@PROVIDERPARAMETERS xml INOUT Parameters
@DELETEHISTORYTHRESHOLDCODE tinyint INOUT Delete history older than

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDITLOAD_CURRENCYEXCHANGERATEDOWNLOADPROCESSXIGNITE]
(
  @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
  @WEBSITEURL dbo.[UDT_WEBADDRESS] = null output,
  @NAME nvarchar(100) = null output,
  @DESCRIPTION nvarchar(4000) = null output,
  @TYPECODE tinyint = null output,
  @SETSOURCECODETOPROVIDER bit = null output,
  @RATES xml = null output,
  @PROVIDERAUTHENTICATION xml = null output,
  @SETPROVIDERAUTHENTICATIONASDEFAULT bit = null output,
  @PROVIDERPARAMETERS xml = null output,
  @DELETEHISTORYTHRESHOLDCODE tinyint = null output
)
as
  set nocount on;

  exec dbo.[USP_GET_KEY_ACCESS];

  select
    @DATALOADED = 1,
    @WEBSITEURL = [CURRENCYEXCHANGERATEPROVIDER].[WEBSITEURL],
    @NAME = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[NAME],
    @DESCRIPTION = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[DESCRIPTION],
    @TYPECODE = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[TYPECODE],
    @SETSOURCECODETOPROVIDER = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[SETSOURCECODETOPROVIDER],
    @PROVIDERAUTHENTICATION = convert(xml, convert(nvarchar(3800), decryptbykey([CURRENCYEXCHANGERATEDOWNLOADPROCESS].[PROVIDERAUTHENTICATION]))),
    @SETPROVIDERAUTHENTICATIONASDEFAULT = case when [CURRENCYEXCHANGERATEPROVIDER].[DEFAULTAUTHENTICATION] is null then 1 else 0 end,
    @PROVIDERPARAMETERS = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[PROVIDERPARAMETERS],
    @DELETEHISTORYTHRESHOLDCODE = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[DELETEHISTORYTHRESHOLDCODE],
    @TSLONG = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[TSLONG]
  from dbo.[CURRENCYEXCHANGERATEDOWNLOADPROCESS]
  inner join dbo.[CURRENCYEXCHANGERATEPROVIDER] on [CURRENCYEXCHANGERATEPROVIDER].[ID] = [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[CURRENCYEXCHANGERATEPROVIDERID]
  where [CURRENCYEXCHANGERATEDOWNLOADPROCESS].[ID] = @ID
  and [CURRENCYEXCHANGERATEPROVIDER].[ID] = '6E1EAAEF-070F-4F88-B546-036EFA7AE96E';

  close symmetric key sym_BBInfinity;

  if @DATALOADED = 1
    set @RATES = dbo.[UFN_CURRENCYEXCHANGERATEDOWNLOADPROCESS_GETRATES_TOITEMLISTXML](@ID);

  return 0;