Árvore de páginas

Versões comparadas

Chave

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

...

Bloco de código
languagejava
themeMidnight
firstline1
titleP.E. ATUSLBCONatSezLoad
linenumberstrue
#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)

...