A versão é SQL 2008 R2 Enterprise
Estou tentando documentar nossa configuração de replicação.
A replicação está em execução e funcionando bem:
No SSMS, clico com o botão direito em uma publicação e seleciono Gerar Scripts.
eu recebo o erro
O SQL Server não pode gerar o script SQL.
Informação adicional:
Ocorreu uma exceção ao executar uma instrução ou lote Transact-SQL.
(Microsoft.SqlServer.ConnectionInfo)
Não foi possível encontrar o procedimento armazenado ''. (Microsoft SQL Server. Erro: 2812)
A instrução T-SQL EXEC sp_helpsubscription 'SubscriptionName'
retorna o seguinte:
Msg 2812, Nível 16, Estado 62, Procedimento sp_MSrepl_helpsubscription, Linha 537
[Linha de Início de Lote 268]
Não foi possível encontrar o procedimento armazenado ''.
Alguma ideia do que posso verificar?
A seção exec @distproc está aproximadamente na linha 537 de sp_MSrepl_helpsubscription. Está construindo a chamada proc e deve ser algo como [SeverName].distribution.dbo.sp_MSenumdistributionagentproperties
A partir do erro, parece que a variável @distproc não está sendo definida corretamente, ou pelo menos sendo definida como uma string vazia.
Por quê? Isso é difícil saber sem mais informações ou poder testar em seu sistema. Alguma configuração incomum com o distribuidor, talvez? Mas espero que isso aponte você na direção certa para que você possa caminhar por ela. (Execute esse código no Banco de Dados que está sendo publicado).