Versões comparadas

Chave

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

...

Painel
titleinstalação e habilitação
Deck of Cards
iddeck principal
Card
labelpasso 1


Atualizando os arquivos Client MeuRH


Foi baixado o arquivo: 18-03-06-ARQUIVOS_PORTAL_MEURH_12.1.17.ZIP

 

  • Após baixar os arquivos e descompactar, será obtida a seguinte estrutura de arquivos: 

 


  • Dentro desse arquivo compactado encontramos a pasta "PortalRHUnificado", contendo os WebFiles utilizados no app MeuRH, essa pasta pode ser descompactada e os arquivos remanejados para qualquer diretório dentro do seu ambiente Protheus, preferencial pode ser colocado dentro do ProtheusData na pasta "WEB".
  • O caminho criado será posteriormente utilizado dentro do seu appserver.ini.



Confirmando a associação do usuário do Portal Gestão do Capital Humano

  • Durante o processo de configuração do Portal Padrão do RH GCH (Gestão do Capital Humano) foi necessário realizar a associação de um usuário do portal ao cadastro do participante (tabela RD0), como demonstrado no campo da imagem abaixo. Todavia, é importante realizar um relacionamento complementar para a utilização do aplicativo móvel MeuRH.



  • No cadastro do "Usuário do portal" (SIGATCF/Atualizações/Configurações/Usuários/Genéricos) que foi associado ao cadastro do participante, na tela acima, existe um campo denominado "Usuário int.".

    Caso ainda não tenha sido feito nenhum relacionamento/preenchimento desse campo com o cadastro de usuário (responsável em realizar o login no smartclient), será necessário atualizar esse cadastro e criar esse relacionamento com um usuário.

    É fundamental a execução desse processo de relacionamento, pois o serviço REST utiliza esse usuário do Protheus para a geração do token de autenticação e permissão de acesso aos serviços publicados.

    Informações
    titleperfil de usuário

    É importantíssimo que esse usuário relacionado NÃO possua perfil de administrador, devendo ser um usuário comum de acesso ao smartclient. Isso é uma restrição de segurança das funções de framework para a geração dos tokens de acesso.

    Como sugestão, pode-se criar um usuário especifico para ser utilizado nessa funcionalidade!



  • Exemplo abaixo do cadastro de usuários do protheus (SIGATCF/Miscelanea/Usuários) utilizado no relacionado com o usuário do portal. .


Card
labelpasso 2


Configurando o serviço REST via APWebWizard


O APWebWizard é responsável por fazer as atualizações no seu arquivo "appserver.ini" de acordo com sua necessidade para a criação dos serviços.
Para iniciarmos, conforme imagem abaixo, realize a chamada via smartclient para o seu ambiente desejado:


1) Inicialmente, caso ainda não possua um serviço HTTP, precisaremos cria-lo, como no exemplo da imagem abaixo:

Informando uma pasta do servidor com o caminho para os serviços Web, a porta do HTTP e o ambiente a ser utilizado.
É importante selecionar também "Protocolo habilitado" para permitir ao servidor responder as requisições que chegarem!



2) Nessa fase vamos habilitar o serviço REST no server Protheus:

Escolha a opção REST do menu, em seguida o item HTTPV11, e clique no botão "editar configurações".
Conforme imagem abaixo, devemos configurar o socket com a porta do REST.

É importante selecionar o item "habilitado" para permitir ao servidor responder as requisições que chegarem!
Também é importante, marcar o item "Autenticação", para que os acessos sejam validados, visto que por padrão todos os serviços REST da TOTVS são públicos.

Na parte inferior da imagem, devemos informar as configurações para a montagem da URL que estará disponível com a relação dos serviços a serem consumidos.
Sendo possível configurar uma URL diferente para cada empresa, nesse momento devemos sempre utilizar a palavra "/rest" seguido com o ID da sua empresa. Por exemplo, na montagem desse exemplo, a minha empresa é "T1", ou seja, meus dicionários são "SX2T10", "SX3T10", etc..

caso sugerimos utilizar o nome da URL com o complemento da empresa para apoiar na identificação. No exemplo da imagem, como nossa empresa de teste é T1, o novo da URL seria "/restT1"

Na segunda imagem desse item 2, podemos configurar as informações sobre o certificado SSL, lembrando que para esse caso também deverá ser configurado um server HTTPs para que possa responder das solicitações REST em SSL. Continuando nessa segunda imagem, devemos informar outros parâmetros:

    • "Habilitar Cors" deve estar marcado, assim como "Allow Origin" preenchido com '*' (asterisco) para permitir que o server possa responder requisições de outros servidores.
    • "Endpoints publicos" deverá estar preenchido com as informações 'fwjwt/refresh_token,auth' , pois são os endpoints iniciais responsáveis pela autenticação e geração do token de acesso aos serviços.

Após clicar no botão de confirmação, deverá ser possível visualizar a terceira imagem final da sequencia desse item 2 de configuração!

Uma dica interessante:

    • É possível utilizar um servidor Protheus (AppServer) apenas com os serviços REST, sem a necessidade de configurar os outros jobs e webservices do padrão soap referente ao portal tradicional Gestão do Capital Humano. O aplicativo MeuRH utiliza somente serviços REST em sua utilização, sendo assim, permite a flexibilidade da criação de servidores separados, podendo, caso necessário, reinicializar um server sem prejudicar o outro!





3) Nessa fase vamos criar um processo comum que criará um job para inicializar o serviço do REST criado anteriormente:

Como na imagem abaixo, devemos informar:

    • O nome para o JOB.
    • O ambiente relacionado para o serviço REST.
    • Informar o nome da função que inicializa o serviço, obrigatoriamente: "HTTP_START"
    • Marcar a opção "Habilitar job no start do servidor Protheus"

Abaixo a imagem do Job criado, após a confirmação no botão finalizar!


Como resultado dessa configuração, encontraremos as seguintes tags no arquivo "appserver.ini":

[HTTPV11]
Enable=1
Sockets=HTTPREST

[HTTPREST]
Port=8103
URIs=HTTPENV
SECURITY=1

[HTTPENV]
URL=/restT1
PrepareIn=T1
Instances=2,5,1,1
ENVIRONMENT=12.1.17
CORSEnable=1
AllowOrigin=*
Public=fwjwt/refresh_token,auth

[HTTPJOB]
MAIN=HTTP_START
ENVIRONMENT=12.1.17

[ONSTART]
jobs=HTTPJOB



4) Após essas configurações do serviço REST, podemos iniciar o server, e identificar na imagem abaixo a inicialização dos serviços:



5) Para validar se o seu serviço REST está sendo carregado adequadamente, verifique se é possível realizar o carregamento dos serviços via browser:

Observe que utilizamos a porta 8103 do REST criada anteriormente, assim o nome da URL definida "/restT1".




Abaixo exemplo do properties.json padrão:

{
	"ERP": 3,
	"PROPS": {
		"baseUrl": "http://127.0.0.1:8103/restT1",
		"rootContext": "/T1/" },
	
	"EXTERNAL_APP_RESPONSE": [
		{
			"id": "tfs",
			"nameShort": {
				"pt": "Financeiro",
				"en": "Financial"
			},
			"nameLong": {
				"pt": "Serviços Financeiros",
				"en": "Financial Services"
			},
			"url": "https://totvs.myconsig.com.br/tokens/{token}",
			"urlStaging": "https://staging-totvs.myconsig.com.br/tokens/{token}",
			"icon": "ico-money",
			"enabled": false,
			"grouperId": "paymentSubMenu",
			"useStagingEnvironment": false
		}
	]
}
Onde a baseUrl padrão e o rootContext devem estar configurados de acordo com seu ambiente.


Card
labelpasso 3


Configurando o serviço do aplicativo MeuRH


1) Nessa etapa precisamos complementar o seu arquivo "appserver.ini" com as configurações relativas ao serviço MeuRH:

Nesse caso estamos criando uma '[sessão]' que será utilizada para o redirecionamento dos arquivos clientes do MeuRH e realizando a configuração do ambiente utilizado. Você poderá ter uma URL para cada empresa separada dentro da sua estrutura.

O endereço de exemplo "127.0.0.1" poderá ser um endereço para utilização apenas na sua rede local interna ou um endereço para acesso externo, assim permitindo que o aplicativo funcione quando os colaboradores de sua empresa estivem conectado fora de sua rede corporativa.

A Porta de exemplo "8081" corresponde a sua tag "Port" configurada na sessão "HTTP" que já deverá existir no seu "appserver.ini".
Realizamos essa configuração no passo anterior dessa página!.

Como complemento do endereço raiz (IP + Porta HTTP), precisaremos informar um contexto. A origem desse contexto é o sufixo da URL do serviço REST definido no wizard observe abaixo:

  • A URL do serviço REST configurado foi "/restT1", dividiremos essa URL em 2 partes:
    • O prefixo "/rest"
    • O sufixo "T1"

Nesse caso, o complemento do endereço rais será "/T1".
Essa informação do contexto é importante para que o aplicativo consiga realizar a montagem correta da URL do serviço REST para a realização das solicitações ao servidor!

[127.0.0.1:8081/T1]
ENABLE=1
PATH=C:\TOTVS\Protheus\Protheus_Data\Web\PortalRHUnificado
ENVIRONMENT=MeuEnv12117
INSTANCENAME=MeuRHT1
DEFAULTPAGE=index.html


Agora criaremos mais essa sessão abaixo no seu arquivo "appserver.ini":

Na sessão "RESTCONFIG" são criadas tags utilizadas para o projeto MeuRH Protheus:

    • A tag "restPort" é obrigatória e deve ser preenchida com a mesma porta utilizada na sessão "HTTPREST" dentro da chave PORT, no nosso caso o nosso REST foi iniciado na porta 8103.
    • A tag "RefreshTokenTimeout" é responsável por definir o tempo em que um acesso/token de autenticação será válido, caso não seja informado essa tag, o seu valor default é 600 (correspondendo a 10 minutos).
    • A tag "meurhLog" controla a geração de mensagens no "console.log" sobre o processo de autenticação/login do aplicativo MeuRH, apoiando em possíveis manutenções e acompanhamentos do processo. Por padrão, as mensagens sempre estarão sendo demonstradas no console, mesmo que a tag não exista no arquivo de inicialização "appserver.ini". Caso deseje que as mensagens não sejam mais demonstradas no console, basta declarar a tag "meurhLog=0", dentro da sessão "[RESTCONFIG]", para seja desabilitado.

[RESTCONFIG]
restPort=8103
RefreshTokenTimeout=300
meurhLog=1



Configurando o arquivo "properties.json"

Para finalizar a configuração, vamos atualizar as informações desse arquivo, baseado nas configurações realizadas anteriormente.

Esse arquivo encontra-se no raiz da pasta de arquivos cliente do app MeuRH, no mesmo local do arquivo "index.html".
Essa pasta é declarada na chave "PATH", no exemplo acima sobre a declaração do aplicativo.

As tags que atualizaremos dentro de arquivo são: "baseUrl" e "rootContext"


tag "baseUrl"

Essa tag deve ser configurada com o endereço do REST criado no seu ambiente e testado anteriormente através do carregamento da página no browser.
exemplo: "http://127.0.0.1:8103/restT1" ,onde:

    • 127.0.0.1 = Endereço/ip do seu servidor protheus
    • 8103 = A porta do REST (restPort) configurada no seu appserver.ini na tag [RESTCONFIG]
    • /restT1 = essa informação foi declarada no item URL de REST, em seu "appserver.ini"


tag "rootContext"

Essa tag deve ser configurada com o valor do complemento do endereço, informado em seu "appserver.ini", que contém as configurações de localização dos arquivos cliente do aplicativo:

    • No exemplo de montagem dessa configuração, utilizamos a seguinte a sessão: [127.0.0.1:8081/T1], sendo assim, dessa tag podemos dividi-la em duas partes:
      1. (IP + Porta HTTP) = "127.0.0.1:8081"
      2. (Contexto) = /T1/

      Assim sendo, devemos informar o valor "/T1/" como valor para a propriedade "rootContext", dentro do arquivo "properties.json".
Exemplo
Informações
titleImportante

Atente-se na atualização desse arquivo "properties.json", atualizações realizadas incorretamente,
podem ocasionar problemas no carregamento do aplicativo após o processo de autenticação do usuário.

A baseUrl padrão e o rootContext devem estar configurados de acordo com seu ambiente.

Card
labelpasso 4


Acesso ao aplicativo MeuRH


Após as configurações do serviço e iniciar o seu servidor podemos realizar a verificação e login no aplicativo.

Para realizar o acesso pelo APP é necessário seguir os seguintes passos.

1 - Baixar o APP “Meu RH”

 


2 - Ao abrir o aplicativo pela primeira vez, será apresentada a tela para leitura do QRCode que é gerado de acordo com as configurações do ambiente gerado nos passos anteriores.

cuidado com o case sensitive (diferenciação entre letras minusculas e maiúsculas) no momento de definição da URL de acesso, pois caso existam erros no preenchimento podem ocorrer no aplicativo realizar o login. Como por exemplo, escrever erradamente "Restport" ou deixar de colocar o ponto de interrogação na URL.

poderá ser utilizada e executada a página "qrcodegenerator.htm" que se encontra disponível na raiz do pacote cliente do aplicativo, no mesmo lugar do arquivo "properties.json", ou algum outro portal web para a geração do seu QRCode, como por exemplo: https://www.the-qrcode-generator.com/ , sempre utilizando a opção gerar como "texto livre".


Podemos gerar o QRCode também pela página padrão liberada pela Totvs juntamente com os arquivos cliente:

    • No nosso exemplo acima, poderíamos colar o seguinte texto: "MeuRH | MeuRH empresa T1 | http://127.0.0.1:8081/T1/?restPort=8103" , onde:
      • Os campos "Identificador do Ambiente" e "Nome do Ambiente" são de livre configuração do cliente, não afetando em nada o processo de utilização do aplicativo.
      • Entretanto, o campo URL é muito importante, pois é ele que identifica onde o servidor Protheus está localizado para a realização das requisições aos serviços REST:
        • (URL raiz e Porta HTTP ) → "http://127.0.0.1:8081"
        • (Contexto configurando no passo 3) → "/T1/"
        • (Query param para informar o parâmetro e a porta do serviço REST) → "?restPort=8103"
        • O campo usuário é opcional, principalmente quando desejamos gerar um QRCode para ser compartilhado para toda empresa, o correto é deixar em branco esse campo.



Abaixo, segue exemplo de geração do QRCode via outro portal web:


Caso necessário, nesse link encontrará outras informações: Geração QRCode acesso MeuRH - Linha Protheus (12.1.17)


Após a geração do QRCode, basta realizar a leitura do mesmo dentro do aplicativo e realizar o processo de login.
O usuário e senha solicitado são os mesmos já utilizados atualmente no Portal do RH Gestão do Capital Humano!