Árvore de páginas

Versões comparadas

Chave

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

Produto ainda em fase de piloto.

01. VISÃO GERAL

Produto:TOTVS Backoffice
Linha de Produto:

Linha Protheus ®

Módulo:Financeiro
Função:FINTITG - Inclusão de títulos Pagar/Receber via smartlink

02. DESCRIÇÃO

Ponto de Entrada FiTitGsp para permitir a inclusão de campos específicos e/ou conteúdos em campos do padrão, conforme regra do clientealteração do conteúdo do array que será passado para o execauto do FINA040/FINA050. O ponto de entrada é executado antes da chamada do execauto, no processa da execução da rotina automática, durante o processo de geração ou exclusão de títulos a Pagar/Receber da  da integração Gesplan, via smartlink.

O ponto de entrada deverá retornar um array na mesma estrutura do aDados que receberá como parâmetro, efetuando a inclusão edição de suas informações específicas, conforme regra de negócio do cliente.

03. PARÂMETROS

PosiçãoNomeDescrição
1cCarteira

Indica a operação rotina que esta está sendo executada:

"R" = Inclusão de título Título a receber - FINA040

"P" = Inclusão de título Título a pagar - FINA050

2cOperacao

Indica a ação que está sendo executada para o título:

"I" = Inclusão

"E" = Exclusão

3aDadosArray com a estrutura dos dados (campo e conteúdo) a serem passados ao execauto para o processamento da rotina automática.

04. RETORNO

NomeDescrição
aDados

Array com a na mesma estrutura de recebida como parâmetro e novos campos/conteúdo, caso houvernovo conteúdo.

05. EXEMPLO DE UTILIZAÇÃO

Bloco de código
languagejava
themeMidnight
firstline1
titleP.E. NatSevLoadFiTitGsp
linenumberstrue
#include "Protheus.ch"

User Function NatSevLoadFiTitGsp()

Local _nPosNat nPos      :=as 0Numeric
Local _nPosVlr  := 0 aArea     as Array
Local cCarteira as Character
Local _nPosPerccOperacao :=as 0Character
Local _nPosRataDados    :=as 0
Local _MyaColsArray

aArea     := {}
Local _aColsRotGetArea()
cCarteira := PARAMIXBParamIxb[1] 
Local _aHeadRotcOperacao := PARAMIXBParamIxb[2] 

_MyaColsaDados    :=aClone(_aColsRot)
_nPosNat    :=Ascan(_aHeadRot, {|e| AllTrim(e[2]) == AllTrim("EV_NATUREZ") } )
_nPosVlr    :=Ascan(_aHeadRot, {|e| AllTrim(e[2 ParamIxb[3]

If cCarteira=='P' .And. cOperacao=="I" // Inclusão de título carteira Pagar

    If (nPos:=aScan(aDados,  { |x| Alltrim(x[1]) == AllTrim("EV_VALOR") } )
_nPosPerc   :=Ascan(_aHeadRot, {|e| AllTrim(e[2]) == AllTrim("EV_PERC") } )
_nPosRat    :=Ascan(_aHeadRot, {|e| AllTrim(e[2]) == AllTrim("EV_RATEICC") } )

If FwIsInCallStack("FINA050")//-- Contas a Pagar
     
'E2_NATUREZ'  })) > 0
        dbSelectArea('SED')
        dbSetOrder(1)
        If dbSeek(FWxFilial()+aDados[nPos,2])
            //-- Adiciona Criaa umconta itemcontabil comda 50%Natureza dono valorcampo do título
     _MyaCols[1,_nPosNat] := PadR('000001',Len(SEV->EV_NATUREZ))
       _MyaCols[1,_nPosVlr] := M->E2_VALOR / 2Aadd(aDados, {'E2_DEBITO' , ED_CONTA , Nil} )
    _MyaCols[1,_nPosPerc]:= 50
    _MyaCols[1,_nPosRat] := "1" //Rateio CC=Sim

    //-- Cria um segundo item para distribuir os 50% restante
    Aadd(_MyaCols,Array(Len(_aHeadRot)+1))
    _MyaCols[Len(_MyaCols),_nPosNat] := PadR('000003',Len(SEV->EV_NATUREZ))
    _MyaCols[Len(_MyaCols),_nPosVlr] := M->E2_VALOR /2
    _MyaCols[Len(_MyaCols),_nPosPerc]:= 50
    _MyaCols[Len(_MyaCols),_nPosRat] := "1"
    _MyaCols[Len(_MyaCols),(Len(_aHeadRot)+1)] := .F.
    
EndIf

Return(_MyaColsEndIF
    EndIF

EndIf

If cCarteira=='R' .And. cOperacao=="I" // Inclusão de título carteira Receber
     If (nPos:=aScan(aDados,  { |x| Alltrim(x[1]) == 'E1_HIST'  })) == 0   
		Aadd(aDados, {'E1_HIST' , 'GESPLAN' , Nil} ) 
	EndIf
EndIF

RestArea(aArea)
FwFreeArray(aArea)

Return(aDados)


05. CONTEÚDO RELACIONADO

Integração Gesplan - Manutenção de Títulos a Pagar/Receber