• Function code below.

    Specifically, the error thrown is:

    Msg 515, Level 16, State 2, Line 1

    Cannot insert the value NULL into column 'Clientname', table '@tRS'; column does not allow nulls. INSERT fails.

    The statement has been terminated.

    IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[CallbackService_ufn_GetCallerData]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))

    DROP FUNCTION [dbo].[CallbackService_ufn_GetCallerData]

    GO

    SET ANSI_NULLS ON

    GO

    SET QUOTED_IDENTIFIER OFF

    GO

    CREATE FUNCTION [dbo].[CallbackService_ufn_GetCallerData]

    (@nCaller_NoArgINTEGER,

    @cCallerLangArgCHAR(1))

    RETURNS @tRS TABLE (Caller_NoINTEGERNOT NULL,

    ClientnameVARCHAR(64)NOT NULL,

    ClientLanguageVARCHAR(16)NOT NULL,

    ClientOrganizationVARCHAR(40)NOT NULL,

    ClientAddressLine1VARCHAR(60)NOT NULL,

    ClientAddressLine2VARCHAR(70)NOT NULL,

    ClientAddressLine3VARCHAR(48)NOT NULL,

    ClientTelephone1VARCHAR(20)NOT NULL,

    ClientTelephone1ExtVARCHAR(5)NOT NULL,

    ClientTelephone2VARCHAR(20)NOT NULL,

    ClientTelephone2ExtVARCHAR(5)NOT NULL,

    ClientEmailVARCHAR(100)NOT NULL)

    AS

    BEGIN

    INSERT@tRS

    SELECT@nCaller_NoArg,

    RTRIM(LTRIM(c.First_Name)) + ' ' + RTRIM(LTRIM(c.Last_Name)),

    CASEWHEN @cCallerLangArg = 'F'

    THEN UPPER(RTRIM(LTRIM(l.Descript_f)))

    ELSE UPPER(RTRIM(LTRIM(l.Descript)))

    END,

    ISNULL(RTRIM(LTRIM(c.Organization)), ''),

    ISNULL(RTRIM(LTRIM(c.Street)), ''),

    ISNULL(RTRIM(LTRIM(c.City)) + ', ' +

    CASEWHEN @cCallerLangArg = 'F'

    THEN UPPER(RTRIM(LTRIM(c.ps_prov_code)))

    ELSE UPPER(RTRIM(LTRIM(c.ps_prov_code)))

    END + ' ' +

    RTRIM(LTRIM(CASEWHEN c.Postcode LIKE '[A-Z][0-9][A-Z][0-9][A-Z][0-9]'

    THEN LEFT(c.PostCode, 3) + ' ' + RIGHT(c.PostCode, 3)

    ELSE c.PostCode

    END)), ''),

    ISNULL(CASEWHEN @cCallerLangArg = 'F'

    THEN UPPER(RTRIM(LTRIM(s_country_name_f)))

    ELSE UPPER(RTRIM(LTRIM(s_country_name)))

    END, ''),

    ISNULL(RTRIM(LTRIM(c.Telephone)), ''),

    ISNULL(RTRIM(LTRIM(c.Extension)), ''),

    ISNULL(RTRIM(LTRIM(c.Night_Phone)), ''),

    '',

    ISNULL(RTRIM(LTRIM(c.s_Email)), '')

    FROMdbo.Callerc

    JOINdbo.LookuplON l.lookup_ch = @cCallerLangArg

    AND l.Item_name = 'Language'

    LEFT OUTER JOINdbo.ProvincepON p.ps_Prov_Code = c.ps_Prov_Code

    LEFT OUTER JOINdbo.CountryctON ct.ps_country_code = c.Country

    WHEREc.Caller_No = @nCaller_NoArg

    RETURN

    END

    GO