I had the same problem. I think they are going to fix it in the soon to be released version of the module, but I needed it fixed for a project I'm working on now (probably the same situation for you guys too). Anyway, this is the solution I came up with, but please use with caution! I'm not sure if this works in all configurations of the module but if you run this script to update the GetCategoryFeedback sp it should start displaying the Category and the Subject rather then their ID:
ALTER procedure dbo.[GetCategoryFeedback]
@PortalID int,
@CategoryID nvarchar(100),
@Status int,
@CurrentPage int,
@PageSize int
AS
--Create a temp table to hold the current page of data
--Add and ID column to count the records
CREATE TABLE #TempTable
(
ID int IDENTITY PRIMARY KEY,
PortalID int,
FeedbackID int,
CategoryID nvarchar(100),
CreatedByEmail nvarchar(200),
ApprovedBy int,
DateCreated datetime,
ModuleID int,
Status int,
Message nvarchar(1000),
Subject nvarchar(200)
)
--Fill the temp table with the Feedback data
IF @CategoryID = ''
BEGIN
INSERT INTO #TempTable
(
PortalID,
FeedbackID,
CategoryID,
CreatedByEmail,
ApprovedBy,
DateCreated,
ModuleID,
Status,
Message,
Subject
)
SELECT
Feedback.PortalID,
FeedbackID,
CategoryID = case when FeedbackCategory.[ListID] is null then [CategoryID] else FeedbackCategory.[ListValue] end,
CreatedByEmail,
ApprovedBy,
DateCreated,
ModuleID,
Status,
Message,
Subject = case when FeedbackSubject.[ListID] is null then [Subject] else FeedbackSubject.[ListValue] end
FROM dbo.[Feedback]
left outer join FeedbackList FeedbackSubject on Feedback.[Subject] = convert(varchar,FeedbackSubject.ListID)
left outer join FeedbackList FeedbackCategory on Feedback.[CategoryID] = convert(varchar,FeedbackCategory.ListID)
WHERE
Status = @Status and Feedback.PortalID = @PortalID
ORDER BY
DateCreated Desc
END
Else
BEGIN
INSERT INTO #TempTable
(
PortalID,
FeedbackID,
CategoryID,
CreatedByEmail,
ApprovedBy,
DateCreated,
ModuleID,
Status,
Message,
Subject
)
SELECT
Feedback.PortalID,
FeedbackID,
CategoryID = case when FeedbackCategory.[ListID] is null then [CategoryID] else FeedbackCategory.[ListValue] end,
CreatedByEmail,
ApprovedBy,
DateCreated,
ModuleID,
Status,
Message,
Subject = case when FeedbackSubject.[ListID] is null then [Subject] else FeedbackSubject.[ListValue] end
FROM dbo.[Feedback]
left outer join FeedbackList FeedbackSubject on Feedback.[Subject] = convert(varchar,FeedbackSubject.ListID)
left outer join FeedbackList FeedbackCategory on Feedback.[CategoryID] = convert(varchar,FeedbackCategory.ListID)
WHERE
CategoryID = @CategoryID and Feedback.PortalID = @PortalID
and Status = @Status
ORDER BY
DateCreated Desc
END
--Return the total number of records available
DECLARE @TotalRecords int
SELECT @TotalRecords = COUNT(FeedbackID) FROM #TempTable
--Create variable to identify the first and last record that should be selected
DECLARE @FirstRec int, @LastRec int
SELECT @FirstRec = (@CurrentPage - 1) * @PageSize
SELECT @LastRec = (@CurrentPage * @PageSize + 1)
--Select one page of data based on the record numbers above
SELECT
PortalID,
FeedbackID,
CategoryID,
CreatedByEmail,
ApprovedBy,
DateCreated,
ModuleID,
Status,
Message,
Subject,
TotalRecords = @TotalRecords
FROM
#TempTable
WHERE
ID > @FirstRec
AND
ID < @LastRec
I hope it helps!
yogs