UFN_FAFADDRESSBOOK_GETCONTACTDETAILS

Get the details of individual contacts

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@EVENTID uniqueidentifier IN
@CLIENTUSERID int IN

Definition

Copy


CREATE function dbo.UFN_FAFADDRESSBOOK_GETCONTACTDETAILS(
    @EVENTID uniqueidentIFier = NULL,  
    @CLIENTUSERID integer = NULL
)
returns table
as
    return 
     ---This datalist returns an address book contact details by passing CLIENTUSERID   


  SELECT   
        A.ID,A.FIRSTNAME,A.LASTNAME,A.EMAILADDRESS,  
        CASE WHEN D.DATEADDED IS NOT NULL THEN D.DATEADDED ELSE '' END As DONDATE,  
        ISNULL((SELECT COALESCE(  
                        CASE WHEN PART.CONSTITUENTID IS NOT NULL THEN PART.DATEADDED ELSE NULL END,    
                        CASE WHEN TM.CONSTITUENTID IS NOT NULL THEN TM.DATEADDED ELSE NULL END,  
                        CASE WHEN HH.CONSTITUENTID IS NOT NULL THEN HH.DATEADDED ELSE NULL END   
                   )),'') AS REGDATE,   

        (  
            case   
                when PART.CONSTITUENTID IS NOT NULL then (select count(*) from dbo.UFN_FAFPARTICIPANT_DONORS(@EVENTID ,PART.CONSTITUENTID))  
                when TM.CONSTITUENTID IS NOT NULL then (select count(*) from dbo.UFN_FAFPARTICIPANT_DONORS(@EVENTID ,TM.CONSTITUENTID))  
                when HH.CONSTITUENTID IS NOT NULL then (select count(*) from dbo.UFN_FAFPARTICIPANT_DONORS(@EVENTID ,HH.CONSTITUENTID))  
            else -1  
            end  
         )  AS DONORS,  

         D.CURRENTDONATIONAMOUNT AS DONATIONAMOUNT,      

      --   CASE WHEN R.ID IS NOT NULL OR (HH.CONSTITUENTID IS NOT NULL  AND HH.ISHOUSEHOLDLEADER = 'y') THEN   

            CASE WHEN R.ID IS NOT NULL THEN
         --    CASE WHEN (HH.CONSTITUENTID IS NOT NULL  AND HH.ISHOUSEHOLDLEADER = 'y') THEN   

         --        (SELECT TE.TARGETFUNDRAISINGGOAL FROM dbo.TEAMEXTENSION (NOLOCK) TE   

         --            INNER JOIN dbo.UFN_FAF_HOUSEHOLDLEADERLIST(HH.CONSTITUENTID,@EVENTID) HHL ON HHL.TEAMID = TE.TEAMFUNDRAISINGTEAMID WHERE HHL.ID = HH.CONSTITUENTID)  

         --    ELSE  

                 ISNULL( (SELECT RE.TARGETFUNDRAISINGGOAL FROM REGISTRANTEXTENSION RE WHERE RE.REGISTRANTID=R.ID), '-1'
          --   END   

         ELSE -1 END  AS GOAL,  

   --      CASE WHEN HH.CONSTITUENTID IS NOT NULL THEN    

   --           CASE WHEN HH.ISHOUSEHOLDLEADER = 'y' THEN   

   --              (SELECT ([dbo].[UFN_REVENUE_CONSTITUENTRECOGNIZEDAMOUNT](@EVENTID,(SELECT TE.TEAMCONSTITUENTID from dbo.TEAMEXTENSION (NOLOCK) TE   

   --                  INNER JOIN dbo.UFN_FAF_HOUSEHOLDLEADERLIST(HH.CONSTITUENTID,@EVENTID) HHL ON HHL.TEAMID = TE.TEAMFUNDRAISINGTEAMID WHERE HHL.ID = HH.CONSTITUENTID))))  

   --           ELSE 0 END  

   --       ELSE  


              CASE WHEN R.ID IS NOT NULL THEN [dbo].[UFN_REVENUE_GETPARTICIPANTRAISEDTOTAL](R.ID, @EVENTID) ELSE 0 END  REGISTRANTRAISED,

   --      END AS REGISTRANTRAISED,  

         (SELECT COUNT(FCL.CLIENTUSERSID) FROM dbo.FAFCOMMUNICATIONSLOG FCL WHERE FCL.ADDRESSBOOKID=A.ID AND FCL.MESSAGETYPECODE=1 AND FCL.CLIENTUSERSID=@CLIENTUSERID AND FCL.EVENTID=@EVENTID)AS NUMOFSENTMESSAGES,  
             CASE WHEN TM.CONSTITUENTID IS NOT NULL THEN 1 ELSE 0 END AS [ISTEAMMEMBER],      
             CASE WHEN D.CONSTITUENTID IS NOT NULL THEN 1 ELSE 0 END AS [ISDONOR],    
             CASE WHEN D.CONSTITUENTID IS NULL AND TM.CONSTITUENTID IS NULL THEN 1 ELSE 0 END AS [ISPROSPECT],  
             CASE WHEN D.STATUS IS NULL THEN 'N/A' ELSE D.STATUS END AS DONORSTATUS,    
             CASE WHEN TM.STATUS IS NULL THEN 'N/A' ELSE TM.STATUS END AS TEAMSTATUS,  
             A.MIDDLENAME, A.PREFERREDCOMMUNICATION, A.SALUTATION, A.ADDRESSBLOCK,
             A.CITY, A.STATEID, A.POSTCODE, A.COUNTRYID, A.CELLPHONE, A.TEXTMESSAGESEND,  
             A.HOMEPHONE, A.BUSINESSPHONE, A.BUSINESSADDRESS,
             A.SECONDARYEMAILADDRESS, A.SECONDARYCITY, A.SECONDARYSTATEID,
             A.SECONDARYPOSTCODE,A.SECONDARYCOUNTRYID,   
             CASE WHEN TM.ISTEAMCAPTAIN IS NOT NULL THEN 1 ELSE 0 END AS [ISTEAMCAPTAIN],  
             --CASE WHEN R.ID IS NOT NULL THEN (SELECT SIE.[SITEIMAGESID] from STORY S (NOLOCK) LEFT OUTER JOIN dbo.SITEIMAGESEXTENSION SIE (NOLOCK) ON S.FAFIMAGESID = SIE.ID WHERE S.REGISTRANTID = R.ID) ELSE NULL END AS FAFIMAGEID,  

             null AS FAFIMAGEID,
         R.ID AS REGISTRANTID  
   FROM [dbo].[ADDRESSBOOKFAF] A (NOLOCK)    
        LEFT JOIN [dbo].[UFN_FAFADDRESSBOOK_PARTICIPANTS_LIST](@EVENTID,@CLIENTUSERID) PART    
           ON A.CONSTITUENTID = PART.CONSTITUENTID        
        LEFT JOIN [dbo].[UFN_FAFADDRESSBOOK_HOUSEHOLDMEMBERS_LIST](@EVENTID,@CLIENTUSERID) HH  
           ON A.CONSTITUENTID = HH.CONSTITUENTID      
        LEFT JOIN [dbo].[UFN_FAFADDRESSBOOK_TEAMMEMBERS_LIST](@EVENTID,@CLIENTUSERID) TM      
           ON  A.CONSTITUENTID = TM.CONSTITUENTID            
        LEFT JOIN [dbo].UFN_FAFADDRESSBOOK_DONORS_LIST(@EVENTID,@CLIENTUSERID) D      
           ON  A.CONSTITUENTID = D.CONSTITUENTID    
     --LEFT JOIN dbo.UFN_FAFADDRESSBOOK_PROSPECTS_LIST(@EVENTID,@CLIENTUSERID) P   

     -- ON P.CONSTITUENTID=D.CONSTITUENTID  

        LEFT JOIN [dbo].REGISTRANT R (NOLOCK)  
           ON R.EVENTID= @EVENTID AND R.CONSTITUENTID = A.CONSTITUENTID  
    WHERE A.CLIENTUSERSID = @CLIENTUSERID