Hi, Glenn,
I decided to give this a crack - I'm guessing you're getting an error message on the second CTE.
The first CTE (InvRows) can be used in a SELECT, or INSERT/UPDATE/DELETE statement - but I'm not sure a CTE can be used in a subsequent CTE. (The problem is that the error message I'm getting is a general syntax one, so I can't tell for certain).
Anyway, instead of the code that starts with "With InvRecs AS"....you might want to try:
SELECT * FROM (
SELECT uidclient, uid, description,
ROW_NUMBER() OVER (order by uid) as RowNumber
FROM Invrows ) InvRowsTemp
Where RowNumber >= @RowStart and RowNumber <= @RowEnd
There are probably multiple ways to solve this, but let me know if that helps...
Kevin