| Linha de Produto: | Microsiga Protheus® |
|---|---|
| Segmento: | Logística |
| Módulo: | SIGATMS - Gestão de Transportes |
Ponto de entrada que permite expurgar componentes da proporcionalização no cálculo de frete com base em uma cotação de frete.
Parâmetros:
| Nome | Tipo | Descrição | Default | Obrigatório | Referência | |||||||||||
| aVetCmp | Array of Record | Array com os valores dos componentes | ||||||||||||||
| nValRet | Number | Valor do acréscimo aplicado na cotação |
Retorno:
aRet
Retorno será um array, onde a primeira posição é o novo valor de acréscimo, e a segunda posição é um vetor com os componentes que foram expurgados da proporcionalização.
Variáveis:
| Nome | Tipo | Escopo | Pode Alterar | Descrição | |||||||||
| Array of Record | Local | Sim |
Programa Fonte
TMSA200.PRW
Sintaxe
TM200VFC - Permite alterar a proporcionalização dos componentes ( [ Aclone(aFrete),DT4->DT4_ACRESC ] ) --> aRet
#Include "Protheus.ch"
User Function TM200VFC()
Local aVetRet := {}
Local aAreas := {DTC->(GetArea()),DT5->(GetArea()),GetArea()}
Local aVetCmp := ParamIXB[1]
Local nValRet := ParamIXB[2]
Local nCntFor1 := 0
Local nDT8VFre := 0
For nCntFor1 := 1 To Len(aVetCmp)
If aVetCmp[nCntFor1,3] != "TF" //-- Total do frete
If aVetCmp[nCntFor1,3] == "31" //-- Componente que não poderá ser proporcionalizado
Aadd(aVetRet,aVetCmp[nCntFor1,3])
EndIf
nDT8VFre := nDT8VFre + aVetCmp[nCntFor1,2]
EndIf
Next nCntFor1
DT5->(DbSetOrder(5))
If DT5->(DbSeek(xFilial("DT5") + DT4->(DT4_FILORI + DT4_NUMCOT)))
DTC->(DbSetOrder(8))
If DTC->(DbSeek(xFilial("DTC") + DT5->(DT5_FILORI + DT5_NUMSOL)))
nDTCVInf := DTC->DTC_VLRINF
nValRet := (DTC->DTC_VLRINF - nDT8VFre)
EndIf
EndIf
AEval(aAreas,{|x,y| RestArea(x),FwFreeArray(x)})
Return {nValRet,Aclone(aVetRet)}
|
Não há.
Não há.
<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-panel {
margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
margin-left: 0px !important;
}
</style> |