Árvore de páginas

Versões comparadas

Chave

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

Introdução

draw.io Diagram
bordertrue
viewerToolbartrue
fitWindowfalse
pageId590233659
diagramDisplayName
lboxtrue
diagramNameTPR Roteirização
simpleViewerfalse
width
linksauto
tbstylehidden
diagramWidth480

Sistemas Envolvidos

  • TPR:

    • TOTVS Planejamento de Rotas

  • Sistema Externo:

    • Todos os ERPs que se conectam ou pretendem se conectar com os produtos de planejamento logístico TOTVS.

Integração

  • Formato de entrada/saída: JSON

Escopo

  • bla bla blaIntegração assíncrona de roteirização, compostas pela chamada e pelos callback, nestas, receberemos uma lista pedidos e, quando possível, retornaremos viagens para o sistema externo;

Pré-requisitos instalação/implantação/utilização

  • Para clientes Protheus versão xxxxxx;
  • Para clientes Datasul versão xxxxxx;
  • Para todos os clientes, contratação do trial via TOTVS Store;

Layout do Callback

TPRRoutingCallback: Integração rest, Assincrona

Path: ver campo TPRrouting/CallbackURL, Método: POST

Campo

Tipo

Obrigatório

Tamanho

Descrição

Validações

Exemplos

dateCall

Date Time

Sim


Data da criação da chamada no TPR

Formato ISO8601

2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD

version

String

Não

4096

Versão do sistema externo

Texto Livre

12.36.1

summary

Callback da roteirização

Sim





tripsResults

TPRTrip[]

Sim


Lista de viagens geradas via otimização


Tabela abaixo

rejections

TPRRejection[]

Não


Lista de rejeites geradas via otimização


Tabela abaixo

message

TPRMessage[]

Não


Campo que deve ser exibido pelo sistema externo para o usuário

-

Tabela abaixo

Âncora
TPRSummary
TPRSummary

TPRSummary, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
totalDistancedoubleSim
Distância total do plano de viagens, em kmMaior ou igual a zero3022 [km]
totalStopsintegerSim
Quantidade total de paradas do plano de viagensMaior ou igual a zero239 [Paradas]
totalVolumedoubleSim
Volume total em viagens, em m³Maior ou igual a zero50.000 [m³]
totalWeightdoubleSim
Peso total em viagens, em kgMaior ou igual a zero2.500.000 [kg]
totalDurationdoubleSim
Duração total do plano de viagens, em milissegundosMaior ou igual a zero57600000 [ms]
rejectedOrdersintegerSim
Quantidade de pedidos rejeitadosMaior ou igual a zero10 [Pedidos]
rejectedWeightdoubleSim
Total de peso rejeitado, em kgMaior ou igual a zero2.500.000 [kg]
rejectedVolumedoubleSim
Total de volume rejeitado, em m³Maior ou igual a zero50.000 [m³]

Âncora
TPRTrip
TPRTrip

TPRTrip, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
distancedoubleSim
Distancia total planejada para a viagem em km
123 [km]
numberOfStopsintegerSim
Quantidade total de paradas (carregamentos e descarregamentos) da viagem

volumedoubleSim
Volume total na viagem, em m³
14.32 [m³]
weightdoubleSim
Peso total na viagem, em kg
12000 [kg]
durationdoubleSim
Duração total planejada para a viagem em horas, minutos e segundosMaior que zero em Millesegundos3600000 [ms]
extraTripBooleanSim
True se o veiculo disponível, false se não disponível;

vehicleStringSim
Identificador do veículo selecionado para a viagem

stopsTPRTripStops[]Sim
Lista de paradas
Tabela abaixo

Âncora
TPRTripStops
TPRTripStops

TPRTripStops, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
stopSequenceintSim
Ordem da parada, iniciando por 1
1, 2 ... 99
stopTypeStringSim
LOAD, UNLOAD, BOTH-
localityIdentifierStringSim
Identificador da localidadeTexto Livre"Carrefour vila Mariana"
arrivalTimeDateTimeSim
Horário de chegadaFormato ISO2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD
departureTimeDateTimeSim
Horário de saídaFormato ISO2021-01-21T10:01:00.0-03:00
YYYY-MM-DDThh:mm:ss.sTZD
loadedOrdersTPRRoutedOrder[]Sim
Lista de pedidos carregados nequela parada
Tabela abaixo
unloadedOrdersTPRRoutedOrder[]Sim
Lista de pedidos descarreagados nequela parada
Tabela abaixo

Âncora
TPRRejection
TPRRejection

TPRRejection, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
messageTPRMessage[]Sim4096


ordersTRPRoutedOrder[]Sim



Âncora
TPRRoutedOrder
TPRRoutedOrder

TPRRoutedOrder, tipo de dado utilizado nas integrações do TPR
CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
identifierStringSim4096Identificador do pedidoTexto livre"Entrega Carrefour" "PED00133"
weightDoubleNão
Peso total os itens do pedido, em kgSe não tiver peso tem que ter volume;
Todos os pedidos da roteirização devem ter o mesmo limitador (Peso ou Volume);
25.000
volumeDoubleNão
Volume total dos itens do pedido em m³Se não tiver volume tem que ter peso;
Todos os pedidos da roteirização devem ter o mesmo limitador (Peso ou Volume);
5000

Âncora
TPRMessage
TPRMessage

TPRMessage: Tipo de dado utilizado nas integrações do TPR

CampoTipoObrigatórioTamanhoDescriçãoValidaçõesExemplos
messageCodeStringSim4096Código de identificação da mensagemCódigo existente e validoTPR0001
messageStringSim4096Mensagem escritaTexto Livre"Para finalizar o cadastro acesse seu e-mail e valide o Token"
Informações
titleRetorno do Call Back
Não esperamos corpo na resposta para os callbacks, este, será avaliado apenas pelo HTTP status e este deve determinar o sucesso do envio.

Anexos
oldfalse