Histórico da Página
...
Produto: |
| ||||||||
---|---|---|---|---|---|---|---|---|---|
Linha de Produto: |
| ||||||||
Segmento: |
| ||||||||
Módulo: | TOTVS Logística TMS | ||||||||
Função: | TMSA050.PRW - Entrada Dc. Cliente TMSA146.PRW - Programação de Carregamento TMSA146A.PRW - Programação de Carregamento x Planejamento de Rotas (Envio) TMSA146B.PRW - Programação de Carregamento x Planejamento de Rotas (Retorno) TMSA153H.PRW - Função genérica TMSA210.PRW - Carregamento de Transporte TMSAC18.PRW - Métodos de Envio - Integração Planejamento de Rotas TMSAC19.PRW - Consulta Planejamento de Rotas TMSAC20.PRW - Configuração Planejamento de Rotas TMSAC21.PRW - Métodos de Retorno - Integração Planejamento de Rotas TMSAC23.PRW - Controle de Integração Planejamento de Rotas TMSAC24.PRW - Montagem e visualização do Mapa TMSAC25.PRW - Montagem e visualização do Mapa TMSAF60.PRW - Viagem Modelo 3 TMSAF62.PRW - Validação Viagem Modelo 3 TMSAF68.PRW - Menu Viagem Modelo 3 TMSAO48´RW TMSAO15.PRW - Cadastro Referencia Geográfica TMSAO48.PRW - Integração Rota Inteligente TMSAO52.PRW - Cadastro Roteirizador Rota Inteligente TMSO46API.PRW - Métodos CallBack Planejamento de Rotas TMSXFUND.PRW - Função genérica | ||||||||
Ticket: | Não se aplica. | ||||||||
Requisito/Story/Issue (informe o requisito relacionado) : |
DLOGTMS02-17292 a DLOGTMS02-17296 |
...
A fim de otimizar e reduzir custos das operações de transporte, o módulo Gestão de Transportes (SIGATMS) integrará com a solução logística de roteirização de carga fornecida pelo Planejamento de Rotas (TPR), agregando inteligência e otimizando o processo de entregas e coletas dentro do SIGATMS. Fazendo com que as coletas/entregas tenham uma melhor disposição e ordem, e dessa maneira além de reduzir o tempo de operação também se reduz custos dentro da operação de transporte, além da obtenção prévia dos valores de pedágio.
03. SOLUÇÃO
Implementado a integração do SIGATMS x Planejamento de Rotas (TPR), que estará disponível a partir da configuração do parâmetro MV_ROTAINT
O módulo SIGATMS passa a utilizar as APIs fornecidas pelo Planejamento de Rotas (TPR) para solucionar os problemas de ordem de entrega/coleta, melhor trajeto a ser realizado considerando o menor tempo ou menor distância, valores das praças de pedágio, plotagem e visualização do trajeto, coordenadas geográficas dos clientes.
Para que toda a solução funcione perfeitamente é necessário obter as as coordenadas geográficas de de todos os clientes, de acordo com os respectivos endereços.
As rotinas rotinas Cadastro de Cliente, Sequência de Endereço, Wizard Filial e Cadastro de Solicitantes foram atualizadas para que ao final da gravação as informações referentes ao endereço sejam enviadas automaticamente para a api gelocalização (tpr-geolocation-sync sync) ,a fim de obter as coordenadas geográficas do respectivo endereço. As coordenadas geográficas recebidas são gravadas na tabela DAR - Referência Geográficas, e é possível visualiza-las através da rotina Cadastro de Referências Geográficas Geográficas - TMSAO15.
Foram criadas novas funcionalidades no SIGATMS:
Parametrização:
Implementado a A integração do SIGATMS x com o Planejamento de Rotas (TPR), que estará disponível , ocorrerá a partir da configuração do parâmetro MV_ROTAINT.
...
rotina de Programação de Carregamento (TMSA146), no qual o usuário selecionará os documentos e enviará para roteirização com todos os veículos ativos. Toda roteirização enviada para a TPR, será gerado um Identificador que ficará armazenado na Tabela DMR (Roteirização), e os documentos na Tabela DMS (Itens Roteirização), ambos com status 'Pendente'. Também será gerada dados do arquivo de envio (json) na Tabela DLU (Integração Roteirizador).
O TPR recebendo as informações, efetuará o processamento da roteirização e em seguida retornará (callback) para o módulo SIGATMS os documentos processados com sucesso e os rejeitados (exemplo: O peso do veículo para o pedido ultrapassou o máximo permitido')
O sistema SIGATMS irá gerar uma programação de carregamento somente para os documentos processados com sucesso, atualizando o status da Roteirização (DMR_STATUS) e Itens da Roteirização (DMR_STATUS) para 'Processado'.
Para os documentos rejeitados, o status será atualizado para 'Rejeitado' (DMR_STATUS). Caso a rejeição ocorrer para uma NFC (DTC) e existindo uma NFC (DTC) do mesmo lote que foi processado com sucesso, será gerado um novo Lote (DTP) vinculando as NFCs rejeitada do referido lote.
A partir do retorno da roteirização, toda a visualização dos pontos de entrega/coleta, rota e praças de pedágio serão exibidas dentro do SIGATMS em um mapa, através da funcionalidade Map Display.
Gerado a Programação de Carregamento, o usuário à partir da rotina de Programação de Carregamento (TMSA146), em modo alteração, deverá informar a Rota, Motorista (caso não vinculado no cadastro do veiculo) e o Cavalo (se houver).
Ao efetivar a programação de carregamento, será gerado a viagem (processo padrão), e havendo um valor de pedágio enviado pela TPR, o valor será gravado no Complemento da Viagem (DTR_VALPDG).
Foram criadas novas funcionalidades no SIGATMS:
- Configurador Planejamento de Rotas (TMSAC20);
- Consulta Planejamento de Rotas (TMSAC19);
- Controle de Integração Planejamento de Rotas (TMSAC23);
- Busca de coordenadas geográficas automática nos cadastros: Clientes, Fornecedores, Sequência de Endereço e Solicitantes (Geocode);
- Wizard para obtenção de coordenadas geográficas das filiais (Geocode);
- Roteirização de documentos e veículos através da rotina Programação de Carregamento (Routing);
- Cálculo de valor praças de pedágio (Routing);
- Visualização de mapa e plotagem das rotas ;
Parametrização:
IProgramação de Carregamento (TMSA146)
A integração do SIGATMS com o Planejamento de Rotas, ocorrerá a partir da rotina de Programação de Carregamento, através da opção 'Integra TPR'.
- Ao clicar nessa opção, será enviado para o Planejamento de Rotas (TPR) os Documentos selecionados (Notas Cliente, CTe, Solicitação de Coleta) e todos os veículos ativos (DA3).
Para controle dos documentos enviados à roteirização, os dados serão armazenados nas Tabela DMR/DMS, onde será gerado um Identificador da Roteirização (DMR_IDROT) e os documentos serão gravados na Tabela DMR com status 1- Pendente (DMR_STATUS)
- Após o Sistema Planejamento de Rotas receber as informações e efetuar o processamento para roteirização, enviará o resultado ao SIGATMS, através do CallBack de Roteirização.
O SIGATMS automaticamente receberá os dados e armazenará o arquivo de retorno (json) na Tabela DLU (DLU_RETORN) e em seguida irá criar a Programação de Carregamento com base nos documentos e veículo roteirizados.
- Gerado a Programação de Carregamento, o usuário deverá acessar a rotina de Programação de Carregamento, posicionar na em modo alteração, e informar a Rota, Cavalo (se houver), e o Motorista (caso não estiver vinculado ao cadastro do veículo).
- Ao efetivar a programação de carregamento, será gerado a viagem (processo padrão), e havendo um valor de pedágio (tollValue) calculado pela TPR, o valor será gravado no Complemento da Viagem (DTR_VALPDG).
04. DEMAIS INFORMAÇÕES
Para uso desta funcionalidade, deve ser utilizado:
- Pacote: 009506 - Para atualização de dicionário de dados, criação/alteração de campos e índices.
- Documentação Planejamento de Rotas (TPR)
Token - Instalação, configuração e geração do token de acesso no Google Cloud Platform, que é necessário enviar no header para ter acesso aos serviços no Google Cloud Platform - TDN: https://tdn.totvs.com/x/_1zOJQ
Integração Planejamento de Rotas - Integrações Planejamento de Rotas
Geolocalização - Integração de Geolocalização
Roteirização - Integração de roteirizaçãoDETALHAMENTO DA ATUALIZAÇÃO DE DICIONÁRIO CONFORME ABAS
Totvs custom tabs box tabs Dicionário SX2, Dicionário SX3, Dicionário SIX ids SX2,SX3,SIX Totvs custom tabs box items default yes referencia SX2 Tabela
Descrição
DMR
Roteirização - TPR
DMS
Itens Roteirização - TPR
Totvs custom tabs box items default no referencia SX3
Tabela DLU - Controle Integração RoteirizaçãoCampo
DLU_RETENV
Tipo
Memo
Tamanho
50
Decimal
0
Formato
Título
Retorno Post
Descrição
Retorno do Envio do Post
Usado
Sim
Obrigatório
Não
Browse
Não
Opções
When
Relação
Val. Sistema
Help
Nesse campo deve ser armazenado o JSON que retorna referente ao primeiro envio e/ou requisição.
DLV- Cadastro Roteirizador
Campo
DLV_AUTH
Tipo
Caractere
Tamanho
50
Decimal
0
Formato
Título
Authorizatio
Descrição
Chave de Autorização
Usado
Sim
Obrigatório
Sim
Browse
Não
Opções
When
Relação
Val. Sistema
Help
Nesse campo deve ser informado a chave do Planejamento de Rotas (TPR)
Campo
DLV_ROTERI
Tipo
Caractere
Tamanho
18
Decimal
0
Formato
@! Título
Roteirizador
Descrição
Roteirizador
Usado
Sim
Obrigatório
Não
Browse
Não
Opções
1=Maplink;2=Planejamento Rotas (TPR)
When
Relação
Val. Sistema
Pertence('12')
Help
Define o tipo de integração:
1=Maplink;
2=Planejamento Rotas (TPR)
Campo
DLV_TOKEN
Tipo
Caractere
Tamanho
254
Campo
DLV_URLCAL
Tipo
Caractere
Tamanho
80
Campo
DLV_URLGEO
Tipo
Caractere
Tamanho
254
Decimal
0
Formato
@! Título
URL Geocode
Descrição
URL da Geolocalização
Usado
Sim
Obrigatório
Não
Browse
Não
Opções
When
Relação
Val. Sistema
Help
Informe a URL da Geolocalização
Campo
DLV_URLROT
Tipo
Caractere
Tamanho
254
Decimal
0
Formato
@! Título
URL Roteriza
Descrição
URL da Roteirização
Usado
Sim
Obrigatório
Não
Browse
Não
Opções
When
Relação
Val. Sistema
Help
Informe a URL da Geolocalização
Campo
DLV_URLTK
Tipo
Caractere
Tamanho
254
Decimal
0
Formato
@! Título
URL Token
Descrição
URL Token
Usado
Sim
Obrigatório
Não
Browse
Não
Opções
When
Relação
Val. Sistema
Help
Informe a URL da Geolocalização
DMR - Roteirização TPR
Campo
DMR_FILIAL
Tipo
Caractere
Tamanho
2
Decimal
0
Formato
@! Título
Filial
Descrição
Filial do Sistema
Usado
Não
Obrigatório
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Indica a Filial do Sistema
Campo
DMR_FILROT
Tipo
Caractere
Tamanho
2
Decimal
0
Formato
@! Título
Fil. Roteir.
Descrição
Filial Roteirização
Usado
Sim
Obrigatório
Sim
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Filial do Identificador da Roteirização
Campo
DMR_IDROT
Tipo
Caractere
Tamanho
9
Decimal
0
Formato
@! Título
Id.Roteir.
Descrição
Id. Roteirização
Usado
Sim
Obrigatório
Sim
Browse
Sim
Opções
When
Relação
GetSx8Num("DMR","DMR_IDROT")
Val. Sistema
Help
Identificador da Roteirização da Integração com o Planejamento de Rotas (TPR)
Campo
DMR_STATUS
Tipo
Caractere
Tamanho
1
Decimal
0
Formato
Título
Status
Descrição
Status
Usado
Sim
Obrigatório
Sim
Browse
Não
Opções
1=Pendente;2=Processado;3=Cancelado
When
Relação
'1'
Val. Sistema
Pertence('12123')
Help
Status da Roteirização da Integração com o Planejamento de Rotas (TPR)
DMS - Itens Roteirização TPR
Campo
DMS_FILIAL
Tipo
Caractere
Tamanho
2
Decimal
0
Formato
@! Título
Filial
Descrição
Filial do Sistema
Usado
Não
Obrigatório
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Indica a Filial do Sistema
Campo
DMS_FILROT
Tipo
Caractere
Tamanho
2
Decimal
0
Formato
@! Título
Fil.Roteir.
Descrição
Filial Roteirização
Usado
Não
Obrigatório
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Filial do Identificador da Roteirização
Campo
DMS_IDROT
Tipo
Caractere
Tamanho
9
Decimal
0
Formato
@! Título
Id.Roteir.
Descrição
Id. Roteirização
Usado
Não
Obrigatório
Browse
Opções
When
Relação
Val. Sistema
Help
Identificador da Roteirização da Integração com o Planejamento de Rotas (TPR)
Campo
DMS_ITEM
Tipo
Caractere
Tamanho
6
Decimal
0
Formato
@! Título
Item
Descrição
Item
Usado
Sim
Obrigatório
Sim
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Identifica o item da roteirização
Campo
DMS_ENTIDA
Tipo
Caractere
Tamanho
3
Decimal
0
Formato
@! Título
Entidade
Descrição
Entidade
Usado
Sim
Obrigatório
Não
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Indica a Entidade do Documento.
Campo
DMS_INDENT
Tipo
Caractere
Tamanho
1
Decimal
0
Formato
@! Título
Indice Entid.
Descrição
Indice Entidade
Usado
Sim
Obrigatório
Não
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Indica o Indice da Entidade a ser utilizado para a pesquisa da Chave da Entidade
Campo
DMS_CHVENT
Tipo
Caractere
Tamanho
200
Decimal
0
Formato
@! Título
Chave Entid.
Descrição
Chave Entidade
Usado
Sim
Obrigatório
Não
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Chave que contem os dados do Documento integrados ao Planejamento de Rotas (TPR)
Campo
DMS_INDEXT
Tipo
Caractere
Tamanho
1
Decimal
0
Formato
@! Título
Ind.Chv.Ext
Descrição
Indice Chave Externa
Usado
Sim
Obrigatório
Não
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Indica o Indice da Entidade a ser utilizado para a pesquisa da Chave Externa
Campo
DMS_ENTEXT
Tipo
Caractere
Tamanho
3
Decimal
0
Formato
@! Título
Ent.Chv.Ext
Descrição
Entidade Chave Externa
Usado
Sim
Obrigatório
Não
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Indica a Entidade da Chave Externa
Campo
DMS_CHVEXT
Tipo
Caractere
Tamanho
30
Decimal
0
Formato
@! Título
Chv. Externa
Descrição
Chave Externa
Usado
Sim
Obrigatório
Não
Browse
Sim
Opções
When
Relação
Val. Sistema
Help
Identifica o registro gerado na Integração Protheus x Planejamento de Rotas (TPR)
Exemplo: Módulo SIGATMS, caso a integração tenha sido realizada pela rotina de Programação de Carregamento, neste campo irá constar o Nro da Programação que o Documento foi vinculado.
(Filial + Fil.Prog + Nro Prog + Seq.Prog)
Campo
DMS_STATUS
Tipo
Caractere
Tamanho
1
Decimal
0
Formato
@! Título
Status
Descrição
Status
Usado
Sim
Obrigatório
Sim
Browse
Não
Opções
1=Pendente;2=Rejeitado;3=Processado;4=Falha no Processamento
When
Relação
'1'
Val. Sistema
Pertence("123412345")
Help
Identifica o status do Documento para Roteirização
1-Pendente - Enviado para o TPR e aguardando retorno.
2-Rejeitado - Documento rejeitado pelo TPR.
3-Processado - Documento processado no TPR com sucesso.
4- Falha no Processamento - Ocorreu uma falha de processamento do Documento no Protheus.
5- CanceladoCampo
DMS_MSGERR
Tipo
Memo
Tamanho
50
Decimal
0
Formato
Título
Msg. Erro
Descrição
Mensagem Erro
Usado
Sim
Obrigatório
Browse
Não
Opções
When
Relação
Val. Sistema
Help
Mensagem de erro recebida pelo Roteirizador do referido documento
Totvs custom tabs box items default no referencia SIX Criação de índices:
DMR
Índice
Ordem
Chave Descrição DMR 1 DMR_FILIAL+DMR_FILROT+DMR_IDROT Fil.Roteir. + Id.Roteir. DMS
Índice
Ordem
Chave Descrição DMS 1 DMS_FILIAL+DMS_FILROT+DMS_IDROT+DMS_ITEM Fil.Roteir. + Id.Roteir. + Item DMS 2 DMS_FILIAL+DMS_ENTIDA+DMS_CHVENT+DMS_STATUS+DMS_FILROT+DMS_IDROT Entidade + Chave Entid + Status + Fil.Roteir. + Id.Roteir. DMS 3 DMS_FILIAL+DMS_ENTEXT+DMS_CHVEXT Ent.Chv.Ext + Chave Externa DMS 4 DMS_FILIAL+DMS_FILROT+DMS_IDROT+DMS_CHVENT+DMS_ENTIDA Fil.Roteir. + Id.Roteir. + Chave Entid + Entidade
- Pacote: 009506 - Para atualização de dicionário de dados, criação/alteração de campos e índices.
...