Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


01. DADOS GERAIS

Produto:

Solucoes_totvs_cross
SolucaoCrossTOTVS Backoffice

Linha de Produto:

Linhas_totvs
LinhaLinha Protheus

Segmento:

Segmentos_totvs
SegmentoBackoffice

Módulo:

Modulos_cross_segmentos
ModulosCrossSegmentosTOTVS Backoffice (Linha Protheus) - Financeiro (SIGAFIN)

Função:NGFJOBF75 NGFJOBF7


02. DESCRIÇÃO

Ponto de entrada NGFJOBF75 NGFJOBF7 é 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. 


03. EXEMPLO DE UTILIZAÇÃO

Bloco de código
languagejs
themeMidnight
firstline1
titleNGFJOBF7A
linenumberstrue
#INCLUDE "totvs.ch" 

/*/{Protheus.doc} NGFJOBF75NGFJOBF7
	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 NGFJOBF75NGFJOBF7()
	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

...