Ordem nas tabelas de sincronismo



  • Boa tarde.

    Como faço para alterar a ardem das tabelas no ato do sincronismo.

    estou tendo problema de FK pois quando é sincronizado primeiro estra indo a tabela filha e depois a tabela pai.

    Estamos trabalhando com Triggers nas tabelas IN.

    E quando sincroniza ele envia direto para o banco, se consegui mudar a ordem das tabelas na sincronização ira resolver nosso problema de erro de FK.


  • O erro está ocorrendo qual momento? Quando manda sincronizar para obter dados da OUT ou para enviar para IN?

    De antemão já posso adiantar que a ordem de inserção das tabelas não faz diferença no banco do Manager, pois as tabelas desse banco (IN e OUT) não são criadas com relacionamento (mesmo que possuam). O problema pode estar na aplicação mesmo ou nos dados que estão sendo enviados para o dispositivo, alguma tabela ou campo que deveria estar preenchido e não está.


  • Oi Raphael.

    Quando exporto do tablet ele inclui na tabelas IN.
    A inclusão nas tabelas IN não da erro de FK porque não tem relacionamento.

    Porem a integração entre meu retaguarda e as tabelas IN são feitas por triggers nas tabelas IN.

    Quando o tablet exporta para IN a trigger é disparada inserido na minha tabela de retaguarda.

    Como o tablet esta inserindo primeiro a tabela filha a trigger tenta incluir na tabela do retaguarda primeiro a filha e ai estoura a FK.

    Então preciso mudar se a ordem de insert nas tabelas IN respeita-se o relacionamento do tablet não teria problema pois ele iria disparar a trigger da tabela PAI primeiro.


  • Aconselho usar um fluxo agendado para verificar de tempo em tempo as tabelas IN, evitando este tipo de problema, pois aí vc terá um controle de qual tabela deseja atualizar primeiro.


  • Oi Raphael não é de nosso interesse usar o fluxo agendado.

    É premissa que o sistema seja real-time e com fluxo agendado terei delay.

    Nosso sistema só sera aceito pelos clientes de forma real-time pelo tipo de aplicabilidade da solução.


  • Conseguimos mudar a ordem de inserção do dispositivo na tabela IN.


  • Srs,

    Se o objetivo é atualizar os dados diretamente no servidor, em tempo real, não há a necessidade de utilização do sincronizador.

    O sincronizador é direcionado para coleta de dados offline, se não for o seu caso use as funções de Webservices (já disponíveis no Mobile) para enviar os dados para o servidor através de um botão na própria interface de cadastro, ou seja, o próprio botão gravar já iria no servidor e gravaria diretamente nele.

    Isso é importante caso haja validações complexas, ou gerenciamento de estoque e/ou horário, como por exemplo numa aplicação de bilheteria de teatro com cadeiras marcadas, ou uma gestão de vendas que valide o limite de crédito do cliente.

Log in to reply