01. VISÃO GERAL
Produto: | TOTVS Backoffice |
---|---|
Linha de Produto: | Linha Protheus ® |
Módulo: | Financeiro |
Função: | FINXNAT - Funções genéricas relacionadas a Naturezas. |
02. DESCRIÇÃO
Ponto de Entrada NATSEZLOAD para permitir o carregamento automático de Distribuição de Naturezas em Centro de Custos (tabela SEZ) conforme regra do cliente.
O ponto de entrada deverá retornar um array na mesma estrutura do aCols que receberá como parâmetro, efetuando a inclusão de suas informações específicas.
03. PARÂMETROS
Posição | Nome | Descrição |
---|---|---|
1 | aCols | Array para inclusão/alteração dos dados |
2 | aHeader | Array com a estrutura dos dados |
3 | cNatureza | Código da Natureza utilizada no rateio |
4 | nValNat | Valor do rateio informado para cNatureza |
04. RETORNO
Nome | Descrição |
---|---|
aRet | Array com a mesma estrutura de Acols recebida como parâmetro. |
05. EXEMPLO DE UTILIZAÇÃO
P.E. NatSezLoad
#include "Protheus.ch" User Function NatSezLoad() Local _nPosCC := 0 Local _nPosVal := 0 Local _nPosPer := 0 Local _MyaCols := {} Local _aColsRot := PARAMIXB[1] Local _aHeadRot := PARAMIXB[2] Local _cNatur := PARAMIXB[3] Local _nValNat := PARAMIXB[4] _MyaCols:= aClone(_aColsRot) _nPosCC := Ascan(_aHeadRot, {|e| AllTrim(e[2]) == AllTrim("EZ_CCUSTO") } ) _nPosVal:= Ascan(_aHeadRot, {|e| AllTrim(e[2]) == AllTrim("EZ_VALOR") } ) _nPosPer:= Ascan(_aHeadRot, {|e| AllTrim(e[2]) == AllTrim("EZ_PERC") } ) If FwIsInCallStack("FINA050") //-- Contas a Pagar If Empty(_MyaCols[1,_nPosCC]) //-- Vazio = ainda não carregou nenhuma informação para o Centro de Custo If !Empty(_cNatur) //-- Cria um item com 50% do percentual do valor da Natureza _MyaCols[1,_nPosCC] :=PadR('000000003',Len(SEZ->EZ_CCUSTO)) _MyaCols[1,_nPosPer]:=50 _MyaCols[1,_nPosVal]:=_nValNat/2 //-- Cria um segundo item para distribuir os 50% restante Aadd(_MyaCols,Array(Len(_aHeadRot)+1)) _MyaCols[Len(_MyaCols),_nPosCC] := PadR('000000004',Len(SEZ->EZ_CCUSTO)) _MyaCols[Len(_MyaCols),_nPosPer]:= 50 _MyaCols[Len(_MyaCols),_nPosVal]:= _nValNat/2 _MyaCols[Len(_MyaCols),(Len(_aHeadRot)+1)] := .F. EndIf EndIf EndIf Return(_MyaCols)
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas