Árvore de páginas

Versões comparadas

Chave

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


01. DADOS GERAIS

Produto:

Solucoes_totvs
SolucaoTOTVS OMS

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:

Linhas_totvs
LinhaLinha Protheus

Segmento:

Segmentos_totvs
SegmentoLogística

Módulo:SIGAOMS TOTVS OMS - Gestão de Distribuição (SIGAOMS)
Função:

OMSA200 - Montagem de Carga

País:Todos Países
Ticket:Interno-
Requisito/Story/Issue (informe o requisito relacionado) :DLOGWMSMSP-14395



Aviso
titleIMPORTANTE
  • A integração TOTVS OMS x TOTVS Planejamento de Rotas (TPR) será descontinuada no próximo release (Outubro/2023).


02. DESCRIÇÃO

Ponto de entrada para alterar as informações antes do envio da carga para roteirização TPR via rotina OMSA200 (Montagem de Carga).

Quando está sendo realizada a roteirização via OMSA200, a carga já está gerada e será realizado apenas o sequenciamento das entregas (uma das funcionalidades do TPR é gerar a carga).

03. LOCALIZAÇÃO

Localizado após a busca dos dados da carga para a roteirização.

04. PARÂMETROS

Nome 

Tipo

Descrição

cAliasTPR

Objeto

Alias da tabela temporária de itens enviados para roteirização TPR.

oTTCarObjetoObjeto da gerado na tabela temporária criado.

05. RETORNO

...

Não se aplica.

06. VERSÕES

Protheus 12.1.33 ou superiores.

07. OBSERVAÇÃO

Para alteração dos dados de envio é necessário conhecer os campos da tabela temporária e sua estrutura:

  • TMP_FILIAL  com estrutura do campo C9_FILIAL
  • TMP_PEDIDO  com estrutura do campo C9_PEDIDO
  • TMP_FILFCL  com estrutura do campo A1_FILIAL
  • TMP_CODFCL  com estrutura do campo A1_COD
  • TMP_LOJFCL  com estrutura do campo A1_LOJA
  • TMP_NOMFAN  com estrutura do campo A1_NOME
  • TMP_EST     com estrutura do campo A1_EST
  • TMP_PSLIQ   com estrutura do campo B1_PESO
  • TMP_PESOBR  com estrutura do campo B1_PESO
  • TMP_VOL     com estrutura do campo B5_COMPRLC
  • TMP_ENTIDA  com estrutura do campo DAR_ENTIDA
  • TMP_LATITU  com estrutura do campo DAR_LATITU
  • TMP_LONGIT  com estrutura do campo DAR_LONGIT
  • TMP_PAIS    com estrutura do campo YA_DESCR

08. EXEMPLO

Exemplo com alteração de geolocalização do cliente:usuário.

Por meio Através dos dados do cliente usuário do pedido Pedido é possível alterar a geolocalização de cada cliente para a entrega.

Para alterar as informações , pode ser utilizado o exemplo no qual abaixo, que é realizado via RecLock(cAliasTPR,.F.), registro a registro na tabela ou via update direto, conforme exemplo "UPDATE "+oTTCar:GetRealName().

PE OMSTPR01

Bloco de código
#include 'protheus.ch'

User Function OMSTPR01()

	Local cAliasTPR  := PARAMIXB[1]
	Local oTTCar     := PARAMIXB[2]
	Local cQueryUsr  := ""
	Local lRet       := .T.


/* Exemplo com seek e update de registro a registro da temporária
	SA1->(DbSetOrder(1))
	While !(cAliasTPR)->( Eof() )
		If SA1->(DbSeek((cAliasTPR)->TMP_FILFCL+(cAliasTPR)->TMP_CODFCL+(cAliasTPR)->TMP_LOJFCL))
			RecLock(cAliasTPR,.F.)
				(cAliasTPR)->TMP_LATITU := SA1->A1_XLATITU//'-27.59533'
				(cAliasTPR)->TMP_LONGIT := SA1->A1_XLONGIT//'-48.55744'
			(cAliasTPR)->(MsUnlock())
		EndIf
		(cAliasTPR)->( dbSkip() )
	EndDo
*/

/* Exemplo de update único na temporária 

	cQueryUsr := "UPDATE "+oTTCar:GetRealName()

	cQueryUsr += " SET TMP_LATITU = (SELECT A1_XLATITU FROM " + RetSqlName("SA1") + " SA1 "
	cQueryUsr += " WHERE SA1.A1_FILIAL = TMP_FILFCL AND SA1.A1_COD = TMP_CODFCL AND "
	cQueryUsr += " SA1.A1_LOJA = TMP_LOJFCL AND SA1.D_E_L_E_T_ = ' '),"

	cQueryUsr += " TMP_LONGIT = (SELECT A1_XLONGIT FROM " + RetSqlName("SA1") + " SA1 "
	cQueryUsr += " WHERE SA1.A1_FILIAL = TMP_FILFCL AND SA1.A1_COD = TMP_CODFCL AND "
	cQueryUsr += " SA1.A1_LOJA = TMP_LOJFCL AND SA1.D_E_L_E_T_ = ' ')"

	lRet := TcSQLExec(cQueryUsr) >= 0
*/
Return  

...