Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Produto

CONTEÚDO

:Framework                                       Versão: 12.XX                   Processo:Parametrização / ConfiguraçãoSubprocesso:Gerenciamento de ConfigData da publicação:22/10/2014

 

  1. Visão Geral
  2. Exemplo de utilização

01. VISÃO GERAL


       A funcionalidade 

Objetivo

     A funcionalidade "Gerenciamento de Config" tem  tem por objetivo simplificar a maneira de administrar os arquivos de configurações das estações de trabalho, utilizando uma única interface. Com a unificação do arquivo de configuração poderemos podemos visualizar, incluir, excluir e alterar as configurações de qualquer estação mesmo ela estando desligada.

Requisitos

Linha de SoftwareVersãoData de LiberaçãoObservação
RM12.01.01 e posterioresOutubro/2014Para requisitos de software deve-se consultar a portabilidade RM: Portabilidade RM 12.01

Como Configurar

 

     Para utilizar esta configuração é necessário que exista uma pasta compartilhada em rede contendo o arquivo "Configuracaorm.config". Neste arquivo constará o cadastro do aplicativo desejado, utilizando as configurações do seu ambiente.

 

     Após disponibilizar o arquivo em rede é necessário ajustar os arquivos de configuração em cada máquina que será utilizada. Dentro do arquivo de configuração remova todo o contexto dentro de <appSettings> e substitua pela tag <add key="configpath" value="\\PastaCompartilhadaNaRede" />. O campo value deve ser preenchido com o diretório onde o arquivo foi compartilhado.

 

Exemplo de como ficarão os arquivos de configurações em cada máquina:

Máquina que não utiliza o Gerenciamento de configMáquina que utiliza o gerenciamento de config

<?xml version="1.0"?>
<configuration>
  <appSettings>
    <add key="JobServer3Camadas" value="false" />
    <add key="Port" value="8050" />
    <add key="Host" value="localhost" />
   <add key="LibPath" value="C:\totvs\CorporeRM\RM.Net" />
  </appSettings>
</configuration>

<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="CONFIGPATH" value="\\PastaCompartilhadaNaRede" />
</appSettings>
</configuration>

Após realizar estas configurações o ambiente está preparado para utilizar o arquivo unificado de configuração.

 

Informações
titleObservações:

     Caso o arquivo de configuração possua somente permissão de leitura, não será possível inserir novas estações no configurador. Será utilizado então as configurações default do arquivo compartilhado.

Como Funciona

     O arquivo "Configuracaorm.config" armazenará as configurações de cada aplicativo. Para cada primeiro acesso, será inserido um novo registro com as configurações padrões referente à aplicação acessada.

Registro Padrão

 

     É necessário que o arquivo "Configuracaorm.config" possua um registro padrão contendo as configurações desejadas, para cada aplicativo a ser utilizado.

Exemplo:

     Para o aplicativo RM.exe, executado no domínio BH01, será respeitada a seguinte identificação:

     RM.exe_BH01_DEFAULT onde default será o padrão de configuração para todos os novos registros de aplicativos RM.exe que estiverem do domínio BH01, respeitando a nomenclatura da opção Novo Registro.

Exemplo de Registro Padrão
<RM.EXE_BH01_DEFAULT>
   <appSettings>
     <add key="JOBSERVER3CAMADAS" value="True" />
     <add key="PORT" value="8050" />
     <add key="HOST" value="localhost" />
     <add key="LibPath" value="C:\RM.Net_Atual\Bin" />
     <add key="CONFIGAUTOGENERATE" value="True" />
  </appSettings>
</RM.EXE_BH01_DEFAULT>
Informações
titleObservações:

     Se não for necessário criar novos registros para cada estação basta alterar o valor da tag <add key="CONFIGAUTOGENERATE" value="True" />, de: "True" para: "False" no Registro padrão.

Novo Registro 

 

     O novo registro será inserido levando em consideração as configurações do Registro Padrão e respeitando a seguinte identificação:

Nome do aplicativo + _ + Domínio do usuário + _ + Nome da máquina

 

Exemplo:

Nome do aplicativo: RM.EXE

Domínio do usuário: BH01

Nome da máquina: Teste


A partir da versão 12.1.27, será apresentado um modelo diferente de Config. Global, em JSON. Veja a documentação.


Aviso
titleAtenção

Observação

Para a execução de TLS 1.1 e 1.2 no Windows 7 é necessário adicionar os registros abaixo, visto que são os protocolos de comunicação ativos atualmente e que por padrão não são ativos na versão Windows7:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000

Arquivo disponível para download: Arquivo.reg


02. EXEMPLO DE UTILIZAÇÃO

INSTALADORES


       Instruções:

       1. Acesse a Central de Download em www.totvs.com/suporte
       2. Faça o login, com seu Email e Senha.
       3. Na barra de menu superior, clique em DOWNLOAD.
       4. No boxe “Central de Downloads” pesquise pela versão da biblioteca RM.
 
       Pronto! Todos os instaladores correspondentes do filtro aplicado no passo 4 serão disponibilizados para download. Para iniciar o download do arquivo, clique na figura com uma seta para baixo localizada na primeira coluna da grid ou no link da versão selecionada.



       Escolha o método mais apropriado de download e salve o arquivo na pasta desejada.
    

Informações
Para facilitar na busca do arquivo, utiliza-se o campo “Filtro” da grid de download, digitando o nome do arquivo ou parte do mesmo para pesquisa/download.

    Requisitos:

  • Linha de Software: RM
  • Versão: 12.01.01 e posteriores
  • Data de Liberação: Outubro/2014
  • Observação: Para requisitos de software consulte nossa portabilidade: Portabilidade RM 12.01

 

COMO CONFIGURAR


       Para utilizar esta configuração é necessário o compartilhamento de uma pasta em rede contendo o arquivo "Configuracaorm.config". Neste arquivo constará o cadastro do aplicativo desejado, utilizando as configurações desejadas para o seu ambiente.                           

Arquivo Configuracaorm.configArquivo exemplo: RM.Host.exe.config
View file
nameConfiguracaorm.config
height150
View file
nameRM.Host.exe.config
height150


       Disponibilizado o arquivo em rede torna-se necessário ajustar os arquivos de conexão (RM.Host.exe.config, RM.Host.Service.exe.config) e aplicações (RM.exe.Config, RMBis.exe.config, RMLabore.exe.config etc) em cada estação utilizada.       

       Dentro do arquivo de configuração, em cada estação, remova todo o contexto que esteja dentro de <appSettings> e substitua por tag <add key="configpath" value="\\PastaCompartilhadaNaRede" />. O tag ConfigPath deve ser preenchido com o diretório onde o arquivo "Configuracaorm.config" foi compartilhado.

       Abaixo um exemplo de como ficarão os arquivos de configurações em cada estação:

Máquina que não utiliza o Gerenciamento de configMáquina que utiliza o gerenciamento de config
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="JobServer3Camadas" value="false" />
    <add key="Port
Como ficará o novo registro no arquivo:<RM.EXE_BH01_Teste>
   <appSettings>
      <add key="JOBSERVER3CAMADAS" value="True" />
      <add key="PORT
" value="8050" />
       
    <add key="
HOST
Host" value="localhost" />
     
   <add key="LibPath" value="C:\totvs\CorporeRM\RM.Net
_Atual\Bin" />
       
" />
</appSettings>
</configuration>
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="
CONFIGAUTOGENERATE
CONFIGPATH" value="
True
\\PastaCompartilhadaNaRede" />
  
</appSettings>
</
RM.EXE_BH01_Teste>
configuration>


       Após realizar estas configurações o ambiente está preparado para utilizar o arquivo unificado de configuração.

Aviso
title
Informações
titleObservações:
     Caso o arquivo de configuração possua somente permissão de somente leitura, não será possível inserir novas estações no configurador, sendo . Será utilizado então as configurações existentes no default do arquivo compartilhado.

COMO FUNCIONA

       

Como Utilizar

 

     Para utilizar esta funcionalidade o usuário precisa ter permissão no item "Gerenciamento de .Config" em um perfil do módulo Serviços Globais.
Image Removed

Com as devidas permissões de acesso o usuário deve acessar o menu Image Removed , aba Image Removed , botão Image Removed.

 

Após abrir a visão clique no botão Incluir Image Removed para que seja criado um novo config.

     No exemplo abaixo foi cadastrado o config da aplicação RM.EXE para máquina BHD0002477 que está no domínio BH01.

Image Removed

Para incluir novas tag's no config basta clicar no ícone Image Removed e escolher qual deseja adicionar. Para maiores informações sobre tag's de configuração acesse: Parâmetros de Configuração. Para excluir uma das tag's basta selecionar a desejada e clicar no Ícone Image Removed.

 

Informações
titleObservações:

     Após realizar qualquer alteração em um app, torna-se necessário reiniciá-lo, para que as alterações entrem em vigor.

 

 

Status do Documento:Em produçãoData:11/03/2016Versão:0.3Versão Anterior:0.2Autores:

Douglas Maxwell de Oliveira

Fábio Augusto Amaral Melo Nunes

Karina Dos Santos Costa

Wesley Avelino De Carvalho

Instaladores:Instruções:
1. Acesse a Central de Download em www.totvs.com/suporte
2. Faça o login, com seu Email e Senha.
3. Na barra de menu superior, clique em DOWNLOAD.
4. No boxe “Central de Downloads” coloque as informações nos campos abaixo:
        Linha:    RM
        Versão:  RM 12.XX
        
    Pronto! Todos os instaladores correspondentes do filtro aplicado no passo 4 serão disponibilizados para download. Para iniciar o download do arquivo, clique na figura com uma seta para baixo localizada na primeira coluna da grid ou no link da versão selecionada.
    Escolha o método mais apropriado de download e salve o arquivo na pasta desejada.
    
Dica: Para facilitar na busca do arquivo, utiliza-se o campo “Filtro” da grid de download, digitando o nome do arquivo ou parte do mesmo para pesquisa/download.
Informações
titlePara maiores informações:

Consulte o WikiHelp TOTVS

Image Removed COMUNIDADE  @FRAMEWORK

Canais de Atendimento:

Chamado: Através do Portal Totvs www.suporte.totvs.com.br

Telefônico: 4003-0015 Escolhendo as opções 2 – (Software), 2 – (Suporte Técnico), 3 – (RM), 9 – (Demais Áreas), 4 – (BI) e 3 –  (Gerador de Relatórios e Planilha).
HTML
<script type="text/javascript" language="javascript">
/* @license ! jQuery-mutate - v0.0.2 - 
* Licensed under the MIT license
* http://www.opensource.org/licenses/mit-license.php
* Date: 2015-04-19 */

!function(t){mutate_event_stack=[{name:"width",handler:function(a){var e=t(a);return e.data("mutate-width")||e.data("mutate-width",e.width()),e.data("mutate-width")&&e.width()!=e.data("mutate-width")?(e.data("mutate-width",e.width()),!0):!1}},{name:"height",handler:function(a){var e=t(a);return e.data("mutate-height")||e.data("mutate-height",e.height()),e.data("mutate-height")&&e.height()!=e.data("mutate-height")?(e.data("mutate-height",e.height()),!0):void 0}},{name:"top",handler:function(a){var e=t(a);return e.data("mutate-top")||e.data("mutate-top",e.css("top")),e.data("mutate-top")&&e.css("top")!=e.data("mutate-top")?(e.data("mutate-top",e.css("top")),!0):void 0}},{name:"bottom",handler:function(a){var e=t(a);return e.data("mutate-bottom")||e.data("mutate-bottom",e.css("bottom")),e.data("mutate-bottom")&&e.css("bottom")!=e.data("mutate-bottom")?(e.data("mutate-bottom",e.css("bottom")),!0):void 0}},{name:"right",handler:function(a){var e=t(a);return e.data("mutate-right")||e.data("mutate-right",e.css("right")),e.data("mutate-right")&&e.css("right")!=e.data("mutate-right")?(e.data("mutate-right",e.css("right")),!0):void 0}},{name:"left",handler:function(a){var e=t(a);return e.data("mutate-left")||e.data("mutate-left",e.css("left")),e.data("mutate-left")&&e.css("left")!=e.data("mutate-left")?(e.data("mutate-left",e.css("left")),!0):void 0}},{name:"hide",handler:function(a){var e=t(a),r=e.is(":hidden"),d=void 0==e.data("prev-hidden")?r:e.data("prev-hidden");return e.data("prev-hidden",r),r&&r!=d?!0:void 0}},{name:"show",handler:function(a){var e=t(a),r=e.is(":visible"),d=void 0==e.data("prev-visible")?r:e.data("prev-visible");return e.data("prev-visible",r),r&&r!=d?!0:void 0}},{name:"scrollHeight",handler:function(a){var e=t(a);return e.data("prev-scrollHeight")||e.data("prev-scrollHeight",e[0].scrollHeight),e.data("prev-scrollHeight")&&e[0].scrollHeight!=e.data("prev-scrollHeight")?(e.data("prev-scrollHeight",e[0].scrollHeight),!0):void 0}},{name:"scrollWidth",handler:function(a){var e=t(a);return e.data("prev-scrollWidth")||e.data("prev-scrollWidth",e[0].scrollWidth),e.data("prev-scrollWidth")&&e[0].scrollWidth!=e.data("prev-scrollWidth")?(e.data("prev-scrollWidth",e[0].scrollWidth),!0):void 0}},{name:"scrollTop",handler:function(a){var e=t(a);return e.data("prev-scrollTop")||e.data("prev-scrollTop",e[0].scrollTop()),e.data("prev-scrollTop")&&e[0].scrollTop()!=e.data("prev-scrollTop")?(e.data("prev-scrollTop",e[0].scrollTop()),!0):void 0}},{name:"scrollLeft",handler:function(a){var e=t(a);return e.data("prev-scrollLeft")||e.data("prev-scrollLeft",e[0].scrollLeft()),e.data("prev-scrollLeft")&&e[0].scrollLeft()!=e.data("prev-scrollLeft")?(e.data("prev-scrollLeft",e[0].scrollLeft()),!0):void 0}}]}(jQuery);
HTML
/* @license ! jQuery-mutate - v0.0.1 - 
* Licensed under the MIT license
* http://www.opensource.org/licenses/mit-license.php
* Date: 2015-04-19 */

!function(a){function b(){var c=mutate;"undefined"!=c.event_stack&&c.event_stack.length&&a.each(c.event_stack,function(a,b){mutate.add_event(b)}),c.event_stack=[],a.each(c.stack,function(b,d){a(d.selector).each(function(a,b){c.events[d.event_name](b)===!0?d.callback&&d.callback(b,d):d.false_callback&&d.false_callback(b,d)})}),setTimeout(b,mutate.speed)}mutate={speed:100,event_stack:mutate_event_stack,stack:[],events:{},add_event:function(a){mutate.events[a.name]=a.handler},add:function(a,b,c,d){mutate.stack[mutate.stack.length]={event_name:a,selector:b,callback:c,false_callback:d}}},b(),a.fn.extend({mutate:function(){var b=!1,c=arguments[1],d=this,e=arguments[2]?arguments[2]:function(){};return"extend"==arguments[0].toLowerCase()?(mutate.add_event(c),this):(a.each(a.trim(arguments[0]).split(" "),function(a,f){b=f,mutate.add(b,d,c,e)}),this)}})}(jQuery);
</script>
HTML
<style type="text/css">
.expand-container{
margin-top:5px !important;
font-weight: normal !important;
}

.expand-control{
margin-bottom: 5px !important;
}

pre{
white-space: inherit !important;
}

table tr:nth-child(odd), table tr:nth-child(odd) > *{
   background: transparent !important;
border: 0 !important;
}

.pdl .codeContent .gutter{
    border-right: 1px solid #ccc !important;
}

.wiki-content .innerCell {
    overflow-y: hidden;
}

.HiddenDiv .confluence-information-macro {
    width: calc(100% - 25px);
    background: #fff !important; 
    border: 0 !important;
    -moz-border-radius: 0px !important;
    -webkit-border-radius: 0px !important;
    border-radius: 0px !important;
    color: #333;
    margin: 10px 0 1em 0;
    min-height: 20px;
    padding: 10px;
    position: relative;
}

.HiddenDiv .confluence-information-macro .confluence-information-macro pre{
    display: none;
}
.HiddenDiv .wiki-content a:link, .HiddenDiv .wiki-content a, .HiddenDiv .tab-nav-link, .HiddenDiv .current{
     color: #000 !important; 
}

.wiki-content a:link {
    color: #000 !important;
}

.lastDiv + pre{
    font-family: inherit;
}

.white-container{
    -moz-box-shadow: 2px 2px 2px #aaa;
    -webkit-box-shadow: 2px 2px 2px #aaa;
    box-shadow: 2px 2px 2px #aaa;
}

.confluence-embedded-file-wrapper .confluence-embedded-image{
    max-width: 100% !important;
    max-height: 100%;
}

</style>
HTML
<div style="border:1px solid #aab8c6;padding:5px;-moz-border-radius: 5px;-webkit-border-radius: 5px;border-radius: 5px;background: #f7f7f7">      
      <div style="background:#f7f7f7;width:calc(100% - 10px);height:30px;color: #000;font-weight:bold;font-size: 16px;padding:5px;border-bottom: 1px solid #aab8c6;margin-bottom:14px">
           <span style="float:left"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/thumbnails/172295262/cogwheel-arrow.png?version=1&modificationDate=1510689248000&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px">Fluxo de Execução <b>(Gerenciador de .Config)</b></span>
     </div>
<div style="border: 1px solid #aab8c6">      
       <div style="background:#f7f7f7;width:calc(100% - 10px);height:30px;color: #000;font-weight:bold;font-size: 16px;padding:5px;border-bottom: 0px;">
           <span style="float:left;margin-top: 4px"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/attachments/172295262/hierarchical-structure.png?version=1&modificationDate=1510689248000&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px;margin-top: 3px">Diagrama do Fluxo de Execução</span>
      </div>
      <div style="background:#f0f0f0;width:calc(100% - 10px);height:auto;min-height:30px;color: #000;font-weight:bold;font-size: 16px;padding:5px;border-bottom: 0px;">
           <div style="width:100%;height: 30px;border-bottom:1px solid #d0d0d0;padding-bottom:5px;"><span style="float:left;margin-top: 4px;font-weight:normal !important"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/attachments/172295262/frame-landscape.png?version=1&modificationDate=1510689248000&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px;margin-top: 4px;font-weight:normal !important">Imagem</span><span style="float:right;margin-top: 4px;padding-right:5px;cursor:pointer" onclick="Show('hiddenDiv17', 'img17');"><img id="img17" name="img17" style="width: 16px; height: 16px; margin-top: 3px" src="/download/attachments/309398329/add.png?version=1&modificationDate=1509382756808&api=v2"></span></div>
<div style="background: #e2e2e2;">
<div id="hiddenDiv17" class="HiddenDiv" style="visibility:hidden;height: 0px; line-height: 30px; padding-left: 5px; background: #e2e2e2;font-weight:normal">
<b>Aplicativo:</b> RM.Host.ServiceManager.exe
<div style="background: #fff; padding:10px;text-align:center;width:calc(100% - 25px);margin:10px 0px;">

Image Added

HTML
</div>
</div>
</div>
<div style="width:100%;height: 30px;padding-top:5px"><span style="float:left;margin-top: 4px;font-weight:normal !important"><img style="width: 16px; height: 16px; margin-top:3px" src="/download/attachments/172295262/tablet.png?version=1&modificationDate=1510691345360&api=v2" /></span>
           <span style="float:left;font-size:inherit;padding-left:5px;margin-top: 4px;font-weight:normal !important">Descrição do Diagrama</b></span><span style="float:right;margin-top: 4px;padding-right:5px;cursor:pointer" onclick="Show('hiddenDiv18', 'img18');"><img id="img18" name="img18" style="width: 16px; height: 16px; margin-top: 3px" src="/download/attachments/309398329/add.png?version=1&modificationDate=1509382756808&api=v2"></span></div>
<div style="background: #e2e2e2;">
<div id="hiddenDiv18" style="visibility:hidden;height: 0px; line-height: 30px; padding-left: 5px; background: #e2e2e2;font-weight:normal">
O fluxo abaixo refere-se à criação e a alteração dos registros no Configurador Global.
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

1) Inicio do Fluxo  CreateFile();

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Verifica o Registro → [Nome do Aplicativo] + [Domínio] + [Nome da Máquina]; EX: RM.EXE_BH01_TESTE.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Caso o Registro exista 

  • Altera o registro com as modificações realizadas.
  • Save(); //Salva as alterações no registro.
HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

HTML
</div>


HTML
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

2) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → Verifica a tag CONFIGAUTOGENERATE.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.
  • Save(); //Salva as alterações no registro.
HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor false → Uma mensagem é enviada ao Usuário.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

HTML
</div>
<p><strong><br/></strong></p>
HTML
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

3) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo - Principal (Sem múltiplos hosts)] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

HTML
</div>
<p><strong><br/></strong></p>
HTML
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

4) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo] + "Todos" + "Default"; EX: RM.EXE_TODOS_DEFAULT.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

HTML
</div>
<p><strong><br/></strong></p>
HTML
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

5) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo - Principal (Sem múltiplos hosts)] + "Todos" + "Default"; EX: RM.EXE_TODOS_DEFAULT.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

HTML
</div>
<p><strong><br/></strong></p>
HTML
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

6) Inicio do Fluxo → Verifica o Registro "RM" + "Todos" + "Default"; EX: RM_TODOS_DEFAULT.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 40px; background: #fff; padding:10px;text-align:left;width:calc(100% - 65px);">

Caso o Registro exista → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE_BH01_DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag CONFIGAUTOGENERATE.
HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor true → Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina] EX: RM.EXE_BH01_TESTE.

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="margin-left: 80px; background: #fff; padding:10px;text-align:left;width:calc(100% - 105px);">

Se estiver com o valor false → Levanta uma exceção ao Usuário (REGISTERNOTFOUND).

HTML
</div>
<div style="padding-bottom:7px"></div>
<div class="white-container" style="background: #fff; padding:10px;text-align:left;width:calc(100% - 25px);">

Fim do Fluxo → Fim do CreateFile();

HTML
</div>
</div>
</div>
</div>
</div>
</div>
HTML
<script type="text/javascript" language="javascript">

Show = function(divName, imgName){
window["currentElement"] = divName;
if(typeof divName === "string"){
	if(document.getElementById(divName).offsetHeight < 2){
     $("#" + divName).animate({height: $("#" + divName).get(0).scrollHeight + 7});
     $("#" + divName).css("visibility", "visible")
     $("#" + imgName).attr('src', '/download/attachments/309398329/remove.png?version=1&modificationDate=1509386912062&api=v2');  
     $(".HiddenDiv .tab-nav-link").on("click", function(){
          window["currentElement"] = $(this).parents().find(".HiddenDiv").attr("id");
     });  
	 $(".HiddenDiv .confluence-information-macro").mutate('height',function (element,info){
          this.selector.each(function(index, element){
             if($(this).parent().attr("id") == window["currentElement"])
             $(this).parent().height($(this).outerHeight() + 61);
          });		
     });
    }
    else{
     $("#" + divName).animate({height: "0px"});
     $("#" + divName).css("visibility", "hidden")
     $("#" + imgName).attr('src', '/download/attachments/309398329/add.png?version=1&modificationDate=1509382756808&api=v2');
    }
}
}
</script>


O arquivo "Configuracaorm.config" armazenará as configurações de cada aplicativo. Para cada primeiro acesso, será inserido um novo registro com as configurações padrões referente à aplicação acessada.

Informações
iconfalse
Deck of Cards
idRegistros
Card
idRegistro Padrão
labelRegistro Padrão
titleRegistro Padrão

       É necessário que o arquivo "Configuracaorm.config" possua um registro padrão contendo as configurações desejadas, para cada aplicativo a ser utilizado.

        Exemplo:

     Para o aplicativo RM.exe, executado no domínio BH01, será respeitada a seguinte identificação:

     RM.exe_BH01_DEFAULT onde default será o padrão de configuração para todos os novos registros de aplicativos RM.exe que estiverem do domínio BH01, respeitando a nomenclatura da opção Novo Registro.

     Exemplo de Registro Padrão:

Bloco de código
languagexml
<RM.EXE_BH01_DEFAULT>
   <appSettings>
     <add key="JOBSERVER3CAMADAS" value="True" />
     <add key="PORT" value="8050" />
     <add key="HOST" value="localhost" />
     <add key="LibPath" value="C:\RM.Net_Atual\Bin" /> 
     <add key="CONFIGAUTOGENERATE" value="True" /> 
  </appSettings>
</RM.EXE_BH01_DEFAULT>
Aviso
titleObservações:
Se não for necessário criar novos registros para cada estação basta alterar o valor da tag <add key="CONFIGAUTOGENERATE" value="True" />, de: "True" para: "False" no Registro padrão.
Aviso
titleObservações:

Lembrando que o CONFIGAUTOGENERATE cria um novo registro baseado nas estações de trabalho, outros registros podem ser criados independente da tag estar "true" ou "false", como um exemplo, o registro RM.EXE.BH01.DEFAULT.

Alterar o valor do CONFIGAUTOGENERATE, aplica-se apenas aos registros baseados nas estações de trabalho. Por exemplo, alterando o valor de "true" para "false" fará com que apenas os registros das estações de trabalho não sejam criados.

Card
idNovo Registro
labelNovo Registro
titleNovo Registro

    novo registro será inserido levando em consideração as configurações do Registro Padrão e respeitando a seguinte identificação:

                     Nome do aplicativo + _ + Domínio do usuário + _ + Nome da máquina        

    Exemplo

  • Nome do aplicativo: RM.EXE
  • Domínio do usuário: BH01
  • Nome da máquina: Teste

     Como ficará o novo registro no arquivo:

Bloco de código
languagexml
<RM.EXE_BH01_Teste>
   <appSettings>
      <add key="JOBSERVER3CAMADAS" value="True" />
      <add key="PORT" value="8050" />
        <add key="HOST" value="localhost" />
      <add key="LibPath" value="C:\RM.Net_Atual\Bin" /> 
        <add key="CONFIGAUTOGENERATE" value="True" /> 
   </appSettings>
</RM.EXE_BH01_Teste>
Aviso
titleObservações:
Caso o arquivo de configuração possua permissão de somente leitura, não será possível inserir novas estações no configurador, sendo utilizado as configurações existentes no arquivo.

 

Informações
iconfalse

Versão: 12.01.XX