Este foi um bug conhecido do Visio em 2002, não sei se foi corrigido em versões posteriores. Veja aqui para mais informações. Uma solução alternativa parece estar na última postagem do encadeamento:
A work around is to modify the stored procedure witht he following code after the "as":
--Visio Bug Fix db(2/25/2004)
declare @myTableOwner varchar(64)
select top 1 @myTableOwner=u.name from sysobjects s, sysusers u where
s.uid=u.uid and s.name=@tablename
set @tablename = @myTableOwner + '.' + @tablename