The sql queries below are what llblgen sends to sql when querying for a user. The first code block is for the fetchentitycollection and the second code block is for the getdbcount. The fetchentitycollection command works properly and does the correct joins. The GetDBCount command does not work as it does not add all of the proper joins.
exec sp_executesql N'SELECT DISTINCT TOP 20 [ICDEV].[PointOfContact].[Contact].[ContactGuid] AS [F0], [ICDEV].[PointOfContact].[Contact].[Name] AS [F1], [ICDEV].[PointOfContact].[Contact].[Email] AS [F2], [ICDEV].[PointOfContact].[Contact].[WebPage] AS [F3],
[ICDEV].[PointOfContact].[Contact].[Deleted] AS [F4], [ICDEV].[PointOfContact].[IndividualContact].[ContactGuid] AS [F5],
[ICDEV].[PointOfContact].[IndividualContact].[FirstName] AS [F6], [ICDEV].[PointOfContact].[IndividualContact].[MiddleName] AS [F7],
[ICDEV].[PointOfContact].[IndividualContact].[LastName] AS [F8], [ICDEV].[PointOfContact].[IndividualContact].[PrimaryPhone] AS [F9],
[ICDEV].[PointOfContact].[IndividualContact].[SecondaryPhone] AS [F10], [ICDEV].[PointOfContact].[IndividualContact].[CellPhone] AS [F11],
[ICDEV].[PointOfContact].[IndividualContact].[Pager] AS [F12], [ICDEV].[PointOfContact].[IndividualContact].[Fax] AS [F13], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ContactGuid] AS [F14], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ShortUserId] AS [F15], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[UserId] AS [F16], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[Title] AS [F17], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[Department] AS [F18], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[Office] AS [F19], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ManagerUserId] AS [F20], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[AssistantUserId] AS [F21], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[DomainName] AS [F22], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[DistinguishedName] AS [F23], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[SipPrimaryUserEmailAddress] AS [F24] FROM (( [ICDEV].[PointOfContact].[Contact] INNER JOIN [ICDEV].[PointOfContact].[IndividualContact] ON [ICDEV].[PointOfContact].[Contact].[ContactGuid]=[ICDEV].[PointOfContact].[IndividualContact].[ContactGuid]) INNER JOIN [ICDEV].[PointOfContact].[ActiveDirectoryUser] ON [ICDEV].[PointOfContact].[IndividualContact].[ContactGuid]=[ICDEV].[PointOfContact].[ActiveDirectoryUser].[ContactGuid]) WHERE ( ( ( [ICDEV].[PointOfContact].[Contact].[Name] LIKE @Name1 OR [ICDEV].[PointOfContact].[IndividualContact].[FirstName] LIKE @FirstName2 OR [ICDEV].[PointOfContact].[IndividualContact].[LastName] LIKE @LastName3 OR [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ShortUserId] LIKE @ShortUserId4)) AND ( [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ContactGuid] IS NOT NULL)) ORDER BY [ICDEV].[PointOfContact].[Contact].[Name] ASC',N'@Name1 nvarchar(5),@FirstName2 nvarchar(5),@LastName3 nvarchar(5),@ShortUserId4 varchar(5)',@Name1=N'Bran%',@FirstName2=N'Bran%',@LastName3=N'Bran%',@ShortUserId4='Bran%'
exec sp_executesql N'SELECT COUNT(*) AS NumberOfRows FROM (SELECT [ICDEV].[PointOfContact].[Contact].[ContactGuid] AS [ContactGuid_ContactEntity], [ICDEV].[PointOfContact].[Contact].[Name], [ICDEV].[PointOfContact].[Contact].[Email], [ICDEV].[PointOfContact].[Contact].[WebPage],
[ICDEV].[PointOfContact].[Contact].[Deleted], [ICDEV].[PointOfContact].[IndividualContact].[ContactGuid] AS [ContactGuid_IndividualContactEntity], [ICDEV].[PointOfContact].[IndividualContact].[FirstName], [ICDEV].[PointOfContact].[IndividualContact].[MiddleName], [ICDEV].[PointOfContact].[IndividualContact].[LastName], [ICDEV].[PointOfContact].[IndividualContact].[PrimaryPhone], [ICDEV].[PointOfContact].[IndividualContact].[SecondaryPhone], [ICDEV].[PointOfContact].[IndividualContact].[CellPhone], [ICDEV].[PointOfContact].[IndividualContact].[Pager], [ICDEV].[PointOfContact].[IndividualContact].[Fax], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ContactGuid], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ShortUserId], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[UserId], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[Title], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[Department], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[Office], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ManagerUserId], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[AssistantUserId], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[DomainName], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[DistinguishedName], [ICDEV].[PointOfContact].[ActiveDirectoryUser].[SipPrimaryUserEmailAddress] FROM ( [ICDEV].[PointOfContact].[Contact] INNER JOIN [ICDEV].[PointOfContact].[IndividualContact] ON [ICDEV].[PointOfContact].[Contact].[ContactGuid]=[ICDEV].[PointOfContact].[IndividualContact].[ContactGuid]) WHERE ( ( ( [ICDEV].[PointOfContact].[Contact].[Name] LIKE @Name1 OR [ICDEV].[PointOfContact].[IndividualContact].[FirstName] LIKE @FirstName2 OR [ICDEV].[PointOfContact].[IndividualContact].[LastName] LIKE @LastName3 OR [ICDEV].[PointOfContact].[ActiveDirectoryUser].[ShortUserId] LIKE @ShortUserId4)))) TmpResult',N'@Name1 nvarchar(5),@FirstName2 nvarchar(5),@LastName3 nvarchar(5),@ShortUserId4 varchar(5)',@Name1=N'Bran%',@FirstName2=N'Bran%',@LastName3=N'Bran%',@ShortUserId4='Bran%'