DPServer - Serviço: mudanças entre as edições

De Base de Conhecimentos da DataPlus Sistemas
Ir para navegação Ir para pesquisar
Vinicius (discussão | contribs)
Sem resumo de edição
Vinicius (discussão | contribs)
Sem resumo de edição
Linha 40: Linha 40:
=== 2.3. Aplicação de Atualizações (Update de Versão) ===
=== 2.3. Aplicação de Atualizações (Update de Versão) ===


* '''O que fazer:''' Alimentar a pasta de atualização automática quando o Desenvolvimento liberar um pacote novo.
* Certificar-se de que a subpasta '''<code>Atualizacao</code>''' existe (caso não exista, criar exatamente com esse nome) dentro da pasta raiz do cliente (Ex: <code>C:\DpServer\Atualizacao</code>).
* '''Como fazer:'''
* Pegar os arquivos liberados pelo desenvolvimento (<code>.exe</code> e <code>.dlls</code>) e colá-los '''dentro''' dessa pasta <code>\Atualizacao</code>.
*# Certificar-se de que a subpasta '''<code>Atualizacao</code>''' existe dentro da pasta raiz do cliente (Ex: <code>C:\DpServer\Atualizacao</code>).
* O serviço detectará os arquivos novos, fará a substituição e reiniciará de forma 100% automatizada em até 5 minutos.
*# Pegar os arquivos liberados pelo desenvolvimento (<code>.exe</code> e <code>.dlls</code>) e colá-los '''dentro''' dessa pasta <code>\Atualizacao</code>.
*# O serviço detectará os arquivos novos, fará a substituição e reiniciará de forma 100% automatizada em até 5 minutos.


=== 2.4. Atualização de Banco de Dados (Scripts SQL) ===
== 🔍 3. GUIA DE RESOLUÇÃO DE PROBLEMAS ==
 
* '''O que fazer:''' Rodar alterações de schema antes de atualizar o serviço.
* '''Como fazer:''' Se o desenvolvimento informar que a nova versão exige um campo ou tabela nova, o Atendimento deve rodar o script <code>.sql</code> no SQL Server do cliente '''ANTES''' de colocar os arquivos na pasta <code>\Atualizacao</code>.
 
== 📋 3. FLUXO DE TRABALHO COMBINADO (WORKFLOW) ==
 
# '''[DEV]''' Corrige o chamado, incrementa a versão do Assembly, compila em Release.
# '''[DEV]''' Gera uma pasta contendo apenas o <code>.exe</code> e as <code>.dlls</code> alteradas (sem o <code>.config</code>) e notifica o Atendimento.
# '''[ATENDIMENTO]''' ''(Se houver script de banco)'' Executa o script SQL no cliente.
# '''[ATENDIMENTO]''' Copia os arquivos recebidos do Dev e cola na pasta <code>\Atualizacao</code> do cliente.
# '''[SISTEMA]''' O serviço se atualiza sozinho e grava o sucesso na tabela <code>dpServerLog</code>.
 
== 🔍 4. GUIA DE RESOLUÇÃO DE PROBLEMAS (Exclusivo Atendimento) ==
Se a atualização falhar ou o serviço não iniciar, o Atendimento deve seguir este roteiro de checagem:
Se a atualização falhar ou o serviço não iniciar, o Atendimento deve seguir este roteiro de checagem:


Linha 65: Linha 50:


* '''Causa 1:''' Os arquivos foram colocados na pasta errada. Certifique-se de que estão dentro da subpasta <code>\Atualizacao</code>.
* '''Causa 1:''' Os arquivos foram colocados na pasta errada. Certifique-se de que estão dentro da subpasta <code>\Atualizacao</code>.
* '''Causa 2:''' O Desenvolvimento esqueceu de mudar a versão do Assembly. Abra as propriedades do arquivo <code>.exe</code> enviado pelo Dev, vá na aba ''Detalhes'' e verifique se a versão é realmente maior do que a que já está rodando.
* '''Causa 2:''' O Desenvolvimento esqueceu de mudar a versão do Assembly. Abra as propriedades do arquivo <code>.exe</code> enviado pelo Dev, vá na aba ''Detalhes'' e verifique se a versão é realmente maior do que a que já está rodando.[[Arquivo:Propriedades - dpServerService.png|nenhum|miniaturadaimagem]]
 
=== Erro 1001 ao tentar reinstalar/desinstalar pelo painel? ===
 
* '''Causa:''' A pasta do sistema em <code>Program Files</code> foi deletada manualmente antes da desinstalação.
* '''Solução:''' Recrie a pasta exatamente com o nome que o erro aponta, cole qualquer cópia do <code>dpServerService.exe</code> lá dentro e tente desinstalar novamente pelo Painel de Controle.


=== Onde verificar o que aconteceu? ===
=== Onde verificar o que aconteceu? ===


# '''No SQL Server:''' Execute a consulta <code>SELECT TOP 50 * FROM dpServerLog ORDER BY DataHora DESC</code> para ver o histórico do serviço.
# '''Logs do dpServer:''' Para visualizar os logs, basta dar um duplo clique sobre o ícone de status.:[[Arquivo:Logs do DpServer - dpServerService.png|nenhum|miniaturadaimagem|847x847px]]
# '''No arquivo de texto (Se o banco cair):''' Abra o arquivo <code>dpServerApp.log</code> localizado diretamente na pasta raiz configurada do cliente
# '''No arquivo de texto:''' Abra o arquivo <code>dpServerApp.log</code> localizado diretamente na pasta raiz configurada do cliente[[Arquivo:Logs do DpServer .txt - dpServerService.png|nenhum|miniaturadaimagem|766x766px]]
# '''E-mail de avisos:''' Diferente dos outros logs, o log de e-mail será '''enviado''' somente quando ocorrerem erros no processamento:[[Arquivo:Logs do DpServer e-mail - dpServerService.png|nenhum|miniaturadaimagem|766x766px]]

Edição das 09h33min de 29 de maio de 2026

📖 MANUAL DE DEPLOY E ATUALIZAÇÃO: Matriz de Responsabilidades (dpServer)

Este documento define claramente o escopo de atuação da equipe de Desenvolvimento e da equipe de Atendimento/Suporte no processo de geração de versões, instalação e atualização do serviço dpServer.

💻 1. ESCOPO DO DESENVOLVIMENTO (Dev)

1.1. Alteração da Versão do Executável (Assembly)

  • Incrementar o número da versão física do arquivo sempre que houver modificações.
  • Como fazer: No Visual Studio, acesse as propriedades do projeto dpServerService -> Aba Aplicativo -> Botão Informações do Assembly... -> Incremente a Versão do assembly e Versão do arquivo (Ex: 1.0.0.0 para 1.1.0.0).
  • Nota: Nunca utilize a aba "Publicar" (ClickOnce), pois o serviço não lê essa numeração.

1.2. Compilação em Modo Release

  • Alterar o seletor do Visual Studio de Debug para Release e executar o comando Recompilar Solução (Rebuild Solution) dos dois projetos.

1.3. Compilação e Geração do Instalador (.msi)

O projeto possui um projeto de Setup integrado (usando Microsoft Visual Studio Installer Projects). Separar apenas os arquivos necessários para a atualização e disponibilizá-los para a equipe de Atendimento. ⚠️ REGRA: NUNCA inclua o arquivo dpServerService.exe.config (App.Config) no pacote de atualização. O envio deste arquivo destrói as configurações customizadas do cliente, pois é lá que fica configurado o caminho dos arquivos de atualização.

  1. Na janela do Solution Explorer, localize o projeto de instalação (geralmente chamado dpServerSetup ou Setup).
  2. Clique com o botão direito sobre o projeto dpServerSetup e selecione Compilar (Build) ou Rebuild.
  3. O Visual Studio gerará os arquivos de instalação na pasta de saída do setup.
  4. Navegue até a pasta física do projeto de setup (Ex: ...\dpServerService.Setup\Release\) e copie o arquivo dpServerService.Setup (e o setup.exe se houver).
  5. Disponibilize este arquivo .setup para a equipe de Atendimento.

🛠️ 2. ESCOPO DO ATENDIMENTO / SUPORTE

O Atendimento é responsável pela implantação no servidor do cliente, configuração dos ambientes, parametrização dos arquivos locais e aplicação de atualizações enviadas pelo desenvolvimento.

2.1. Primeira Instalação e Configuração do Ambiente

  • O que fazer: Instalar o serviço e parametrizar o arquivo (dpServerService.exe.config) de configuração de acordo com a realidade de cada cliente.
  • Como fazer: 1. Executar o instalador .setup padrão no servidor do cliente. 2. Abrir o arquivo dpServerService.exe.config com o Bloco de Notas na pasta de instalação. 3. Configurar a chave CaminhoArquivos apontando para a pasta raiz acordada (Ex: value="C:\DpServer\"). 4. Verificar se as credenciais do email estão corretas.

2.2. Gestão do Arquivo DpSettings.xml

  • O que fazer: Garantir que o arquivo de conexão com o banco de dados esteja no local correto determinado pela configuração (Disponibilizado na pasta de instalação).
  • Como fazer: Copiar o arquivo DpSettings.xml do cliente e colá-lo dentro da pasta raiz configurada na chave CaminhoArquivos (Ex: dentro de C:\DpServer\).

2.3. Aplicação de Atualizações (Update de Versão)

  • Certificar-se de que a subpasta Atualizacao existe (caso não exista, criar exatamente com esse nome) dentro da pasta raiz do cliente (Ex: C:\DpServer\Atualizacao).
  • Pegar os arquivos liberados pelo desenvolvimento (.exe e .dlls) e colá-los dentro dessa pasta \Atualizacao.
  • O serviço detectará os arquivos novos, fará a substituição e reiniciará de forma 100% automatizada em até 5 minutos.

🔍 3. GUIA DE RESOLUÇÃO DE PROBLEMAS

Se a atualização falhar ou o serviço não iniciar, o Atendimento deve seguir este roteiro de checagem:

O serviço não atualizou automaticamente?

  • Causa 1: Os arquivos foram colocados na pasta errada. Certifique-se de que estão dentro da subpasta \Atualizacao.
  • Causa 2: O Desenvolvimento esqueceu de mudar a versão do Assembly. Abra as propriedades do arquivo .exe enviado pelo Dev, vá na aba Detalhes e verifique se a versão é realmente maior do que a que já está rodando.

Onde verificar o que aconteceu?

  1. Logs do dpServer: Para visualizar os logs, basta dar um duplo clique sobre o ícone de status.:
  2. No arquivo de texto: Abra o arquivo dpServerApp.log localizado diretamente na pasta raiz configurada do cliente
  3. E-mail de avisos: Diferente dos outros logs, o log de e-mail será enviado somente quando ocorrerem erros no processamento: