| Produto: | |
|---|---|
| Linha de Produto: | |
| Segmento: | |
| Módulo: | |
| Função: | NGFJOBF75 |
Ponto de entrada NGFJOBF75 é acionado ao final da gravação de um título na tabela F75 através do job FINA711 para que seja realizada gravações complementares.
#INCLUDE "totvs.ch"
/*/{Protheus.doc} NGFJOBF75
Ponto de entrada para gravações complementares na F75.
Exemplo com regra de gravação da taxa da moeda para títulos já baixados em moeda estrangeira.
Com regra para manter a taxa contratada se existir no título
/*/
User Function NGFJOBF75()
Local cAlias As Character
Local cField As Character
Local dDtBaixa As Date
Local nTaxa As Numeric
Local aArea As Array
Local aAreaAlias As Array
If F75->F75_SALDO = 0 .AND. F75->F75_MOEDA > 0
aArea := GetArea()
// Verifica a carteira para posteriormente posicionar na tabela correta (SE1 ou SE2)
If F75->F75_RECPAG == "R"
cAlias := "SE1"
cChave := F75->F75_FILORI + F75->F75_PREFIX + F75->F75_NUM + F75->F75_PARCEL + F75->F75_TIPO
cField := "E1_"
Else
cAlias := "SE2"
cChave := F75->F75_FILORI + F75->F75_PREFIX + F75->F75_NUM + F75->F75_PARCEL + F75->F75_TIPO +F75->F75_CLIFOR + F75->F75_LOJA
cField := "E2_"
EndIf
aAreaAlias := (cAlias)->(GetArea())
DbSelectArea(cAlias)
(cAlias)->(DbSetOrder(1))
If (cAlias)->(MsSeek(cChave))
If (cAlias)->&(cField + "TXMOEDA") > 0
nTaxa := (cAlias)->&(cField + "TXMOEDA")
Else
dDtBaixa := (cAlias)->&(cField + "BAIXA")
nTaxa := RecMoeda(dDtBaixa, F75->F75_MOEDA)
EndIf
EndIf
// Altera a taxa da moeda no campo F75_TXMOED, para entender de gravação desse campo verifique a documentação
//https://tdn.totvs.com.br/pages/releaseview.action?pageId=622668231
If nTaxa > 0
RecLock("F75", .F.)
F75->F75_TXMOED := nTaxa
F75->(MSUnlock())
EndIf
RestArea(aAreaAlias)
RestArea(aArea)
EndIf
Return NIL |