Potheus - MSExecAuto MATA140 não inclui campos D1_DESC, D1_VALDESC e D1_CLASFIS

Estou realizando testes de inclusão de Pré-documento de entrada (MATA140) via EXECAUTO, porém os campos mencionados no título(D1_DESC, D1_VALDESC, D1_CLASFIS) não são gravados, já todos os outros campos são gravados corretamente.

Outro ponto é que se eu insiro os valores manualmente pelo banco/apsdu os valores não são apresentados no browse ao clicar em visualizar ou mesmo no momento do lançamento do documento (MATA103), sendo apresentados com valores zerados, mesmo estando preenchido no banco.

Segue função executada para realização do teste.

#Include "PROTHEUS.CH"
#INCLUDE "rwmake.ch"          
#INCLUDE "topconn.ch"

User Function GERAPRENOTA() 
    Private lMsErroAuto := .F.
    aCabec         := {}
    aItens        := {}
    aLinha        := {}


    aadd(aCabec,{"F1_TIPO"       ,"N"        })
    aadd(aCabec,{"F1_FORMUL"     ,"N"        })
    aadd(aCabec,{"F1_FILIAL"    ,'00'        })
    aadd(aCabec,{"F1_DOC"        ,'999908888'})
    aadd(aCabec,{"F1_SERIE"     ,'01'        })
    aadd(aCabec,{"F1_EMISSAO"    ,stod('20190614')    })
    aadd(aCabec,{"F1_CHVNFE"    ,'33190533069212001237550010003759581532876002'})
    aadd(aCabec,{"F1_DESPESA"    ,0            }) 
    aadd(aCabec,{"F1_FORNECE"    ,'000731'    })
    aadd(aCabec,{"F1_LOJA"       ,'02'        })
    aadd(aCabec,{"F1_ESPECIE"    ,"SPED"        })
    aadd(aCabec,{"F1_EST"        ,'MG'        })
    aadd(aCabec,{"F1_COND"       ,"01"        })
    aadd(aCabec,{"F1_SEGURO"     ,0    ,NIL        })
    aadd(aCabec,{"F1_FRETE"     ,0    ,NIL        })
    aadd(aCabec,{"F1_DESCONT"     ,5    ,NIL        })
    aadd(aCabec,{"F1_VALMERC"    ,25    ,NIL})
    aadd(aCabec,{"F1_VALBRUT"    ,25    ,NIL})


    aadd(aLinha,{"D1_ITEM"      ,'0001'        ,Nil})
    aadd(aLinha,{"D1_FILIAL"    ,'00'       ,Nil})
    aadd(aLinha,{"D1_COD"       ,'000068         '  ,Nil})
    aadd(aLinha,{"D1_UM"        ,'UN'                  ,Nil})
    aadd(aLinha,{"D1_QUANT"     , 5            ,Nil})
    aadd(aLinha,{"D1_VUNIT"     ,5,Nil})    
    aadd(aLinha,{"D1_TOTAL"     ,25            ,Nil})
    aadd(aLinha,{"D1_LOCAL"      ,"01"               ,Nil})         
    aadd(aLinha,{"D1_DESCRI"     ,'BISOPROLOL 5MG* 30 COMP. REVEST (G) MERC' ,Nil})             
    aadd(aLinha,{"D1_FCICOD"    ,''     ,Nil}) 
    aadd(aLinha,{"D1_DESPESA"    ,0        ,Nil})
    aadd(aLinha,{"D1_DESC"        ,2        ,Nil})
    aadd(aLinha,{"D1_VALDESC"    ,2      ,Nil}) 
    aAdd(aLinha,{"D1_LOTEFOR"    ,'BR109258          ',NIL})
    aadd(aLinha,{"D1_PEDIDO",'A23499'                  ,Nil})
    aadd(aLinha,{"D1_ITEMPC",'0001'                 ,Nil})
    aadd(aLinha,{"D1_CC"    ,'101810200'            ,Nil})
    aadd(aLinha,{"D1_CLASFIS","5  "                    ,Nil})
    aadd(aLinha,{"AUTDELETA","N"                    ,Nil})
    aadd(aItens,aLinha)

    MSExecAuto({|x,y,z| MATA140(x,y,z)}, aCabec,aItens, 3)

    If lMsErroAuto
        mostraerro()
    Else
        MSGALERT("TUDO OK")
    ENDIF

Return

Alguém tem alguma ideia do que seja? Fico grato se alguém puder ajudar.

compartilhar
  • Olá, você conseguiu algum retorno pq não grava valor de desconto?

    Ewerton Silva   07 de Jun de 2021
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do TOTVS DevForum!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags protheus protheues12 mata140 advpl execauto msexecauto ou faça a sua própria pergunta.