Inquiridor
Merge Replication e Transactional Publication with updatable subscriptions - AJUDEM

Pergunta
-
Boas pessoal!
Tenho as seguintes Bases de Dados:
BD_ERP
BD_Intermédia
BD_PDA
Tenho uma Transactional Publication with updatable subscriptions na BD_ERP e a BD_Intermédia a subscrever esta publicação.
Merge Replication entre a BD_Intermédia e a BD_PDA.
O meu problema é que quando faço uma sincronização entre a BD_Intermédia e a BD_PDA estes actualizam bem os dados, mas a BD_Intermédia não actualiza os dados na BD_ERP. Mas se fizer uma query insert directamente na BD_Intermédia, este actualiza bem na BD_ERP.
Ajudem por favor!
Obrigado.
Abraço.
Todas as Respostas
-
o transacional nao retorna para o publicador os dados alterados no assinante: pode explicar melhor seu mode ?
BD_ERP - transacional
BD_Intermédia - transacional
BD_PDA - merge
entao um update na BD_Intermédia nao retorna para o ERP e isso ?
Avbs.
-
Exacto!
A BD_PDA e a BD_Intermédia conseguem comunicar através de merge replication.
A BD_ERP e a BD_Intermédia também comunicam bem através de um Transactional Publication with updatable subscriptions, associado a BD_ERP.
O problema é quando faço a sincronização no PDA da BD_PDA para a BD_Intermédia ele actualiza os dados da BD_Intermédia, mas a BD_Intermédia não actualiza os dados na BD_ERP.
Não sei s é os triggers que não são iniciados? Se o Transactional não reconhece o merge replication como introdução de dados?
Obrigado pela atenção!
-
-
É assim:
O fluxo inicia-se na BD_ERP, que é a base de dados que contêm toda a informação. E criei uma publicação "Transactional Publication with updatable subscriptions" nesta base de dados.
Criei uma Base Dados sem tabelas com o nome BD_Intermédia.
Criei uma subscrição à publicação anterior com o destinho da BD_Intermédia.
Os dados são introduzidos através de um interface na BD_ERP e replicados para BD_Intermédia.
Funciona tudo bem!
Depois criei um Merge Replication na BD_Intermédia, com o destino de uma BD MSSQLCE2005 que irá estar no PDA. No PDA vão estar os dados da BD_Intermédia, e alguns dados que irão ser introduzidos ou actualizados na BD_PDA, através do Merge Replication.
O Problema é que quando faço Sincronizar na minha aplicação PDA, a BD_Intermédia é actualizada, mas a BD_Intermédia devia também actualizar a BD_ERP. E isto não acontece!
Só através de um comando insert à BD_Intermédia é que os dados são inseridos na BD_ERP.
Não sei s fui claro?!
-
-
opa esta ficando mais claro, a transcional que vc. criou e uma PTP ou so transacional ?, pois uma replicacao transacional nao retorna dados para o publicador mudando o modelo para PTP entre o erp e sua intermediaria deve funcionar corretamente.
Abs;
-
-
É que o meu problema é não poder alterar os tipos de dados da BD do ERP logo utilizar uma BD intermédia onde altero os dados para poder utilizar na BD do PDA, visto que o SQLCE tem algumas restrições ao nivel dos tipos de dados.
Com a BD_ERP e BD_intermédia fazendo um Transactional Publication with updatable subscriptions, mantinha estes dados actualizados, pq eles sincronizam perfeitamente, o merge replication entre a BD_intermédia e a BD_PDA também funciona bem! Agora a introdução dos novos dados, que foram introduzidos na BD_PDA e sincronizados na BD_intermédia, não entram na BD_ERP!
-
e isso que eu continuo achando estranho vc. falaou que se inserir na intermediaria ele atualiza a do ERP, isso nao deveria acontecer pois a transacional esta limitada ao assinante receber informacoes e no seu caso atualizar mais ele nao deveria enviar para o ERP as alteracoes essa replicacao e de um lado a penas. veja se nao tem filtros de replicacao configurados na sua intemediaria esse pode ser outro ponto.
qualquer coisa retorne. posso passar meu telefone para conversarmos se quizer manda um email mcolla@bol.com.br
Abs;