Configurar uma empresa de teste que tenha uma cópia de dados da empresa ao vivo para o Microsoft Dynamics GP usando o Microsoft SQL Server

Este artigo descreve como configurar uma empresa de teste que tenha uma cópia de dados da empresa ao vivo usando o Microsoft SQL Server.

Aplica-se a: Microsoft Dynamics GP
Número de KB original: 871973

Resumo

Para testar determinados problemas, uma técnica de solução de problemas pode ser copiar o banco de dados da Empresa Dinâmica para um banco de dados da Empresa de Teste.

Mais informações

Observações:

  • Se você estiver usando recursos humanos para o Microsoft Dynamics GP, as informações de Instalação de Atendimento parecem não ter sido copiadas. Para abrir essa janela, selecione Ferramentas, aponte para Instalação, aponte para Recursos Humanos, aponte para Atendimento e selecione Instalação. Essa tabela (TAST0130) é copiada, mas contém um campo que ainda faz referência ao banco de dados da Live Company. Para corrigir esse problema, você pode reentrada dos dados na janela Configuração de Atendimento no novo banco de dados da empresa de teste para conter as mesmas informações de antes e Salvá-los. Ou, você pode optar por atualizar o campo COMPANYCODE_I na tabela TAST0130 para alterar a referência de código da empresa ao banco de dados de teste (que pode ser encontrado no valor da coluna INTERID para a empresa de teste no Dynamics.. SY01500 tabela).

  • Se você estiver usando Ativos Fixos para o Microsoft Dynamics GP, as informações de Instalação da Empresa de Ativos Fixos não serão trazidas para a Empresa de Teste. Para corrigir esse problema, abra a janela Configuração da Empresa de Ativos Fixos na Empresa Dinâmica e observe as configurações. Abra a janela Configuração da Empresa de Ativos Fixos na Empresa de Teste e insira as mesmas configurações que a Empresa Dinâmica. Para abrir a janela, use a seguinte:

    • Microsoft Dynamics GP 10.0 ou uma versão posterior:
      Selecione Microsoft Dynamics GP, aponte para Ferramentas, aponte para Instalação, aponte para Sistema, aponte para Ativos Fixos e selecione Empresa.
  • Se você estiver usando Trilhas de Auditoria para o Microsoft Dynamics GP, deverá excluir os gatilhos de auditoria da empresa de teste usando SQL e não do front-end. Audit Trails são apenas gatilhos copiados e ainda apontam para o mesmo banco de dados de auditoria ao vivo. No entanto, não exclua, pare ou remova a auditoria na janela Audit Trail Maintenance na empresa de teste ou limpará o histórico na tabela de auditoria e/ou removerá o gatilho na empresa ativa. Para remover os gatilhos de trilha de auditoria da empresa de teste, consulte as etapas descritas em Como impedir que os gatilhos do Audit Trail na empresa de teste atualizem o banco de dados de auditoria ao vivo usando Trilhas de Auditoria no Microsoft Dynamics GP.

  • Se você estiver usando a AA ( Contabilidade Analítica ), primeiro você deve ativar o AA na empresa de teste antes de copiar o banco de dados ao vivo (que tem o AA ativo). Siga as etapas em Como criar uma empresa de teste com a Contabilidade Analítica instalada usando o Microsoft Dynamics GP.

    Observação

    Após a restauração, não se esqueça de executar os dois scripts mencionados no blog: o primeiro a atualizar o INTERID (da etapa 6 abaixo neste artigo e também o script para atualizar os próximos números disponíveis armazenados na tabela AAG00102 (para evitar erros de chave duplicada ao teclar novas transações).

  • Se você estiver usando o Management Reporter 2012, deve interromper os serviços do Management Reporter que podem ser feitos usando uma das seguintes opções:

    1. No Console de Configuração do Management Reporter 2012, na primeira página, você verá o Serviço de Processo do Management Reporter 2012 Application Service and Management Reporter 2012. Selecione Parar nesses dois serviços para pará-los.

    2. Selecione Iniciar, selecione Painel de Controle, selecione Ferramentas Administrativas e, em seguida, selecione abrir Serviços. Na janela Serviços, realce o Serviço de Aplicativo do Management Reporter 2012 e selecione o link para Parar esse serviço. Além disso, realce o Serviço de Processo do Management Reporter 2012 e selecione o link para Parar esse serviço também.

A Microsoft oferece exemplos de programação somente para ilustração, sem garantias expressas ou implícitas. Inclui, mas não se limita a, as garantias implícitas de comercialização ou aptidão para um propósito específico. Este artigo supõe que você conhece a linguagem de programação que está sendo demonstrada e as ferramentas usadas nos processos de criação e depuração. Os engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento. No entanto, eles não modificarão esses exemplos para fornecer funcionalidade ou procedimentos de construção adicionais para atender aos seus requisitos específicos.

Para configurar a empresa de teste, siga estas etapas:

  1. Em Utilitários, crie um novo banco de dados da empresa que você pode usar como empresa de teste. Verifique se você fornece ao banco de dados uma ID de DB/empresa exclusiva e um nome da empresa que designará o banco de dados como uma empresa de teste. Por exemplo, você pode usar uma ID de DB/empresa de TEST e um nome da empresa de TEST COMPANY.

    Observação

    O caminho em que os arquivos .mdf e .ldf do banco de dados estão sendo criados. Você precisará dessas informações para uma etapa posterior neste artigo.

  2. Entre na empresa de teste. No Microsoft Dynamics GP, selecione Microsoft Dynamics GP, selecione Ferramentas, Selecione Instalação, Selecione Sistema e, em seguida, selecione Acesso do Usuário.

  3. Na área Acesso ao Usuário , selecione o usuário a quem você deseja conceder acesso ao banco de dados da empresa de teste. Em seguida, selecione a caixa marcar ao lado do nome da empresa de teste para conceder acesso ao banco de dados da empresa de teste. Repita esta etapa para todos os usuários a quem você deseja conceder acesso ao banco de dados da empresa de teste. Para fazer isso, use a etapa a seguir.

    • Microsoft Dynamics GP: selecione Microsoft Dynamics GP, selecione Ferramentas, Configurar, selecione Sistema e, em seguida, selecione Acesso do Usuário.
  4. Faça um backup do banco de dados da empresa ativa.

    Se você estiver usando SQL Server Management Studio, siga estas etapas:

    1. Selecione Iniciar e selecione Programas.
    2. Aponte para o Microsoft SQL Server e selecione SQL Server Management Studio. A janela Conectar ao Servidor é aberta.
    3. Na caixa Nome do servidor, digite o nome da instância de SQL Server.
    4. Na lista Autenticação , selecione Autenticação SQL.
    5. Na caixa Nome de usuário , digite sa.
    6. Na caixa Senha , digite a senha para o usuário sa e selecione Conectar.
    7. Na seção Pesquisador de Objetos, expanda Bancos de Dados.
    8. Clique com o botão direito do mouse no banco de dados da empresa ao vivo, aponte para Tarefas e selecione Backup.
    9. Na área Destino , selecione Remover e, em seguida, selecione Adicionar.
    10. Na área Destino no disco , selecione o botão reticências .
    11. Localize o local em que você deseja criar o arquivo de backup, digite um nome para o arquivo de backup, como LIVE.bak e selecione OK.
    12. Selecione OK repetidamente até retornar à janela Banco de Dados de Backup.
    13. Selecione OK para iniciar o backup.
  5. Restaure o arquivo de backup da empresa ao vivo que você criou na etapa 4 no banco de dados da empresa de teste.

    Se você estiver usando SQL Server Management Studio, siga estas etapas:

    1. Selecione Iniciar e selecione Programas.

    2. Aponte para o Microsoft SQL Server e selecione SQL Server Management Studio. A janela Conectar ao Servidor é aberta.

    3. Na caixa Nome do servidor, digite o nome da instância de SQL Server.

    4. Na lista Autenticação , selecione Autenticação SQL.

    5. Na caixa Nome de usuário , digite sa.

    6. Na caixa Senha , digite a senha para o usuário sa e selecione Conectar.

    7. Na seção Pesquisador de Objetos, expanda Bancos de Dados.

    8. Clique com o botão direito do mouse no banco de dados da empresa de teste, aponte para Tarefas, aponte para Restauração e selecione Banco de Dados.

    9. Na área Fonte para Restauração , selecione De Dispositivo e selecione o botão reticências .

    10. Na área Local de Backup , selecione Adicionar.

    11. Localize o local em que salvou o arquivo de backup, selecione LIVE.bak arquivo e selecione OK.

    12. Selecione OK. Você retorna à janela Restaurar Banco de Dados.

    13. Na seção Selecionar conjuntos de backup para restaurar , selecione o arquivo de backup que você deseja restaurar.

    14. Na área Selecionar uma Página , selecione Arquivo.

    15. Na área Restaurar Arquivos de Banco de Dados como área, você precisará alterar o local desses dois arquivos do banco de dados Live para os arquivos .mdf e .ldf do banco de dados de teste. Por padrão, eles serão selecionados nos arquivos .mdf e .ldf do banco de dados ao vivo.

      Observação

      O nome do arquivo lógico reflete o nome do banco de dados ao vivo. Não altere o nome do arquivo lógico.

    16. Para alterar esses locais, selecione a Reticência (...) ao lado do campo local do arquivo.

    17. Navegue até o caminho que você observou na etapa 1, onde o banco de dados de teste foi criado.

    18. Realce o respectivo arquivo .mdf e selecione OK.

    19. Repita as etapas 16 a 18, selecione o arquivo .ldf e selecione OK.

    20. Selecione a guia Opções para selecionar a caixa substituir o banco de dados existente marcar.

    21. Selecione OK para retornar à janela Restaurar Banco de Dados

    Se você estiver usando o Microsoft Dynamics GP 10.0 ou posterior, siga estas etapas para copiar as permissões de segurança da empresa ao vivo para a empresa de teste:

    1. Entre no Microsoft Dynamics GP como o usuário sa.

    2. Selecione Microsoft Dynamics GP, aponte para Ferramentas, aponte para Instalação, aponte para Sistema e selecione Acesso do Usuário.

    3. Selecione um usuário apropriado e verifique se a caixa marcar para a nova empresa de teste está selecionada para indicar que o acesso é concedido.

      Observação

      Se você receber uma mensagem de erro ao selecionar uma empresa, exclua o usuário da pasta Usuários no novo banco de dados de teste no SQL Server Management Studio.

    4. Selecione Microsoft Dynamics GP, aponte para Ferramentas, aponte para Instalação, aponte para Sistema e selecione Segurança do Usuário.

    5. Na janela Configuração da Tarefa de Segurança, selecione o usuário que você deseja ter acesso à empresa de teste.

    6. Na lista Empresa , selecione a empresa ativa.

    7. Selecione Copiar, selecione a caixa marcar que está ao lado da empresa de teste e selecione OK.

      As permissões do usuário na empresa ao vivo são copiadas para a empresa de teste.

  6. Depois que o banco de dados da empresa dinâmica for restaurado por cima do banco de dados da empresa de teste, a empresa de teste contém referências que têm as mesmas informações COMPANYID e INTERID que a empresa live tem. Para refletir corretamente as informações da empresa de teste, execute o script a seguir em relação à empresa de teste no Analisador de Consultas ou em SQL Server Management Studio. Este script atualiza o COMPANYID e o INTERID no banco de dados de teste com as informações listadas no banco de dados do sistema SY01500 tabela para esta empresa de teste.

    if exists (select 1 from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = 'SY00100') begin
      declare @Statement varchar(850)
      select @Statement = 'declare @cStatement varchar(255)
    declare G_cursor CURSOR for
    select case when UPPER(a.COLUMN_NAME) in (''COMPANYID'',''CMPANYID'')
      then ''update ''+a.TABLE_NAME+'' set ''+a.COLUMN_NAME+'' = ''+ cast(b.CMPANYID as char(3)) 
      else ''update ''+a.TABLE_NAME+'' set ''+a.COLUMN_NAME+'' = ''''''+ db_name()+'''''''' end
    from INFORMATION_SCHEMA.COLUMNS a, '+rtrim(DBNAME)+'.dbo.SY01500 b
      where UPPER(a.COLUMN_NAME) in (''COMPANYID'',''CMPANYID'',''INTERID'',''DB_NAME'',''DBNAME'')
        and b.INTERID = db_name() and COLUMN_DEFAULT is not null
     and rtrim(a.TABLE_NAME)+''-''+rtrim(a.COLUMN_NAME) <> ''SY00100-DBNAME''
      order by a.TABLE_NAME
    set nocount on
    OPEN G_cursor
    FETCH NEXT FROM G_cursor INTO @cStatement
    WHILE (@@FETCH_STATUS <> -1)
    begin
      exec (@cStatement)
      FETCH NEXT FROM G_cursor INTO @cStatement
    end
    close G_cursor
    DEALLOCATE G_cursor
    set nocount off'
      from SY00100
      exec (@Statement)
    end
    else begin
      declare @cStatement varchar(255)
      declare G_cursor CURSOR for
      select case when UPPER(a.COLUMN_NAME) in ('COMPANYID','CMPANYID')
        then 'update '+a.TABLE_NAME+' set '+a.COLUMN_NAME+' = '+ cast(b.CMPANYID as char(3)) 
        else 'update '+a.TABLE_NAME+' set '+a.COLUMN_NAME+' = '''+ db_name()+'''' end
      from INFORMATION_SCHEMA.COLUMNS a, DYNAMICS.dbo.SY01500 b
        where UPPER(a.COLUMN_NAME) in ('COMPANYID','CMPANYID','INTERID','DB_NAME','DBNAME')
          and b.INTERID = db_name() and COLUMN_DEFAULT is not null
        order by a.TABLE_NAME
      set nocount on
      OPEN G_cursor
      FETCH NEXT FROM G_cursor INTO @cStatement
      WHILE (@@FETCH_STATUS <> -1)
      begin
        exec (@cStatement)
        FETCH NEXT FROM G_cursor INTO @cStatement
      end
      close G_cursor
      DEALLOCATE G_cursor
      set nocount off
    end
    

    Observação

    Se esse script falhar com um erro de chave duplicada, você deverá alterar manualmente as colunas INTERID e COMPANYID na tabela na qual você está recebendo o erro de chave primária na empresa de teste.

    Por exemplo: um erro de restrição de chave primária no PKRVLPD033. Para fazer uma pesquisa adequada para a tabela, o prefixo, PK, refere-se à Chave Primária e não faz parte do nome da tabela. Neste exemplo, a tabela que você deseja verificar é RVLPD033 para esse banco de dados.

    Observação

    Se você estiver usando recursos humanos, também deverá alterar o valor COMPANYCODE_I na tabela TAST0130. Para obter mais informações, consulte a seção NOTES na parte superior deste artigo.

  7. Verifique se o proprietário do banco de dados de teste é DYNSA. Para fazer isso, execute o seguinte script na empresa de teste no Analisador de Consultas ou em SQL Server Management Studio:

    sp_changedbowner 'DYNSA'
    
  8. Se você usar a funcionalidade de detalhamento nos relatórios integrados do SQL Server Reporting Services ou do Excel, deverá fazer o seguinte para atualizar os links do servidor para que os drilldowns funcionem após a alteração do banco de dados:

    • Verifique se todos saíram do Microsoft Dynamics GP e fechem todas as instâncias de SQL Server Management Studio
    • Em um computador em que o Dynamics GP está instalado, selecione Iniciar e, em seguida, aponte para Todos os Programas. Selecione Microsoft Dynamics e, em seguida, GP e selecione Manutenção de Banco de Dados.
    • Quando o utilitário for aberto, selecione ou insira a instância SQL Server em que os bancos de dados do Dynamics GP são armazenados. Se você estiver conectado como uma conta de domínio com direitos a essa instância SQL Server, poderá selecionar essa opção. Caso contrário, selecione Autenticação SQL e insira um nome de usuário e senha apropriados. Em seguida, selecione Avançar >>
    • Selecione Marcar Tudo para escolher cada um dos bancos de dados do Dynamics GP e selecione Avançar >>
    • Selecione o produto do Microsoft Dynamics GP e selecione Avançar >>
    • Selecione Funções e Procedimentos Armazenados e Exibições e selecione Avançar >>.
    • Examine a janela de confirmação e selecione Avançar >> para iniciar o processo.

    A empresa de teste agora deve ter uma cópia dos dados da empresa ativa e estar pronta para uso.

Referências

Para obter mais informações, consulte Configurar uma empresa de teste que tenha uma cópia de dados da empresa ao vivo usando o Microsoft Dynamics GP no MSDE 2000, SQL Server 2005 Express, SQL Server 2008 Express ou SQL Server 2012 Express.