Árvore de páginas

PONTO DE ENTRADA TM200BCIM

Descrição

O Ponto de Entrada TM200BICM tem como objetivo permitir a alteração na base de ICMS no cálculo do frete.

Observações

Este Ponto de Entrada, esta localizado no TMSA200 (Processamento do Cálculo do Frete), é executado ao efetuar o cálculo do frete de um determinado documento.

Exemplos

#Include 'Protheus.ch'

User Function TM200BICM()

Local _aArea := GetArea()
Local _aAreaSZ3 := {}
Local _aLinhas := ParamIXB[1]
Local _nX := 0
Local _nY := 0
Local _lExiste := .F.

_lExiste := .F.

For _nX := 1 To Len(_aLinhas)
For _nY := 1 To Len(_aLinhas[_nX])
If aScan(_aLinhas[_nX,_nY], 'D2_BASEICM') > 0
_lExiste := .T.
_aLinhas[_nX][_nY][2] := 3425.20
Exit
EndIf
Next _nY
If !_lExiste
AAdd( _aLinhas[_nX], {'D2_BASEICM', 3425.20, Nil } )
AAdd( _aLinhas[_nX], {'D2_', 3425.20, Nil } )
EndIf
Next _nX

_lExiste := .F.
For _nX := 1 To Len(_aLinhas)
For _nY := 1 To Len(_aLinhas[_nX])
If aScan(_aLinhas[_nX,_nY], 'D2_VALICM') > 0
_lExiste := .T.
_aLinhas[_nX][_nY][2] := 411.02
Exit
EndIf
Next _nY
If !_lExiste
AAdd( _aLinhas[_nX], {'D2_VALICM', 411.02, Nil } )
EndIf
Next _nX

_lExiste := .F.
For _nX := 1 To Len(_aLinhas)
For _nY := 1 To Len(_aLinhas[_nX])
If aScan(_aLinhas[_nX,_nY], 'D2_TOTAL') > 0
_lExiste := .T.
_aLinhas[_nX][_nY][2] := 20411.02
Exit
EndIf
Next _nY
If !_lExiste
AAdd( _aLinhas[_nX], {'D2_TOTAL', 20411.02, Nil } )
EndIf
Next _nX

_lExiste := .F.
For _nX := 1 To Len(_aLinhas)
For _nY := 1 To Len(_aLinhas[_nX])
If aScan(_aLinhas[_nX,_nY], 'D2_PRCVEN') > 0
_lExiste := .T.
_aLinhas[_nX][_nY][2] := 20411.02
Exit
EndIf
Next _nY
If !_lExiste
AAdd( _aLinhas[_nX], {'D2_PRCVEN', 20411.02, Nil } )
EndIf
Next _nX

RestArea(_aArea)

Return(_aLinhas)

Preview

Veja também


Idioma

Português(Brasil)

Versões

Versões_Anteriores

Sistemas Operacionais Suportados

Todos

Compatível com as Bases de Dados

Todas

Retorno

Array contendo as informações de base de ICMS e TOTAL, conforme demonstrado no exemplo acima.

Eventos de chamada do Ponto de Entrada

Ao clicar para calcular o frete do documento.

Variáveis

aItens - Array contendo os dados da tabela SD2 à ser criada.

Programa Fonte

TMSA200.PRW