none
Merge Replication e Transactional Publication with updatable subscriptions - AJUDEM RRS feed

  • 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.

    quinta-feira, 2 de agosto de 2007 08:52

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.

    quinta-feira, 2 de agosto de 2007 10:41
  • 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!

     

    quinta-feira, 2 de agosto de 2007 11:20
  •  

    entao a transacional nao retorna os dados desculpe mais nao entendi o fluxo, vc. pode postar qual o fluxo e o tipo das replicacaoes?
    quinta-feira, 2 de agosto de 2007 11:46
  • É 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?!

     

     

     

    quinta-feira, 2 de agosto de 2007 12:24
  • Estou a ver que não percebeste?!

     

    quinta-feira, 2 de agosto de 2007 13:29
  • 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;

     

    quinta-feira, 2 de agosto de 2007 13:58
  • Como é que mudo para Peer2Peer?

    É que nas propriedades não me deixa alterar.

    Obrigado!

    quinta-feira, 2 de agosto de 2007 14:19
  • É 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!

     

     

    quinta-feira, 2 de agosto de 2007 14:26
  •  

    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;

    quinta-feira, 2 de agosto de 2007 14:55