Árvore de páginas

Versões comparadas

Chave

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

...

Produto:

Solucoes_totvs
SolucaoTOTVS Logística TMS

Linha de Produto:

Linhas_totvs
SegmentoDistribuição
RegionConstrução Projetos
LinhaLinha Protheus

Segmento:

Segmentos_totvs
SegmentoLogística

Módulo:TOTVS Logística TMS 
Função:

OMSA040 - Cadastro de Motorista
OMSA060 - Cadastro de Veiculos
OMSA100 - Cadastro de Rotas
TMSA144 - Geração de Viagens
TMSA240  - Complemento de Viagem
TMSA250  - Contrato de Carreteiro
TMSA251  - Liberação de Contrato
TMSA310  - Fechamento de Viagem
TMSA340  - Encerramento de Viagem
TMSA350  - Operações de Transporte
TMSAC15  - Funções Genéricas TMS x Repom
TMSAC15A- Funções Genéricas TMS x Repom
TMSAC15B- Funções Genéricas TMS x Repom
TMSAE60  - Cadastro de Operadoras de Frotas
TMSAE65  - Operadoras de Frotas x Ações 
TMSAF64P - Validações para Operadoras de Frota
TMSAF64R - Validações para Operadoras de Frota
TMSREPOM- Funções Genéricas TMS
TMSXFUNA- Funções Genéricas TMS
TMSXFUNB- Funções Genéricas TMS
TMSXFUNC - Funções Genéricas TMS
TMSXFUNX - Funções Genéricas TMS

Ticket:Não se aplica
Requisito/Story/Issue (informe o requisito relacionado) :DLOGTMS02-13230


02. SITUAÇÃO/REQUISITO

Implementar melhoria no processo de integração entre o módulo SIGATMS e Repom, utilizando a plataforma Repom Frete, que baseia-se na tecnologia Web API* em arquitetura RestFul.

A API de integração da Repom permite a realização de diversas operações contidas no Repom Frete, como manipulação de cadastros (Contratados, Motoristas e Veículos), Roteiros, Viagens e Pagamento.

* Web APÌ - Solução utilizada na integração de sistemas e na comunicação entre diferentes aplicações, utilizando a linguagem universal JSON para tráfego de dados, proporcionando para que proporciona a sistemas desenvolvidos em plataformas distintas sejam compatíveis.

03. SOLUÇÃO

Implementado a integração TMS com a Repom Frete, que estará disponível a partir da configuração do parâmetro dos parâmetros "MV_VSREPOM = 2.2" e MV_TMSOPDG = 2.

Informações
titleImportante

As alterações de dicionário de dados estarão disponíveis a partir do release 12.1.33.

Nesta versão houve algumas mudanças de configuração:

  • Parâmetro MV_ENREPOM descontinuado não será utilizado para esta integração junto a plataforma Repom Frete da Repom, porém o Fechamento da viagem continua o "start" (Abertura do Contrato) entre a integração Protheus TMS e Repom.

  • No cadastro de Operadora de Frotas , é configurado oforam criados novos campos:
    • Momento da Quitação (DEG_REPQUI): Utilizado para definir o Momento da Quitação do Contrato
    de Carreteiro (conforme regras do MV_LIBCTC) ou Encerramento da Viagem.
    • na Repom;
    • Tempo de Espera (DEG_TMPESP): Utilizado para definir o tempo de espera do processamento da inclusão do Contrato na Repom, onde ocorre o retorno do Código do Contrato (DTR_PRCTRA/DM5_PRCTRA) e o Código do CIOT (DTR_CIOT);

  • Os processos de interface utilizados são:

    SIGATMSREPOMDESCRIÇÃO
    MotoristaDriver
    Cadastro de MotoristaPrestador
    Este método integra os cadastros de Motoristas do SIGATMS com a base de dados da Repom.
    FornecedorHired
    Cadastro
    Este método integra os cadastros de Fornecedor do SIGATMS com a base de dados da Repom.
    VeículosVehicleEste método integra os cadastros de Veículos do SIGATMS com a base de dados da Repom.
    Operações da Operadora - Cadastro Operadoras de
    VeiculosOperação
    FrotaOperation
    Operação da Operadora de FrotaRoteiroRouteRequestCadastro de Rotas
    No sistema da Repom, as operações de transporte são um conjunto de configurações para que o sistema se comporte de maneira distinta, de forma a atender aos diferentes tipos de operações. Por exemplo, há operações que contemplam a quebra de peso e quebra de frete. No SIGATMS, esta configuração está disponível no botão Outras Opções → Operac.  ,na rotina Operadora de Frota. Esse método é utilizado, pois durante a emissão do contrato na base da Repom, é necessário enviar junto dos dados da viagem, qual a operação deseja utilizar.
    RoteiroRoute / RouteRequestAs informações referente ao Roteiro/Percurso da viagem são enviadas no momento da emissão de um contrato na Repom. No SIGATMS, esse método é acionado no momento do Cadastro da Rota. Cada rota do SIGATMS é amarrada a um roteiro/percurso da Repom.
    Emitir ViagemShipping

    Na Repom, este método é um dos principais componentes da integração, por meio do qual é gerado o contrato no sistema da Repom. No SIGATMS, esse método é acionado no momento do Fechamento da Viagem.
    Quando ocorrer o estorno do Fechamento da Viagem, é acionado automaticamente o método para cancelamento do contrato na Repom. O cancelamento do contrato na Repom segue regras específicas que podem interferir no seu cancelamento. Caso não seja possível cancelar o contrato na Repom, o estorno do fechamento da viagem não será realizado.

    QuitaçãoPayment

    A quitação do contrato determina o fim do processo de viagem na Repom.
    Esse método será acionado conforme a configuração do campo DEG_REPQUI (Momento Quitação) do Cadastro de Operadoras de Frotas  (

    Consultar RoteiroRouteEmitir ViagemShippingOcorre no Fechamento da Viagem 
    Prestar ContasPaymentCreatePode ocorrer no

    Contrato de Carreteiro, conforme configuração do MV_

    LIBCTC 

    LIBCTC  e/ou no Encerramento da Viagem)

    Obs: Na versão 2.

    Autorizar

    2 (RepomFrete) não existe o método de "Autorização de Quitação do contrato" conforme versões anteriores.

    Consulta ContratoShipping/StatusProcessing/ByIdentifierApós a quitação do contrato na Repom, realizamos a consulta do contrato diretamente por este método para conseguir os valores referente a impostos, calculados para pessoas físicas.
    Autorização de PagamentoPaymentAuthorization
    Auth

    O processo de autorização é configurado no Sistema REPOM.

    Portanto, o TMS somente enviará a autorização quando o Status do Contrato na REPOM estiver

    diferente de  

    como  '

    PAID

    CLEARED'

    Vale PedagioVPRViagem

...

titleImportante

...


  • Cálculo de Pedágio

    Route/ByRouteCode

    Ao informar os Recursos da Viagem (Operadora de Frota e Veículo)  automaticamente, com base na rota da viagem, é acionado esse método para obter o valor do pedágio. Na Viagem Modelo 3, na Aba Recursos, no campo “Pedágio” é apresentado o valor.
    Movimentação de Valores

    Shipping/AddMovement

    Depois que o contrato é emitido na Repom, todos os tipos de créditos e débitos que poderão ocorrer durante a viagem recebem o nome de “Movimentações de Valores”.  Esse método é utilizado para que uma movimentação seja inserida e ou excluída dentro do contrato na Repom.

    MÉTODOS REPOM

    Abaixo segue todos os métodos desenvolvidos para troca de informações entre o Totvs Logistica TMS x Repom ambiente Repom Frete.

    Método RepomMétodo TotvsDescrição

    GET /AnttTypes/LoadTypes

    GetLoadTypes() 

    Recupera um GetLoadTypes

    POST /token 

    Auth() 

    Obtém Token

    POST /Driver

    DriverCreate()

    Cria um novo driver

    PUT /Driver/{country}/{nationalId}

    DriverUpdate() 

    Atualiza o motorista

    PATCH /Driver/lockUnlock/{country}/{nationalId}

    DriverLock() 

    Atualiza o motorista

    GET /Driver/ByName/{name}

    GetDrvrByName()

    Recuperar motoristas por nome

    GET /Driver/ByDocument/{country}/{nationalId}

    GetDrvrByDoc()

    Recupera um motorista por número de identificação de documento

    POST /Hired

    HiredCreate()

    Cria um novo contratado

    PUT /Hired/{country}/{nationalId}

    HiredUpdate()

    Atualiza um novo contratado

    PATCH /Hired/lockUnlock/{country}/{nationalId}

    HiredLock()  

    Bloquear ou desbloquear contratado

    GET /Hired/ByName/{name}

    GetHrdByName()

    Recupera contratados pelo nome

    GET /Hired/ByDocument/{country}/{nationalId}

    GetHrdByDoc()

    Recupera um contratado por número de identificação de documento

    POST /Vehicle

    VehicleCreate() 

    Cria um novo veículo

    PUT /Vehicle/{country}/{license}

    VehicleUpdate()

    Atualiza um veículo

    PATCH /Vehicle/{country}/{license}

    VehicleLock() 

    Trancar ou destrancar o veículo

    GET /Vehicle/ByDocument/{country}/{license} 

    GetVeicByDoc() 

    Recupera um veículo por licença

    POST /RouteRequest

    RouteCreate()  

    Cria uma solicitação de rota

    GET /Route/ByCEP/{cep}/{toCep}/{vehicleAxles}

    GetRtByCEP()  

    Recupera uma rota

    GET /Route/ByIBGE/{IBGECode}/{toIBGECode}/{vehicleAxles}

    GetRtByIBGE()

    Recupera uma rota

    GET /Route/ByTraceIdentifier/{traceIdentifier}/{vehicleAxles} 

    GetRtByTrcId()

    Recupera uma rota

    GET /Route/ByRouteCode/{traceCode}/{routeCode}/{vehicleAxles}GetByRtCode()

    Recupera uma rota

    GET /RouteRequest/{traceIdentifier}

    GetRtRequest() 

    Recupera uma solicitação de rota por id

    POST /Shipping

    ShippingCreate()

    Solicite um novo frete

    PATCH /Shipping/AddDocument/{shippingId}

    ShippingDocAdd() 

    Adicionar documento de envio

    PATCH /Shipping/AddMovement/{shippingId}

    ShippingMovAdd()

    Adicionar movimento de envio

    PATCH /Shipping/Cancel/{id}

    ShippingCancel()

    Cancelar frete

    PATCH /Shipping/lockUnlock/{shippingId}ShippingLock()

    Bloquear ou desbloquear um frete

    PATCH /Shipping/Interruption/{id}ShippingInter()

    Interrupção de envio

    GET /Shipping/ByShipping/{shippingId} 

    GetShipByShip()

    Recupera um frete por shippingId

    GET /Shipping/ByIdentifier/{identifier}GetShipById()

    Recupera um frete por identificador

    GET /Shipping/StatusProcessing/ByIdentifier/{id}GetShipStPrcBy()

    Recupera uma lista de embarques por código do cliente

    POST /ShippingPayment

    PaymentCreate()

    Envio de pagamento

    PATCH /ShippingPayment/Cancel/{shippingID}

    PaymentCancel() 

    Cancelamento de pagamento de envio

    PATCH /ShippingPayment/DocumentLost/{shippingID}

    PaymLostDoc() 

    Documento perdido

    PATCH /ShippingPayment/DocumentReship/{shippingID}

    PaymReshipDoc() 

    Documento de reenvio

    PATCH /ShippingPayment/DocumentDelivered/{shippingID}

    PaymDeliverDoc()

    Documento entregue

    PATCH /ShippingPayment/DocumentDismissed/{shippingID}  

    PaymDismisDoc()

    Dispensa documento

    GET /ShippingValidation/ByVehicles/{vehicles}

    GetShipVeicVld()

    Veículos validados para novo envio

    GET /ShippingValidation/ByHiredDocument/{country}/{document}

    GetShipHiredVld() 

    Contratado Validar para novo envio

    POST /PaymentAuthorization  

    AuthorizationCreate()

    Envia uma autorização de pagamento

    PATCH /PaymentAuthorization/Cancel

    AuthCancel()

    Cancelar uma autorização de pagamento

    GET /PaymentAuthorization/ByShippingId/{shippingId}

    GetPayAutShip() 

    Recupera uma autorização de pagamento por shippingId

    GET /Card/GetActiveCardsByHired/{HiredNationalID}

    GetCardHired() 

    Recupera ActiveCard

    GET /Card/GetActiveCardsByDriver/{DriverNationalID}

    GetCardDriver()

    Recupera ActiveCard

    GET /Card/GetActiveCardsByHiredAndByDriver/{HiredNationalID}/{DriverNationalID}

    GetCardDvrHrd()

    Recupera ActiveCard

    GET /VPR/TollList/ByShippingIdentifier/{shippingIdentifier}

    GetVPR() 

    Recupera TollList por shippeingIdentifier

    GET /ShippingFuelBenefit/GetLinkByCardNumber/{cardNumber}

    GetFuelbyCard()

    Recupera o título do FuelBenefits pelo número do cartão

    GET /OperationGetOperation()

    Recupera operações

    GET /Operation/ByIdentifier/{operationIdentifier}GetOperById()

    Recupera operações por identificador

    GET /Movement/GetMovementGetMovement()Retorna movimentações dos clientes



    DOCUMENTAÇÕES API REPOM

    Informações
    iconfalse
    titleIMPORTANTE!

    Documentação Swagger Repom Frete - http://qa.repom.com.br/Repom.Frete.WebAPI/HelpApi/index#/

    Documentação Swagger Repom Relatórios - https://qa.repom.com.br/Repom.Relatorio.WebApi/HelpApi/#/

04. DEMAIS INFORMAÇÕES

Para uso desta funcionalidade, deve ser utilizado:

  • Pacote: 008033 - Para atualização de dicionário de dados, criaçãcriação/alteração  de campos e índices.

...

Informações
titleIMPORTANTE!

Configuração:

  1. Para a funcionalidade da nova integração TMS x Repom, é necessário configurar o parâmetroos parâmetros:
    MV_VSREPOM = 2.2 
    MV_TMSOPDG= 2


DETALHAMENTO DA ATUALIZAÇÃO DE DICIONÁRIO CONFORME ABAS

2
Totvs custom tabs box
tabsDicionário SX3, Dicionário SIX
idsSX3,SIX
|DM3_FILIAL
Totvs custom tabs box items
defaultno
referenciaSX3

Criação de Campos.

Tabela DM3 (Documentos da Viagem Mod.3):DEG (Operadora de Frotas):


Campo

DEG_USER

Tipo

Caractere

Tamanho

45

Decimal

0

Formato


Título

Nome Usuário

Descrição

Nome de usuário Repom

Usado

Sim

Obrigatório

Não

Browse

Não

Opções


When

M->DEG_CODOPE == "01"

Relação


Val. Sistema


Help

Nome de usuário utilizado para autenticação no sistema de comunicação REST da REPOM.

Campo

DEG_SENHA

Campo

Tipo

Caractere

Tamanho

2

30

Decimal

0

Formato

@
!
*

Título

Filial

Senha

Descrição

Filial do Sistema

Senha Usuario

Usado

Não

Sim

Obrigatório

Não

Browse

Sim

Não

Opções


When

M->DEG_CODOPE == "01"

Relação


Val. Sistema


Help

Informe a

filial do sistema

senha do usuário cadastrado para realizar a integração com a REPOM.

DM3ORIGEMCaracter1Orig. CarregOrigem do Carregamento

Campo

DEG_

TOKEN

Tipo

Memo

Tamanho

50

Decimal

0

Formato


Título

Token

Descrição

Token de Acesso

Usado

Sim

Obrigatório

Não

Browse

Não

Opções


When


Relação


Val. Sistema


Help

Token utilizado na integração com REPOM.

IF(INCLUI,0,POSICIONE("DT6",1,XFILIAL("DT6")+DM3->(DM3_FILDOC+DM3_DOC+DM3_SERIE),"DT6_VALMER"))

Campo

DEG_DTTOKE

Tipo

Data

Tamanho

8

Decimal

0

Formato


Título

Data Token

Descrição

Data Token

Usado

Sim

Obrigatório

Não

Browse

Não

Opções


When


Relação


Val. Sistema


Help

Valor da Mercadoria.

Tabela DM4 (Planejamento da Viagem Mod.3):

Data de envio do token de acesso ao sistema REPOM.

Campo

DEG_HRTOKE

Tipo

Caractere

Tamanho

8

Decimal

0

Formato

99:99:99

Título

Hr. Token

Descrição

Hora Token

Usado

Sim

Obrigatório

Não

Browse

Não

Opções


When


Relação


Val. Sistema


Help

Hora de envio do token de acesso ao sistema REPOM.

Campo

DEG_EXPIRE

Tipo

Numérico

Tamanho

6

Campo

DM4_FILIAL

Tipo

Caracter

Tamanho

Decimal

0

Formato

@E 999,999

Título

Filial

Duração Toke

Descrição

Filial do Sistema

Duração Token

Usado

Não

Sim

Obrigatório

Não

Browse

Sim

Não

Opções


When


Relação


Val. Sistema


Help

Filial

Duração do

Sistema

token em segundos.

Campo

DM4

DEG_

FILORI

TMPESP

Tipo

Caractere

Tamanho

2

3

Decimal

0

Formato

@!

Título

Filial

Tempo Espera

Descrição

Filial

Tempo de

Origem da Viagem

Espera

Usado

Não

Sim

Obrigatório

Não

Browse

Sim

Não

Opções

Em branco

When

TMSAE60Whe('DEG_TMPESP')

Relação

"60"

Val. Sistema

TMSAF62("DM4"

TMSAE60Vld()

Help

Selecione o tempo de espera máximo (em segundos) para o retorno da inclusão do contrato (viagem) na Operadora REPOM.

Campo

DEG_REPQUI

Tipo

Caractere

Tamanho

1

Decimal

0

Formato

@!

Título

Mom.Quit.Rep

Descrição

Momento Quitação Repom

Usado

Sim

Obrigatório

Não

Browse

Não

Opções

0=Não Utiliza;1=Contrato;2=Encerramento Vge

When

TMSAE60Whe('DEG_REPQUI')

Relação

"0"

Val. Sistema

Pertence('012')

Help

Informe o momento da Quitação do Contrato na REPOM.

Obs: A quitação do contrato ocorrerá de acordo com a parametrização de geração do título (MV_LIBCTC e DUJ_TITFRE).


Tabela DA4 (Motorista):

Campo

DA4_PAIS

Usado

Sim

a filial de Origem da Viagem.

Campo

DA4_DDD

Usado

Sim

Totvs custom tabs box items
defaultnoyes
referenciaSIX

Criação de índices:

DM3DEK:

Índice

Ordem

ChaveDescrição
DM3DEK13DM3DEK_FILIAL+DM3DEK_FILDOCROTA+DM3DEK_DOCFROVEI+DM3_SERIE+DM3_FILORI+DM3_VIAGEMFil.Docto. + No.Docto. + Serie Docto. + Fil.Origem + ViagemDEK_CODOPERota + Frota + Cod.Operad.DM32DM3_FILIAL+DM3_FILORI+DM3_VIAGEM+DM3_SEQUEN+DM3_FILDOC+DM3_DOC+DM3_SERIEFil.Origem + Viagem + Sequencia + Fil.Docto. + No.Docto. + Serie Docto


05. 
ASSUNTOS RELACIONADOS

...


Templatedocumentos


Criação de Campos.

Tabela DM3 (Documentos da Viagem Mod.3):

Tabela DM4 (Planejamento da Viagem Mod.3):

Criação de índices:

DM3:

Fil.Origem + Viagem + Sequencia + Fil.Docto. + No.Docto. + Serie Docto
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-pane.l {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>
Totvs custom tabs box
tabsDicionário SX2, Dicionário SX3, Dicionário SX7, Dicionário SIX
idsSX2,SX3,SX7,SIX
Totvs custom tabs box items
defaultno
referenciaSX3

Campo

DM3_FILIAL

Tipo

Caractere

Tamanho

2

Decimal

0

Formato

@!

Título

Filial

Descrição

Filial do Sistema

Usado

Não

Obrigatório

Não

Browse

Sim

Opções

When

Relação

Val. Sistema

Help

Informe a filial do sistema.

Campo

DM3_ORIGEM

Tipo

Caracter

Tamanho

1

Decimal

0

Formato

Título

Orig. Carreg

Descrição

Origem do Carregamento

Usado

Sim

Obrigatório

Não

Browse

Não

Opções

When

Relação

IF(INCLUI,0,POSICIONE("DT6",1,XFILIAL("DT6")+DM3->(DM3_FILDOC+DM3_DOC+DM3_SERIE),"DT6_VALMER"))

Val. Sistema

Help

Valor da Mercadoria.

Campo

DM4_FILIAL

Tipo

Caracter

Tamanho

2

Decimal

0

Formato

Título

Filial

Descrição

Filial do Sistema

Usado

Não

Obrigatório

Não

Browse

Sim

Opções

When

Relação

Val. Sistema

Help

Filial do Sistema.

Campo

DM4_FILORI

Tipo

Caractere

Tamanho

2

Decimal

0

Formato

Título

Filial

Descrição

Filial de Origem da Viagem

Usado

Não

Obrigatório

Não

Browse

Sim

Opções

When

Relação

Val. Sistema

TMSAF62("DM4")

Help

Informe a filial de Origem da Viagem.

Totvs custom tabs box items
defaultno
referenciaSIX

Índice

Ordem

ChaveDescrição
DM31DM3_FILIAL+DM3_FILDOC+DM3_DOC+DM3_SERIE+DM3_FILORI+DM3_VIAGEMFil.Docto. + No.Docto. + Serie Docto. + Fil.Origem + Viagem
DM32DM3_FILIAL+DM3_FILORI+DM3_VIAGEM+DM3_SEQUEN+DM3_FILDOC+DM3_DOC+DM3_SERIE