Versões comparadas

Chave

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


section
Column
width90%
Deck of Cards
idConfiguracoes
Card
defaulttrue
accessKeyAPI
idAPI
labelAPI
titleAPI

O Portal do Fornecedor comunica com o ERP através de APIAPIs, desta forma é necessário garantir que o serviço de API esteja disponível e acessível de forma externa.

Aviso
titleImportante

Como o acesso do fornecedores é externo a rede da empresa, as portas configuradas abaixo para o serviço de API deverá estar liberadas para acesso externo.


Configurando as portas da API

O aplicativo RM.Host é responsável por hospedar e expor os serviços de APIs.

Veja mais sobre a configuração da porta webApi.

A tag ApiPort configurada nesta etapa será utilizada durante a instalação do Portal.

Nota
titleImportante

A execução do Host precisa ser como administrador:

  • Caso o Host seja iniciado como aplicativo (RM.Host.exe), certifique-se que ao executá-lo, tenha selecionado a opção "Executar como Administrador".
  • Caso o Host tenha sido instalado como serviço, o usuário vinculado ao serviço deve ser um administrador do sistema.

Conectando com o banco de dados

Expandir
title
Para que a API saiba em qual banco de dados conectar quando for acionada pelo Portal, devemos configurar a tag DefaulDB. Veja mais em Configurando DefaultDB.
Validação de acesso
externo das
as APIs

Para validar se as configurações de portas das APIs foram realizadas corretamente, acesse o browser e digite a URL  http://{IP ou domínio}:{porta}/api/swagger/.

Exemplo: http://10.173.17.242:8051/api/swagger

Importante na validação usar o IP, nome da máquina ou domínio.

Verifique se a página abaixo foi carregada

Image Added

       

Image Removed





Conectando com o banco de dados

Para que a API saiba em qual banco de dados conectar quando for acionada pelo Portal, devemos configurar a tag DefaulDB.

Veja mais em Configurando DefaultDB.


Expandir
titleValidação de acesso ao banco de dados através da API

Para validar se a configuração da comunicação com o banco de dados das APIs foi realizada corretamente, acesse a API via browser.

Exemplo: http://10.173.17.242:8051/api/est/v1/Unitofmeasures

Neste exemplo estamos usando o cadastro de Unidade de Medidas, ao acessar será solicitado um usuário do sistema que tenha acesso a este cadastro dentro do sistema.

Image Added


Você deverá ter um resultado semelhante a este, onde lista os registros do cadastro de unidade de medida.

Image Added
card
Card
Card
idUsuario_e_autenticacao
title
labelUsuário e autenticaçãoParametrização de Acesso

Para realizar a autenticação com as APIs utilizamos o usuário PORTALDOFORNECEDOR .Este usuário

Aviso
titleAtenção

O usuário PORTALDOFORNECEDOR é criado automaticamente pelo sistema durante o processo de

comunicar fornecedor exportando os dados para web na cotação, mas para isso, é necessário antes definir qual código de acesso e perfil serão associados a este usuário.

"Comunicar Fornecedor" selecionando a opção "Exportar Orçamento p/Web".

O mesmo jamais deve ser criado manualmente, pois irá causar erros ao tentar acessar o portal.

Durante o processo de comunicação com o fornecedor o sistema identifica

Informações
titleInformação

A cada nova exportação para web validamos a existência do usuário, e caso o mesmo tenha sido excluído por engano, basta realizar uma nova comunicação que o mesmo será recriado, um novo usuário será criado.


Para que o usuário sejá criado corretamente com as devidas permissões,  é necessário antes definir qual código de acesso e perfil serão utilizados.





Perfil

Cadastre um novo perfil, ou utilize um já existente que possua as permissões abaixo.

Expandir
titleConfiguração do Perfil
Nota
titleSugestão

Aconselhamos a criação de um perfil exclusivo para esta finalidade, pois qualquer manutenção indevida nas permissões, pode fazer com que o fornecedor visualize mensagens de erro ao acessar cadastrados que estão disponíveis no portal, como unidade, marca, condição de pagamento.

Acesso a menus → [01] Cadastros


Acesso a menus → [03] Compras → [03.01] Gestão de Compras → [03.01.02] Cotação








Parâmetros da cotação

Informe o perfil e código de acesso que serão utilizado para realizar a autenticação das APIs, nos parametros da cotação na etapa Definições Gerais 6/6

                     


Informações
titleImportante

Clientes que possuem o sistema configurado com LDAP ou Login Unificado utilizando usuário de rede, devem acessar o cadastro do usuário PORTALDOFORNECEDOR depois que o mesmo for criado, e informar um usuário de rede válido na pasta rede.

label
Painel
borderWidth0
borderStylesolid





Configuração de Rotas, Paginação e Usuário RM

No diretório "C:\TOTVS\CorporeRM\FrameHTML\Web\App\Cmp\PortalDoFornecedor\config\" abra o arquivo de configuração do Portal "config.json". Nele serão possíveis de se efetuar as seguintes configurações:

Column
width560px

Image Added Voltar para o Menu Principal

Configuração do Portal
Bloco de código
firstline1
titleconfig.json
linenumberstrue
{
	"rmApiServer": "http://192.168.10.12:8052/API/",
	"pageSize": 8,
}
  • rmApiServer: Deve conter o endereço da URL de acesso ao RM. É para esta rota que serão direcionadas as requisições do portal, ela é a mesma que foi configurada anteriormente no RM.Host.exe.config ou RM.Host.service.exe.config , ou seja, http://Endereço (Ip ou nome da máquina onde o Host está instalado):APIPort
  • pageSize: Número de itens da paginação.

Caso esteja utilizando alguma regra no IIS com Rewrite , na tag rmApiServer deve ser informado o caminho do portal conforme publicado no IIS, exemplo:

Bloco de código
firstline1
titleconfig.json
linenumberstrue
{
	"rmApiServer": "http://localhost/FrameHTML/Web/App/Cmp/PortalDoFornecedor/API/",
	"pageSize": 8,
}
IMPORTANTE:
Após configurar o arquivo config.json, é necessário limpar o cache do navegador, caso contrário, o arquivo de configuração antigo será mantido por um tempo.
A Tag rmApiServer deve obrigatoriamente terminar com barra "/".





HTML
<style>

div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>