Para no splitear el parámetro, no sería mejor que trabaje la consulta dinámicamente?
Código SQL:
Ver originalSET @SQL = 'declare @nombres varchar(1000)
select @nombres= @nombres + nombre + '',''
from Cliente
where id_cliente in (' + @ids + ')
select @nombres'
EXEC sp_executesql @SQL
ruben_zer0, por qué usas nvarchar y no vachar?