Árvore de páginas

GFEXFB05 - Cálculo do Romaneio - Selecionar Tabela de Frete

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Logística

Módulo:

SIGAGFE

Ponto de Entrada - GFEXFB05

Descrição:

Seleciona a tabela de frete de acordo com os parâmetros definidos em campos específicos.

Localização:

No cálculo do Romaneio, quando existir mais de uma tabela de frete.

Programa Fonte:

GFEXFUNB - Funções para Cálculo do Frete (SIGAGFE)

Parâmetros:

PARAMIXB[1]StringNúmero do romaneio

Sim 

PARAMIXB[2]BoolIndica se usa tabela temporária

Sim

PARAMIXB[3]StringAlias da tabela temporáriaSim
PARAMIXB[4]Array

Array de dados - Paramixb[2] = False

Deverá manter no array no final do processamento somente a tabela de frete válida. Abaixo a estrutura do array:

 {"NRROM"  ,; //Numero do Romaneio

"DOCS"   ,; //Documentos de Carga
"CDTRP"  ,; //Codigo do Transportador (Base ou Vinculo)
"NRTAB"  ,; //Numero da Tabela (Base ou Vinculo)
"NRNEG"  ,; //Negociacao (Base ou Vinculo)
"NRCALC" ,; //Numero do Calculo
"CDCLFR" ,; //Classificacao de Frete
"CDTPOP" ,; //Tipo Operacao
"CDFXTV" ,; //Seq. Faixa
"CDTPVC" ,; //Tipo de Veiculo
"NRROTA" ,; //Rota
"DESROT" ,; //Descricao da Rota
"DTVALI" ,; //Data Vigencia Inicio
"DTVALF" ,; //Data Vigencia Fim
"VLFRT"  ,; //Valor Frete
"PRAZO"  ,; //Prazo Entrega
"TPTAB"  ,; //Tipo Tabela (1=Normal; 2=Vinculo)
"EMIVIN" ,; //Emitente Vinculo (Original)
"TABVIN" ,; //Tabela Vinculo (Original)
"NRTAB1" ,; //Não usado. Mantido por compatibilidade.
"ATRFAI" ,; //Atributo da Faixa
"QTKGM3" ,; //K3/M3 - Fator de Cubagem
"UNIFAI" ,; //Unidade da Faixa
"TPLOTA" ,; //Tipo Lotacao
"TPVCFX" ,; //Grava se foi selecionada uma faixa ou um tipo de veiculo, usado na Simulação do Calculo de frete
"DEMCID" ,; //Indica se rota eh demais cidades
"QTFAIXA",; //Quantidade usada para determinação da faixa, usada como quantidade para calculo quando a rota eh selecionada
"CONTPZ" ,; //Indica a forma de contagem do prazo, dias corridos, uteis ou horas
"QTCOTA" ,; //Cota Do tipo de Veículo, para validação
"VLALUG" ,; //Valor da locação do tipo Veículo, para validação
"FRQKM"  ,;  //Franquia em km, para validação
"VLKMEX" ,;  //Valor excedente da franquia, para validação
"ERRO"   ,;
"TPROTA"} //Tipo da rota


Sim
Nome
Tipo
Descrição
Obrigatório

Retorno:

Nome

Tipo

Descrição

Obrigatório

aRet

Array

Array de duas posições

[1] - Boolean - Encontrou registro = True.

[2] - String - Mensagem de retorno para adicionar ao log do cálculo de frete

Sim

Exemplo: GFEXWS05
User Function GFEXFB05()

Local cNrRom := PARAMIXB[1]
Local lTabTemp := PARAMIXB[2]
Local cTRBSTF := PARAMIXB[3]
Local aTRBSTFx := PARAMIXB[4]

Local aRet = { }

aRet[1] := .T.
aRet[2] := "Mensagem do Log de calculo do romaneio"

//O retorno do ponto de entrada será o próprio array com seu conteúdo alterado.
 Return aRet