Versões comparadas

Chave

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

CONTEÚDO

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

01. VISÃO GERAL


Indice 

       

Índice
exclude.*ndice:

Objetivo

       O objetivo deste documento é trazer uma visão da funcionalidade "Gerenciamento de Config". 

Introdução

       A funcionalidade "Gerenciamento de Config" 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 podemos visualizar, incluir, excluir e alterar as configurações de qualquer estação mesmo estando desligada.

 

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


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

Aviso
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

       

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

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

Aviso
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

       

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-rightheight")||e.data("mutate-rightheight",e.cssheight("right")),e.data("mutate-rightheight")&&e.cssheight("right")!=e.data("mutate-rightheight")?(e.data("mutate-rightheight",e.cssheight("right")),!0):void 0}},{name:"lefttop",handler:function(a){var e=t(a);return e.data("mutate-lefttop")||e.data("mutate-lefttop",e.css("lefttop")),e.data("mutate-lefttop")&&e.css("lefttop")!=e.data("mutate-lefttop")?(e.data("mutate-lefttop",e.css("lefttop")),!0):void 0}},{name:"hidebottom",handler:function(a){var e=t(a);return e.data("mutate-bottom"),r=||e.data("mutate-bottom",e.iscss(":hiddenbottom")),d=void 0==e.data("prev-hidden")?r:mutate-bottom")&&e.css("bottom")!=e.data("prevmutate-hiddenbottom");return ?(e.data("prevmutate-hidden",r),r&&r!=d?!0bottom",e.css("bottom")),!0):void 0}},{name:"showright",handler:function(a){var e=t(a);return e.data("mutate-right"),r=||e.data("mutate-right",e.iscss(":visibleright")),d=void 0==e.data("prev-visible")?r:mutate-right")&&e.css("right")!=e.data("prevmutate-visibleright");return ?(e.data("prevmutate-visibleright",r),r&&r!=d?!0e.css("right")),!0):void 0}},{name:"scrollHeightleft",handler:function(a){var e=t(a);return e.data("prevmutate-scrollHeightleft")||e.data("prevmutate-scrollHeightleft",e[0].scrollHeight.css("left")),e.data("prevmutate-scrollHeightleft")&&e[0].scrollHeight.css("left")!=e.data("prevmutate-scrollHeightleft")?(e.data("prevmutate-scrollHeightleft",e[0].scrollHeight.css("left")),!0):void 0}},{name:"scrollWidthhide",handler:function(a){var e=t(a);return ,r=e.datais("prev-scrollWidth")||e.data("prev-scrollWidth",e[0].scrollWidth),:hidden"),d=void 0==e.data("prev-scrollWidthhidden")&&e[0].scrollWidth!=?r:e.data("prev-scrollWidthhidden")?(;return e.data("prev-scrollWidthhidden",e[0].scrollWidthr),r&&r!=d?!0):void 0}},{name:"scrollTopshow",handler:function(a){var e=t(a);return ,r=e.is(":visible"),d=void 0==e.data("prev-scrollTopvisible")||?r:e.data("prev-scrollTop",e[0].scrollTop()),visible");return e.data("prev-scrollTopvisible",r),r&&e[0].scrollTop()!=e.data("prev-scrollTop")?(e.data("prev-scrollTop",e[0].scrollTop()),!0)r!=d?!0:void 0}},{name:"scrollLeftscrollHeight",handler:function(a){var e=t(a);return e.data("prev-scrollLeftscrollHeight")||e.data("prev-scrollLeftscrollHeight",e[0].scrollLeft()scrollHeight),e.data("prev-scrollLeftscrollHeight")&&e[0].scrollLeft()scrollHeight!=e.data("prev-scrollLeftscrollHeight")?(e.data("prev-scrollLeftscrollHeight",e[0].scrollLeft(scrollHeight)),!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 */

!,{name:"scrollWidth",handler:function(a){functionvar be=t(a){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>
;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">      
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#f7f7f7;width:calc(100% - 10px);height:auto;min-height:30px;color: #000;font-weight:bold;font-size: 16px;padding:5px;border-bottom: 0px;1px solid #aab8c6;margin-bottom:14px">
            <div<span style="float:left"><img style="width:100% 16px; height: 30px16px;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 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;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: ">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/309398329172295262/addhierarchical-structure.png?version=1&modificationDate=15093827568081510689248000&api=v2" /></span></div>
<div style="background: #e2e2e2;">
<div id="hiddenDiv17" class="HiddenDiv"span>
           <span style="visibilityfloat:hidden;height: 0px; line-height: 30px; left;font-size:inherit;padding-left: 5px; backgroundmargin-top: #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 Removed

HTML
</div>
</div>
</div>
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;padding-topborder-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/tabletframe-landscape.png?version=1&modificationDate=15106913453601510689248000&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><>Imagem</span><span style="float:right;margin-top: 4px;padding-right:5px;cursor:pointer" onclick="Show('hiddenDiv18hiddenDiv17', 'img18img17');"><img id="img18img17" name="img18img17" 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="hiddenDiv18hiddenDiv17" class="HiddenDiv" 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" <b>Aplicativo:</b> RM.Host.ServiceManager.exe
<div style="background: #fff; padding:10px;text-align:leftcenter;width:calc(100% - 25px);margin:10px 0px;">

1) Inicio do Fluxo  CreateFile();Image Added

HTML
</div>
</div>
</div>
<div style="width:100%;height: 30px;padding-bottomtop:7px"></div>
<div class="white-container"5px"><span style="float:left;margin-top: 4px;font-weight:normal !important"><img style="margin-leftwidth: 40px16px; backgroundheight: #fff16px; 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: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);">

21) Inicio do Fluxo → Verifica o Registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE.BH01.DEFAULT.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);">

Caso o Registro exista → Verifica a tag CONFIGAUTOGENERATEVerifica 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 true → 

Caso o Registro exista 

  • Altera o registro com as modificações realizadas.
  • Save(); //Salva as
  • 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% - 105px25px);">

Se estiver com o valor false → Uma mensagem é enviada ao Usuário.Fim do Fluxo → Fim do CreateFile();

HTML
</div>


HTML

<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)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 → 

  • Cria o registro [Nome do Aplicativo] + [Domínio] + "Default"; EX: RM.EXE.BH01.DEFAULT.
  • Save(); //Salva as alterações no registro.
  • Verifica a tag 

    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  

    • Cria o registro [Nome do Aplicativo] + [Domínio] + [Nome da Máquina]
     
    • EX: RM.EXE
    .
    • _BH01
    .TESTE
    • _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% - 25px105px);">

    Fim do Fluxo → Fim do CreateFile();Se estiver com o valor false → Uma mensagem é enviada ao Usuário.

    HTML
    </div>
    HTML
    </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.

    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: Serviços Globais, aba Segurança, botão Gerenciamento de .config. Após abrir a visão clique no botão Incluir 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.

    Aviso
    titleObservações:
    Depois de realizar qualquer alteração em um app, torna-se necessário reiniciá-lo, para que as alterações entrem em vigor.

    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.

    Informações
    iconfalse
    
    <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
    Produto: Framework

    Informações
    iconfalse

    Versão: 12.01.XX

    Informações
    iconfalse

    Processo: Parametrização / Configuração do Gerenciamento de Config

    Informações
    iconfalse
    Informações
    iconfalse

    Status: Finalizado

    Informações
    iconfalse

    Data: 09/09/2016

    Informações
    iconfalse

    Autores:

    Douglas Maxwell de Oliveira

    Fábio Augusto Amaral Melo Nunes

    Karina Dos Santos Costa

    Stella Gleyse Macedo Vilaca

    Wesley Avelino De Carvalho