USP_DATAFORMTEMPLATE_ADD_VENDOR_ORG

The save procedure used by the add dataform template "Vendor Organization Add Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@ORGNAME nvarchar(100) IN Organization name
@INDUSTRYCODEID uniqueidentifier IN Industry
@WEBADDRESS UDT_WEBADDRESS IN Website
@CUSTOMERNUMBER nvarchar(20) IN Customer number
@PAYMENTTERMID uniqueidentifier IN Payment terms
@PAYMENTMETHODCODE tinyint IN Payment method
@PAYMENTBANKACCOUNTID uniqueidentifier IN Payment bank account
@INCLUDEIN1099 bit IN Include in 1099 reporting
@ADDRESS_ADDRESSTYPECODEID uniqueidentifier IN Address type
@ADDRESS_COUNTRYID uniqueidentifier IN Country
@ADDRESS_STATEID uniqueidentifier IN State
@ADDRESS_ADDRESSBLOCK nvarchar(150) IN Address
@ADDRESS_CITY nvarchar(50) IN City
@ADDRESS_POSTCODE nvarchar(12) IN Zip
@ADDRESS_DONOTMAIL bit IN Do not send mail to this address
@ADDRESS_DONOTMAILREASONCODEID uniqueidentifier IN Reason
@PHONE_PHONETYPECODEID uniqueidentifier IN Phone type
@PHONE_NUMBER nvarchar(100) IN Phone number
@EMAILADDRESSTYPECODEID uniqueidentifier IN Email type
@EMAILADDRESS UDT_EMAILADDRESS IN Email address
@OMITFROMVALIDATION bit IN Omit from validation
@CART nvarchar(10) IN
@DPC nvarchar(8) IN
@LOT nvarchar(5) IN
@COUNTYCODEID uniqueidentifier IN
@CONGRESSIONALDISTRICTCODEID uniqueidentifier IN
@LASTVALIDATIONATTEMPTDATE datetime IN
@VALIDATIONMESSAGE nvarchar(200) IN
@CERTIFICATIONDATA int IN

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_VENDOR_ORG
(
  @ID uniqueidentifier = null output
  ,@CHANGEAGENTID uniqueidentifier = null

  ,@ORGNAME nvarchar(100) = ''
  ,@INDUSTRYCODEID uniqueidentifier = null
  ,@WEBADDRESS dbo.UDT_WEBADDRESS = ''
  ,@CUSTOMERNUMBER nvarchar(20) = ''
  ,@PAYMENTTERMID uniqueidentifier = null
  ,@PAYMENTMETHODCODE tinyint = 0
  ,@PAYMENTBANKACCOUNTID uniqueidentifier = null
  ,@INCLUDEIN1099 bit = 0

  ,@ADDRESS_ADDRESSTYPECODEID uniqueidentifier = null
  ,@ADDRESS_COUNTRYID uniqueidentifier = null
  ,@ADDRESS_STATEID uniqueidentifier = null
  ,@ADDRESS_ADDRESSBLOCK nvarchar(150) = ''
  ,@ADDRESS_CITY nvarchar(50) = ''
  ,@ADDRESS_POSTCODE nvarchar(12) = ''
  ,@ADDRESS_DONOTMAIL bit = 0
  ,@ADDRESS_DONOTMAILREASONCODEID uniqueidentifier = null

  ,@PHONE_PHONETYPECODEID uniqueidentifier = null
  ,@PHONE_NUMBER nvarchar(100) = ''
  ,@EMAILADDRESSTYPECODEID uniqueidentifier = null
  ,@EMAILADDRESS dbo.UDT_EMAILADDRESS = ''

  ,@OMITFROMVALIDATION bit = 0
  ,@CART nvarchar(10) = ''
  ,@DPC nvarchar(8) = ''
  ,@LOT nvarchar(5) = ''
  ,@COUNTYCODEID uniqueidentifier = null
  ,@CONGRESSIONALDISTRICTCODEID uniqueidentifier = null
  ,@LASTVALIDATIONATTEMPTDATE datetime = null
  ,@VALIDATIONMESSAGE nvarchar(200) = ''
  ,@CERTIFICATIONDATA integer = 0
)
as

set nocount on;

declare @CURRENTDATE datetime;
declare @KEYNAME nvarchar(100);
declare @KEYNAMEPREFIX nvarchar(50);

if @ID is null
  set @ID = newid();

if @CHANGEAGENTID is null
  exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

set @CURRENTDATE = getdate();

if @ADDRESS_DONOTMAIL = 0
  set @ADDRESS_DONOTMAILREASONCODEID = null;

begin try
  exec dbo.USP_PARSE_ORGANIZATION_NAME @ORGNAME, @KEYNAME output, @KEYNAMEPREFIX output;

  insert into dbo.CONSTITUENT 
  (
    ID
    ,ISORGANIZATION
    ,KEYNAME
    ,KEYNAMEPREFIX
    ,WEBADDRESS
        ,ISCONSTITUENT
    ,ADDEDBYID
    ,CHANGEDBYID
    ,DATEADDED 
    ,DATECHANGED
  )
  values
  (  
    @ID
    ,1
    ,@KEYNAME
    ,@KEYNAMEPREFIX
    ,@WEBADDRESS
        ,0
    ,@CHANGEAGENTID
    ,@CHANGEAGENTID
    ,@CURRENTDATE
    ,@CURRENTDATE
  );

  -- Differs from Org Add - we are just setting 0 for these and assuming primary org.

  insert into dbo.ORGANIZATIONDATA
  (
    ID
    ,INDUSTRYCODEID
    ,NUMEMPLOYEES
    ,NUMSUBSIDIARIES
    ,ADDEDBYID
    ,CHANGEDBYID
    ,DATEADDED
    ,DATECHANGED
    ,ISPRIMARY
  )
  values
  (
    @ID
    ,@INDUSTRYCODEID
    ,0
    ,0
    ,@CHANGEAGENTID
    ,@CHANGEAGENTID
    ,@CURRENTDATE
    ,@CURRENTDATE
    ,0
  );

  declare @ADDRESSID uniqueidentifier;

  exec dbo.USP_VENDOR_ADD_ADDRESS 
      @ID = @ID
      ,@ADDRESSID = @ADDRESSID OUTPUT
      ,@CHANGEAGENTID = @CHANGEAGENTID
      ,@CURRENTDATE = @CURRENTDATE
      ,@ADDRESSTYPECODEID = @ADDRESS_ADDRESSTYPECODEID
      ,@COUNTRYID = @ADDRESS_COUNTRYID
      ,@STATEID = @ADDRESS_STATEID
      ,@ADDRESSBLOCK = @ADDRESS_ADDRESSBLOCK
      ,@CITY = @ADDRESS_CITY
      ,@POSTCODE = @ADDRESS_POSTCODE
      ,@DONOTMAIL = @ADDRESS_DONOTMAIL
      ,@DONOTMAILREASONCODEID = @ADDRESS_DONOTMAILREASONCODEID
      ,@OMITFROMVALIDATION = @OMITFROMVALIDATION
      ,@CART = @CART
      ,@DPC = @DPC 
      ,@LOT = @LOT 
      ,@COUNTYCODEID = @COUNTYCODEID
      ,@CONGRESSIONALDISTRICTCODEID = @CONGRESSIONALDISTRICTCODEID 
      ,@LASTVALIDATIONATTEMPTDATE = @LASTVALIDATIONATTEMPTDATE 
      ,@VALIDATIONMESSAGE = @VALIDATIONMESSAGE
      ,@CERTIFICATIONDATA = @CERTIFICATIONDATA;

  exec USP_VENDOR_PHONE_ADD
      @ID = @ID
      ,@CHANGEAGENTID = @CHANGEAGENTID
      ,@CURRENTDATE = @CURRENTDATE
      ,@PHONETYPECODEID = @PHONE_PHONETYPECODEID
      ,@PHONE_NUMBER = @PHONE_NUMBER;

  exec USP_VENDOR_EMAIL_ADD
      @ID = @ID
      ,@CHANGEAGENTID = @CHANGEAGENTID
      ,@CURRENTDATE = @CURRENTDATE
      ,@EMAILADDRESSTYPECODEID = @EMAILADDRESSTYPECODEID
      ,@EMAILADDRESS = @EMAILADDRESS;

  -- Actual Vendor Fields


  exec dbo.USP_VENDOR_INFO_ADD
      @ID = @ID
      ,@REMITADDRESSID = @ADDRESSID
      ,@CHANGEAGENTID = @CHANGEAGENTID
      ,@CURRENTDATE = @CURRENTDATE
      ,@CUSTOMERNUMBER = @CUSTOMERNUMBER
      ,@PAYMENTTERMID = @PAYMENTTERMID
      ,@PAYMENTMETHODCODE = @PAYMENTMETHODCODE
      ,@PAYMENTBANKACCOUNTID = @PAYMENTBANKACCOUNTID
      ,@INCLUDEIN1099 = @INCLUDEIN1099;

end try

begin catch
    exec dbo.USP_RAISE_ERROR
    return 1
end catch

return 0