USP_DATAFORMTEMPLATE_EDITLOAD_REVENUEBATCHCONSTITUENT

The load procedure used by the edit dataform template "Revenue Batch Constituent 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.
@ISORGANIZATION bit INOUT Is organization
@ISEXISTINGCONSTITUENT bit INOUT Is existing constituent
@LASTNAME nvarchar(100) INOUT Last name
@ORGANIZATIONNAME nvarchar(100) INOUT Name
@FIRSTNAME nvarchar(50) INOUT First name
@MIDDLENAME nvarchar(50) INOUT Middle name
@MAIDENNAME nvarchar(100) INOUT Maiden name
@NICKNAME nvarchar(50) INOUT Nickname
@TITLECODEID uniqueidentifier INOUT Title
@SUFFIXCODEID uniqueidentifier INOUT Suffix
@GENDERCODE tinyint INOUT Gender
@BIRTHDATE UDT_FUZZYDATE INOUT Birth date
@ADDRESS_ADDRESSTYPECODEID uniqueidentifier INOUT Address type
@ADDRESS_DONOTMAIL bit INOUT Do not send mail to this address
@ADDRESS_COUNTRYID uniqueidentifier INOUT Country
@ADDRESS_STATEID uniqueidentifier INOUT State
@ADDRESS_ADDRESSBLOCK nvarchar(150) INOUT Address
@ADDRESS_CITY nvarchar(50) INOUT City
@ADDRESS_POSTCODE nvarchar(12) INOUT ZIP
@ADDRESS_OMITFROMVALIDATION bit INOUT Omit from validation
@ADDRESS_CART nvarchar(10) INOUT
@ADDRESS_DPC nvarchar(8) INOUT
@ADDRESS_LOT nvarchar(5) INOUT
@ADDRESS_COUNTYCODEID uniqueidentifier INOUT
@ADDRESS_CONGRESSIONALDISTRICTCODEID uniqueidentifier INOUT
@ADDRESS_LASTVALIDATIONATTEMPTDATE datetime INOUT
@ADDRESS_VALIDATIONMESSAGE nvarchar(100) INOUT
@ADDRESS_CERTIFICATIONDATA int INOUT
@VALIDATIONCOUNTRIES xml INOUT
@PHONE_PHONETYPECODEID uniqueidentifier INOUT Phone type
@PHONE_NUMBER nvarchar(100) INOUT Phone number
@EMAILADDRESS_EMAILADDRESSTYPECODEID uniqueidentifier INOUT Email type
@EMAILADDRESS_EMAILADDRESS UDT_EMAILADDRESS INOUT Email address
@ORGANIZATION_ADDRESSTYPECODEID nvarchar(50) INOUT Address type
@ORGANIZATION_DONOTMAIL bit INOUT Do not send mail to this address
@ORGANIZATION_COUNTRYID uniqueidentifier INOUT Country
@ORGANIZATION_STATEID nvarchar(50) INOUT State
@ORGANIZATION_ADDRESSBLOCK nvarchar(150) INOUT Address
@ORGANIZATION_CITY nvarchar(50) INOUT City
@ORGANIZATION_POSTCODE nvarchar(12) INOUT ZIP
@ORGANIZATION_OMITFROMVALIDATION bit INOUT Omit from validation
@ORGANIZATION_CART nvarchar(10) INOUT
@ORGANIZATION_DPC nvarchar(8) INOUT
@ORGANIZATION_LOT nvarchar(5) INOUT
@ORGANIZATION_COUNTYCODEID uniqueidentifier INOUT
@ORGANIZATION_CONGRESSIONALDISTRICTCODEID uniqueidentifier INOUT
@ORGANIZATION_LASTVALIDATIONATTEMPTDATE datetime INOUT
@ORGANIZATION_VALIDATIONMESSAGE nvarchar(100) INOUT
@ORGANIZATION_CERTIFICATIONDATA int INOUT
@ORGANIZATION_PHONETYPECODEID nvarchar(50) INOUT Phone type
@ORGANIZATION_NUMBER nvarchar(100) INOUT Phone number
@ORGANIZATION_EMAILADDRESSTYPECODEID nvarchar(50) INOUT Email type
@ORGANIZATION_EMAILADDRESS UDT_EMAILADDRESS INOUT Email address
@MARITALSTATUSCODEID uniqueidentifier INOUT Marital status
@WEBADDRESS nvarchar(100) INOUT Website
@INDUSTRYCODEID nvarchar(100) INOUT Industry
@NUMEMPLOYEES int INOUT No. of employees
@NUMSUBSIDIARIES int INOUT No. of subsidiary orgs
@PARENTCORPID nvarchar(100) INOUT Parent org
@BATCHSPOUSEID uniqueidentifier INOUT Batch spouse id
@BATCHSPOUSERELATIONID uniqueidentifier INOUT Batch spouse relation id
@SPOUSEID uniqueidentifier INOUT Full name
@EXISTINGSPOUSE bit INOUT Existing constituent
@SPOUSE_LASTNAME nvarchar(100) INOUT Last name
@SPOUSE_FIRSTNAME nvarchar(50) INOUT First name
@SPOUSE_MIDDLENAME nvarchar(50) INOUT Middle name
@SPOUSE_MAIDENNAME nvarchar(100) INOUT Maiden name
@SPOUSE_NICKNAME nvarchar(50) INOUT Nickname
@SPOUSE_TITLECODEID uniqueidentifier INOUT Title
@SPOUSE_SUFFIXCODEID uniqueidentifier INOUT Suffix
@SPOUSE_GENDERCODE tinyint INOUT Gender
@SPOUSE_BIRTHDATE UDT_FUZZYDATE INOUT Birth date
@SPOUSE_RECIPROCALTYPECODEID uniqueidentifier INOUT Reciprocal relationship type
@SPOUSE_RELATIONSHIPTYPECODEID uniqueidentifier INOUT Relationship type
@COPYPRIMARYINFORMATION bit INOUT Copy primary information
@SPOUSE_STARTDATE datetime INOUT Start date
@PRIMARYRELATIONSHIPEXISTS bit INOUT Apply recognition credit to individual for constituent's payments
@PRIMARYMATCHFACTOR decimal(5, 2) INOUT Primary recognition credit factor
@RECIPROCALRELATIONSHIPEXISTS bit INOUT Apply recognition credit to constituent for individual's payments
@RECIPROCALMATCHFACTOR decimal(5, 2) INOUT Reciprocal recognition credit factor
@BATCHBUSINESSID uniqueidentifier INOUT Batch organization id
@BATCHBUSINESSRELATIONID uniqueidentifier INOUT Batch organization relation id
@BUSINESSID uniqueidentifier INOUT Org. name
@EXISTINGBUSINESS bit INOUT Existing constituent
@BUSINESS_NAME nvarchar(100) INOUT Org. name
@BUSINESS_ADDRESSTYPECODEID uniqueidentifier INOUT Address type
@BUSINESS_COUNTRYID uniqueidentifier INOUT Country
@BUSINESS_STATEID uniqueidentifier INOUT State
@BUSINESS_ADDRESSBLOCK nvarchar(150) INOUT Address
@BUSINESS_CITY nvarchar(50) INOUT City
@BUSINESS_POSTCODE nvarchar(12) INOUT ZIP
@BUSINESS_DONOTMAIL bit INOUT Do not send mail to this address
@BUSINESS_OMITFROMVALIDATION bit INOUT Omit from validation
@BUSINESS_CART nvarchar(10) INOUT
@BUSINESS_DPC nvarchar(8) INOUT
@BUSINESS_LOT nvarchar(5) INOUT
@BUSINESS_COUNTYCODEID uniqueidentifier INOUT
@BUSINESS_CONGRESSIONALDISTRICTCODEID uniqueidentifier INOUT
@BUSINESS_LASTVALIDATIONATTEMPTDATE datetime INOUT
@BUSINESS_VALIDATIONMESSAGE nvarchar(100) INOUT
@BUSINESS_CERTIFICATIONDATA int INOUT
@BUSINESS_PHONETYPECODEID uniqueidentifier INOUT Phone type
@BUSINESS_NUMBER nvarchar(100) INOUT Phone number
@BUSINESS_RECIPROCALTYPECODEID uniqueidentifier INOUT Reciprocal relationship type
@BUSINESS_RELATIONSHIPTYPECODEID uniqueidentifier INOUT Relationship type
@BUSINESS_STARTDATE datetime INOUT Start date
@ISCONTACT bit INOUT Is contact
@ISPRIMARYCONTACT bit INOUT Primary contact
@CONTACTTYPECODEID uniqueidentifier INOUT Contact type
@POSITION nvarchar(50) INOUT Position
@ISMATCHINGGIFTRELATIONSHIP bit INOUT This organization will match individual's contributions
@ZIPLOOKUPCOUNTRIES xml INOUT

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_REVENUEBATCHCONSTITUENT(
    @ID                                        uniqueidentifier,                        
    @DATALOADED                                bit = 0 output,
    @TSLONG                                        bigint = 0 output,
    @ISORGANIZATION                            bit = null output,
    @ISEXISTINGCONSTITUENT    bit = null output,
    @LASTNAME                                nvarchar(100) = null output,
    @ORGANIZATIONNAME                nvarchar(100) = null output,
    @FIRSTNAME                                nvarchar(50) = null output,
    @MIDDLENAME                                nvarchar(50) = null output,
    @MAIDENNAME                                nvarchar(100) = null output,
    @NICKNAME                                nvarchar(50) = null output,
    @TITLECODEID                            uniqueidentifier = null output,
    @SUFFIXCODEID                            uniqueidentifier = null output,
    @GENDERCODE                                tinyint = null output,
    @BIRTHDATE                                dbo.UDT_FUZZYDATE = null output,
    @ADDRESS_ADDRESSTYPECODEID                uniqueidentifier = null output,
    @ADDRESS_DONOTMAIL                        bit = null output,
    @ADDRESS_COUNTRYID                        uniqueidentifier = null output,
    @ADDRESS_STATEID                        uniqueidentifier = null output,
    @ADDRESS_ADDRESSBLOCK                    nvarchar(150) = null output,
    @ADDRESS_CITY                            nvarchar(50) = null output,
    @ADDRESS_POSTCODE                        nvarchar(12) = null output,

    -- Address Validation

    @ADDRESS_OMITFROMVALIDATION                bit = null output,
    @ADDRESS_CART                            nvarchar(10) = null output,
    @ADDRESS_DPC                            nvarchar(8) = null output,
    @ADDRESS_LOT                            nvarchar(5) = null output,
    @ADDRESS_COUNTYCODEID                    uniqueidentifier = null output,
    @ADDRESS_CONGRESSIONALDISTRICTCODEID    uniqueidentifier = null output,
    @ADDRESS_LASTVALIDATIONATTEMPTDATE        datetime = null output,
    @ADDRESS_VALIDATIONMESSAGE                nvarchar(100) = null output,
    @ADDRESS_CERTIFICATIONDATA                integer = null output,
    @VALIDATIONCOUNTRIES                    xml = null output,

    @PHONE_PHONETYPECODEID                    uniqueidentifier = null output,
    @PHONE_NUMBER                            nvarchar(100) = null output,
    @EMAILADDRESS_EMAILADDRESSTYPECODEID    uniqueidentifier = null output,
    @EMAILADDRESS_EMAILADDRESS                dbo.UDT_EMAILADDRESS = null output,
    @ORGANIZATION_ADDRESSTYPECODEID            nvarchar(50) = null output,
    @ORGANIZATION_DONOTMAIL                    bit = null output,
    @ORGANIZATION_COUNTRYID                    uniqueidentifier = null output,                        
    @ORGANIZATION_STATEID                    nvarchar(50) = null output,
    @ORGANIZATION_ADDRESSBLOCK                nvarchar(150) = null output,
    @ORGANIZATION_CITY                        nvarchar(50) = null output,
    @ORGANIZATION_POSTCODE                    nvarchar(12) = null output,

    -- Address Validation

    @ORGANIZATION_OMITFROMVALIDATION                bit = null output,
    @ORGANIZATION_CART                                nvarchar(10) = null output,
    @ORGANIZATION_DPC                                nvarchar(8) = null output,
    @ORGANIZATION_LOT                                nvarchar(5) = null output,
    @ORGANIZATION_COUNTYCODEID                        uniqueidentifier = null output,
    @ORGANIZATION_CONGRESSIONALDISTRICTCODEID        uniqueidentifier = null output,
    @ORGANIZATION_LASTVALIDATIONATTEMPTDATE            datetime = null output,
    @ORGANIZATION_VALIDATIONMESSAGE                    nvarchar(100) = null output,
    @ORGANIZATION_CERTIFICATIONDATA                    integer = null output,

    @ORGANIZATION_PHONETYPECODEID            nvarchar(50) = null output,
    @ORGANIZATION_NUMBER                    nvarchar(100) = null output,
    @ORGANIZATION_EMAILADDRESSTYPECODEID    nvarchar(50) = null output,
    @ORGANIZATION_EMAILADDRESS                dbo.UDT_EMAILADDRESS = null output,
    @MARITALSTATUSCODEID                    uniqueidentifier = null output,
    @WEBADDRESS                                nvarchar(100) = null output,
    @INDUSTRYCODEID                            nvarchar(100) = null output,
    @NUMEMPLOYEES                            int = null output,
    @NUMSUBSIDIARIES                        int = null output,
    @PARENTCORPID                            nvarchar(100) = null output,

    --Spouse Variables

    @BATCHSPOUSEID                            uniqueidentifier = null output,
    @BATCHSPOUSERELATIONID                    uniqueidentifier = null output,
    @SPOUSEID                                uniqueidentifier = null output,
    @EXISTINGSPOUSE                            bit = null output,
    @SPOUSE_LASTNAME                        nvarchar(100) = null output,
    @SPOUSE_FIRSTNAME                        nvarchar(50) = null output,
    @SPOUSE_MIDDLENAME                        nvarchar(50) = null output,
    @SPOUSE_MAIDENNAME                        nvarchar(100) = null output,
    @SPOUSE_NICKNAME                        nvarchar(50) = null output,
    @SPOUSE_TITLECODEID                        uniqueidentifier = null output,
    @SPOUSE_SUFFIXCODEID                    uniqueidentifier = null output,
    @SPOUSE_GENDERCODE                        tinyint = null output,
    @SPOUSE_BIRTHDATE                        dbo.UDT_FUZZYDATE = null output,
    @SPOUSE_RECIPROCALTYPECODEID            uniqueidentifier = null output,
    @SPOUSE_RELATIONSHIPTYPECODEID            uniqueidentifier = null output,
    @COPYPRIMARYINFORMATION                    bit = null output,
    @SPOUSE_STARTDATE                        datetime = null output,
    @PRIMARYRELATIONSHIPEXISTS                bit = null output,
    @PRIMARYMATCHFACTOR                        decimal(5,2) = null output,
    @RECIPROCALRELATIONSHIPEXISTS            bit = null output,
    @RECIPROCALMATCHFACTOR                    decimal(5,2) = null output,

    --Organization variables

    @BATCHBUSINESSID                    uniqueidentifier = null output,
    @BATCHBUSINESSRELATIONID            uniqueidentifier = null output,
    @BUSINESSID                            uniqueidentifier = null output,
    @EXISTINGBUSINESS                    bit = null output,
    @BUSINESS_NAME                        nvarchar(100) = null output,
    @BUSINESS_ADDRESSTYPECODEID            uniqueidentifier = null output,
    @BUSINESS_COUNTRYID                    uniqueidentifier = null output,
    @BUSINESS_STATEID                    uniqueidentifier = null output,
    @BUSINESS_ADDRESSBLOCK                nvarchar(150) = null output,
    @BUSINESS_CITY                        nvarchar(50) = null output,
    @BUSINESS_POSTCODE                    nvarchar(12) = null output,
    @BUSINESS_DONOTMAIL                    bit = null output,

    -- Address Validation

    @BUSINESS_OMITFROMVALIDATION            bit = null output,
    @BUSINESS_CART                            nvarchar(10) = null output,
    @BUSINESS_DPC                            nvarchar(8) = null output,
    @BUSINESS_LOT                            nvarchar(5) = null output,
    @BUSINESS_COUNTYCODEID                    uniqueidentifier = null output,
    @BUSINESS_CONGRESSIONALDISTRICTCODEID    uniqueidentifier = null output,
    @BUSINESS_LASTVALIDATIONATTEMPTDATE        datetime = null output,
    @BUSINESS_VALIDATIONMESSAGE                nvarchar(100) = null output,
    @BUSINESS_CERTIFICATIONDATA                integer = null output,

    @BUSINESS_PHONETYPECODEID                uniqueidentifier = null output,
    @BUSINESS_NUMBER                        nvarchar(100) = null output,
    @BUSINESS_RECIPROCALTYPECODEID            uniqueidentifier = null output,
    @BUSINESS_RELATIONSHIPTYPECODEID        uniqueidentifier = null output,
    @BUSINESS_STARTDATE                        datetime = null output,                        
    @ISCONTACT                                bit = null output,
    @ISPRIMARYCONTACT                        bit = null output,
    @CONTACTTYPECODEID                        uniqueidentifier = null output,
    @POSITION                                nvarchar(50) = null output,
    @ISMATCHINGGIFTRELATIONSHIP                bit = null output,
    @ZIPLOOKUPCOUNTRIES                        xml = null output
) as begin
    set nocount on;

    begin try

        declare @KEYNAME nvarchar(100);
        declare @KEYNAMEPREFIX nvarchar(50);
        declare @BUSINESS_KEYNAME nvarchar(100);
        declare @BUSINESS_KEYNAMEPREFIX nvarchar(50);

        set @ISEXISTINGCONSTITUENT = 0;
        select @ISEXISTINGCONSTITUENT=1 from dbo.CONSTITUENT where CONSTITUENT.ID = @ID;

        if @ISEXISTINGCONSTITUENT = 1    
            select @ISORGANIZATION=CONSTITUENT.ISORGANIZATION,                
                @KEYNAME = CONSTITUENT.KEYNAME,
                @FIRSTNAME = CONSTITUENT.FIRSTNAME,
                @MIDDLENAME = CONSTITUENT.MIDDLENAME,
                @MAIDENNAME = CONSTITUENT.MAIDENNAME,
                @NICKNAME=CONSTITUENT.NICKNAME,
                @TITLECODEID=CONSTITUENT.TITLECODEID,
                @SUFFIXCODEID=CONSTITUENT.SUFFIXCODEID,
                @GENDERCODE=CONSTITUENT.GENDERCODE,
                @BIRTHDATE=CONSTITUENT.BIRTHDATE,
                @ADDRESS_ADDRESSTYPECODEID=ADDRESS.ADDRESSTYPECODEID,
                @ADDRESS_DONOTMAIL=ADDRESS.DONOTMAIL,
                @ADDRESS_COUNTRYID=ADDRESS.COUNTRYID,                
                @ADDRESS_STATEID=ADDRESS.STATEID,
                @ADDRESS_ADDRESSBLOCK=ADDRESS.ADDRESSBLOCK,
                @ADDRESS_CITY=ADDRESS.CITY,
                @ADDRESS_POSTCODE=ADDRESS.POSTCODE,                            
                @ADDRESS_OMITFROMVALIDATION=ADDRESSVALIDATIONUPDATE.OMITFROMVALIDATION,
                @ADDRESS_CART=ADDRESS.CART,
                @ADDRESS_DPC=ADDRESS.DPC,
                @ADDRESS_LOT=ADDRESS.LOT,
                @ADDRESS_COUNTYCODEID=ADDRESSVALIDATIONUPDATE.COUNTYCODEID,
                @ADDRESS_CONGRESSIONALDISTRICTCODEID=ADDRESSVALIDATIONUPDATE.CONGRESSIONALDISTRICTCODEID,
                @ADDRESS_LASTVALIDATIONATTEMPTDATE=ADDRESSVALIDATIONUPDATE.LASTVALIDATIONATTEMPTDATE,
                @ADDRESS_VALIDATIONMESSAGE=ADDRESSVALIDATIONUPDATE.VALIDATIONMESSAGE,
                @ADDRESS_CERTIFICATIONDATA=ADDRESSVALIDATIONUPDATE.CERTIFICATIONDATA,                                            
                @PHONE_PHONETYPECODEID=PHONE.PHONETYPECODEID,
                @PHONE_NUMBER=PHONE.NUMBER,
                @EMAILADDRESS_EMAILADDRESSTYPECODEID=EMAILADDRESS.EMAILADDRESSTYPECODEID,
                @EMAILADDRESS_EMAILADDRESS=EMAILADDRESS.EMAILADDRESS,
                @MARITALSTATUSCODEID=CONSTITUENT.MARITALSTATUSCODEID,
                @WEBADDRESS=CONSTITUENT.WEBADDRESS,
                @INDUSTRYCODEID=ORGANIZATIONDATA.INDUSTRYCODEID,
                @NUMEMPLOYEES=ORGANIZATIONDATA.NUMEMPLOYEES,
                @NUMSUBSIDIARIES=ORGANIZATIONDATA.NUMSUBSIDIARIES,
                @PARENTCORPID=ORGANIZATIONDATA.PARENTCORPID
                from dbo.CONSTITUENT 
                left join dbo.ADDRESS on CONSTITUENT.ID = ADDRESS.CONSTITUENTID and ADDRESS.ISPRIMARY = 1
                left join dbo.ADDRESSVALIDATIONUPDATE on ADDRESS.ID = ADDRESSVALIDATIONUPDATE.ID
                left join dbo.PHONE on CONSTITUENT.ID = PHONE.CONSTITUENTID and PHONE.ISPRIMARY = 1
                left join dbo.EMAILADDRESS on CONSTITUENT.ID = EMAILADDRESS.CONSTITUENTID and EMAILADDRESS.ISPRIMARY = 1
                left join dbo.ORGANIZATIONDATA on CONSTITUENT.ID = ORGANIZATIONDATA.ID
                where CONSTITUENT.ID = @ID
        else

            exec USP_BATCHREVENUECONSTITUENT_LOAD @ID, null, @ISORGANIZATION OUTPUT, @KEYNAME OUTPUT, @KEYNAMEPREFIX OUTPUT, @FIRSTNAME OUTPUT, @MIDDLENAME OUTPUT, @MAIDENNAME OUTPUT, @NICKNAME OUTPUT, @TITLECODEID OUTPUT, @SUFFIXCODEID OUTPUT, @GENDERCODE OUTPUT, @BIRTHDATE OUTPUT, @ADDRESS_ADDRESSTYPECODEID OUTPUT, @ADDRESS_DONOTMAIL OUTPUT, @ADDRESS_COUNTRYID OUTPUT, @ADDRESS_STATEID OUTPUT, @ADDRESS_ADDRESSBLOCK OUTPUT, @ADDRESS_CITY OUTPUT, @ADDRESS_POSTCODE OUTPUT
                @ADDRESS_OMITFROMVALIDATION OUTPUT, @ADDRESS_CART OUTPUT, @ADDRESS_DPC OUTPUT, @ADDRESS_LOT OUTPUT, @ADDRESS_COUNTYCODEID OUTPUT, @ADDRESS_CONGRESSIONALDISTRICTCODEID OUTPUT, @ADDRESS_LASTVALIDATIONATTEMPTDATE OUTPUT, @ADDRESS_VALIDATIONMESSAGE OUTPUT, @ADDRESS_CERTIFICATIONDATA OUTPUT
                @PHONE_PHONETYPECODEID OUTPUT, @PHONE_NUMBER OUTPUT, @EMAILADDRESS_EMAILADDRESSTYPECODEID OUTPUT,@EMAILADDRESS_EMAILADDRESS OUTPUT, @MARITALSTATUSCODEID OUTPUT, @WEBADDRESS output, @INDUSTRYCODEID output, @NUMEMPLOYEES output, @NUMSUBSIDIARIES output, @PARENTCORPID output, @BATCHSPOUSEID OUTPUT, @BATCHSPOUSERELATIONID OUTPUT, @SPOUSEID OUTPUT, @EXISTINGSPOUSE OUTPUT, @SPOUSE_LASTNAME OUTPUT, @SPOUSE_FIRSTNAME OUTPUT, @SPOUSE_MIDDLENAME OUTPUT, @SPOUSE_MAIDENNAME OUTPUT, @SPOUSE_NICKNAME OUTPUT, @SPOUSE_TITLECODEID OUTPUT, @SPOUSE_SUFFIXCODEID OUTPUT, @SPOUSE_GENDERCODE OUTPUT, @SPOUSE_BIRTHDATE OUTPUT, @SPOUSE_RECIPROCALTYPECODEID OUTPUT
                @SPOUSE_RELATIONSHIPTYPECODEID OUTPUT, @COPYPRIMARYINFORMATION OUTPUT, @SPOUSE_STARTDATE OUTPUT, @PRIMARYRELATIONSHIPEXISTS OUTPUT, @PRIMARYMATCHFACTOR OUTPUT, @RECIPROCALRELATIONSHIPEXISTS OUTPUT, @RECIPROCALMATCHFACTOR OUTPUT, @BATCHBUSINESSID OUTPUT, @BATCHBUSINESSRELATIONID OUTPUT, @BUSINESSID OUTPUT, @EXISTINGBUSINESS OUTPUT, @BUSINESS_KEYNAME OUTPUT, @BUSINESS_KEYNAMEPREFIX OUTPUT, @BUSINESS_ADDRESSTYPECODEID OUTPUT, @BUSINESS_COUNTRYID OUTPUT, @BUSINESS_STATEID OUTPUT, @BUSINESS_ADDRESSBLOCK OUTPUT
                @BUSINESS_CITY OUTPUT, @BUSINESS_POSTCODE OUTPUT, @BUSINESS_DONOTMAIL OUTPUT, @BUSINESS_OMITFROMVALIDATION OUTPUT, @BUSINESS_CART OUTPUT, @BUSINESS_DPC OUTPUT, @BUSINESS_LOT OUTPUT, @BUSINESS_COUNTYCODEID OUTPUT, @BUSINESS_CONGRESSIONALDISTRICTCODEID OUTPUT, @BUSINESS_LASTVALIDATIONATTEMPTDATE OUTPUT, @BUSINESS_VALIDATIONMESSAGE OUTPUT, @BUSINESS_CERTIFICATIONDATA OUTPUT, @BUSINESS_PHONETYPECODEID OUTPUT, @BUSINESS_NUMBER OUTPUT, @BUSINESS_RECIPROCALTYPECODEID OUTPUT, @BUSINESS_RELATIONSHIPTYPECODEID OUTPUT, @BUSINESS_STARTDATE OUTPUT, @ISCONTACT OUTPUT, @ISPRIMARYCONTACT OUTPUT, @CONTACTTYPECODEID OUTPUT, @POSITION OUTPUT, @ISMATCHINGGIFTRELATIONSHIP OUTPUT

    --bez 2/12/08 CR291521-011508

   if @SPOUSE_GENDERCODE is null
      set @SPOUSE_GENDERCODE = 0;

        if len(@KEYNAMEPREFIX) > 0
            set @LASTNAME = @KEYNAMEPREFIX + case @KEYNAMEPREFIX when '' then '' else '\' end + @KEYNAME;
        else
            set @LASTNAME = @KEYNAME;

        if len(@BUSINESS_KEYNAMEPREFIX) > 0
            set @BUSINESS_NAME = @BUSINESS_KEYNAMEPREFIX + case @BUSINESS_KEYNAMEPREFIX when '' then '' else '\' end + @BUSINESS_KEYNAME;
        else
            set @BUSINESS_NAME = @BUSINESS_KEYNAME;

        if @KEYNAME is not null
            set @DATALOADED = -1;

        if @ADDRESS_COUNTRYID is null
            exec @ADDRESS_COUNTRYID = dbo.UFN_COUNTRY_GETDEFAULT;

        if @ISORGANIZATION = 1
            begin
                set @ORGANIZATIONNAME = @LASTNAME;
                set @ORGANIZATION_ADDRESSTYPECODEID=@ADDRESS_ADDRESSTYPECODEID;
                set @ORGANIZATION_DONOTMAIL=@ADDRESS_DONOTMAIL;
                set @ORGANIZATION_COUNTRYID=@ADDRESS_COUNTRYID;                
                set @ORGANIZATION_STATEID=@ADDRESS_STATEID;
                set @ORGANIZATION_ADDRESSBLOCK=@ADDRESS_ADDRESSBLOCK;
                set @ORGANIZATION_CITY=@ADDRESS_CITY;
                set @ORGANIZATION_POSTCODE=@ADDRESS_POSTCODE;
                set @ORGANIZATION_OMITFROMVALIDATION=@ADDRESS_OMITFROMVALIDATION;
                set @ORGANIZATION_CART=@ADDRESS_CART;
                set @ORGANIZATION_DPC=@ADDRESS_DPC;
                set @ORGANIZATION_LOT=@ADDRESS_LOT;
                set @ORGANIZATION_COUNTYCODEID=@ADDRESS_COUNTYCODEID;
                set @ORGANIZATION_CONGRESSIONALDISTRICTCODEID=@ADDRESS_CONGRESSIONALDISTRICTCODEID;
                set @ORGANIZATION_LASTVALIDATIONATTEMPTDATE=@ADDRESS_LASTVALIDATIONATTEMPTDATE;
                set @ORGANIZATION_VALIDATIONMESSAGE=@ADDRESS_VALIDATIONMESSAGE;
                set @ORGANIZATION_CERTIFICATIONDATA=@ADDRESS_CERTIFICATIONDATA;
                set @ORGANIZATION_PHONETYPECODEID=@PHONE_PHONETYPECODEID;
                set @ORGANIZATION_NUMBER=@PHONE_NUMBER;
                set @ORGANIZATION_EMAILADDRESSTYPECODEID=@EMAILADDRESS_EMAILADDRESSTYPECODEID;
                set @ORGANIZATION_EMAILADDRESS=@EMAILADDRESS_EMAILADDRESS;
            end;        

        if @ISORGANIZATION = 1 and @ORGANIZATION_COUNTRYID is null
            exec @ORGANIZATION_COUNTRYID = dbo.UFN_COUNTRY_GETDEFAULT;
        else         
            if @BUSINESS_COUNTRYID is null
                exec @BUSINESS_COUNTRYID = dbo.UFN_COUNTRY_GETDEFAULT;

        select @ZIPLOOKUPCOUNTRIES = dbo.UFN_ZIPCITYSTATE_GETCOUNTRIES_TOITEMLISTXML();
        select @VALIDATIONCOUNTRIES = dbo.UFN_COUNTRY_GETVALIDATIONCOUNTRIES_TOITEMLISTXML();

    end try
    begin catch
        exec dbo.USP_RAISE_ERROR;
        return 1;
    end catch

    return 0;

end;