E aí, tudo certo?
Imagine que você precise calcular o frete de uma forma tão específica que os cadastros de configurações e tabelas de frete não comportem. Isso já aconteceu comigo.
O contador da empresa chegou com sua planilha, é claro, e tive que aplicar a sua fórmula ao TMS Protheus.
Então utilizei o ponto de entrada TMCALFRE que fica localizado no fonte TMSXFUNB.PRW
Vamos à um exemplo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
User Function TMCALFRE() //Recupera o array contendo os campos passado através do Ponto de Entrada Local aParam := PARAMIXB //Array utilizado para passar os components a serem calculados e seus respectivos valores Local aRet := {} //-- Parametros passados para o ponto de entrada PARAMIXB //-- [01] = Vetor com a composicao do frete //-- [02 ate 17] = Base de calculo //-- [18] = Codigo do cliente devedor (pode estar em branco quando calculado pelo generico ou sem ajuste) //-- [19] = Loja do cliente devedor (pode estar em branco quando calculado pelo generico ou sem ajuste) //-- [20] = Codigo da regiao de origem //-- [21] = Codigo da regiao de destino //-- [22] = Codigo do produto //-- [23] = Codigo do servico de negociacao //-- [24] = Tabela de Frete //-- [25] = Tipo da Tabela de Frete //-- [26] = Sequencia da Tabela de Frete //-- [27] = Dias de Armazenagem //-- [28] = Notas Fiscais (aNfCTRC) //-- [29] = Numero do Lote //-- [30] = Codigo do cliente devedor original //-- [31] = Loja do cliente devedor original If aParam[1][1] == "01" //se componente for o 01 (tabela DT3) nNewComp := CalcComp() aAdd(aRet, {"01",nNewComp}) EndIf /* Você pode inserir a lógica que quiser, pegando valores de outras tabelas do sistema. Você pode zerar um componente específico caso não queira que ele seja calculado em condições específicas */ Return aRet |
Referência: http://tdn.totvs.com/display/public/PROT/TMCALFRE+-+Calcula+Componentes+de+Frete
Espero que este exemplo te ajude nas implantações!
Abs.
Fernando Bueno
Consultor em FBSOLUTIONS
Sou consultor na área de implantação de sistemas ERP, com experiência na análise e implantação de projetos de sistemas, configurando a estrutura do software, capacitando usuários-chaves, ministrando treinamentos e workshops.
Atuando desde 2005 no mercado de tecnologia, desenvolvendo e implantando e sistemas gerenciais, sistemas e sites web e ecommerce.
Siga-me no Linked In
Atuando desde 2005 no mercado de tecnologia, desenvolvendo e implantando e sistemas gerenciais, sistemas e sites web e ecommerce.
Siga-me no Linked In
Últimos posts por Fernando Bueno (exibir todos)
- Indicadores Logísticos para Gestão de Transportadoras - 4 de dezembro de 2024
- O Papel Estratégico do Setor Logístico na Cadeia de Suprimentos - 20 de novembro de 2024
- Logística Reversa: Estratégia Sustentável e Lucrativa para Empresas - 20 de novembro de 2024