Árvore de páginas

Versões comparadas

Chave

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

...

O ponto de entrada FACLMFKG será executado para gravar dados complementares na tabela FKG (Complemento do Título x Impostos ) quando os mesmos possuírem obrigatoriedade em seu preenchimento, em rotinas que utilizem o MsExecAuto nas rotinas de contas a pagar (FINA050) e contas a receber (FINA040) para a inclusão e alteração de títulos, como por exemplo ao fazer a (Medição de Contratos) inserindo um título.

...

Bloco de código
languagejava
themeMidnight
titleFACLMFKG
#INCLUDE "PROTHEUS.CH"
 
User Function FACLMFKG()
Local aRet     := ParamIxb[1] //Array com os campos recebidos
Local cAlias   := ParamIxb[2] //Alias da Tabela 
Local nOpc     := ParamIxb[3] // 3-Inclusão | 4-Alteração
Local nX       := 0
Local nPos        := 0
Local aAuxFKG     := {}
Local aFKG        := {} //Array com os campos desejados
 
If cAlias == "SE2"
   If nOpc == 3 
      aAuxFKG := {{ "FKG_ITEM"    , "000001"               , NIL },;
               { "FKG_IDFKE"   , "FIN058"               , NIL },;
               { "FKG_VALOR"   , 152                    , NIL }}
   ElseIf nOpc == 4 
      aAuxFKG := {{ "FKG_ITEM"    , "000001"            , NIL },;
               { "FKG_IDFKE"   , "FIN058"               , NIL },;
              { "FKG_VALOR"   , 125             AAdd(aFKG        , aAuxFKGNIL )}}
   EndIf  
ElseIf cAlias  elseIf== "SE1"
   If nOpc == 43 
      aAuxFKG := {{ "FKG_ITEM"    , "000001"         , NIL },;
            { "FKG_IDFKE"   , "VIC001"               , NIL },;
            { "FKG_VALOR"   , 500                    , NIL },;
            { "FKG_IDFKE"NUMPRO"  , "1594984685"           , "FIN058"   NIL }}
   ElseIf nOpc == 4 
      aAuxFKG := {{ "FKG_ITEM"    , "000001"            , NIL },;
            { "FKG_IDFKE"   , "VIC001"               , NIL },;
            { "FKG_VALOR"   , 125                    , NIL }},;
    
        AAdd(aFKG, aAuxFKG )
{ "FKG_NUMPRO"  , "1594984685"         endIf  , NIL 
endIf
}}
   EndIf 
EndIf  

If !Empty(aAuxFKG := {}) 
   AAdd(aFKG, aAuxFKG )
EndIf
 
For nX := 1 to Len(aFKG)
    
   nPos := aScan(aRet, {|x| AllTrim(Upper(x[1])) == aFKG[nX][1] })
   If nPos == 0
     If nPos = 0
 If cAlias == "SE2"
         aAdd(aRet, {aFKG[nX][1], aFKG[nX][2], aFKG[nX][3]})
      ElseIf cAlias == "SE1"
         aAdd(aRet, {aFKG[nX][1], aFKG[nX][2], aFKG[nX][3], aFKG[nX][4]})
      EndIf
   EndIf
    
Next nX
 
Return(aRet)

...