Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - Backoffice Protheus - SIGAFAT - ExecAuto dos tipos 1, 2, 5 e 8 da nota de débito (tpNFDebito = 06)

time.png Tempo aproximado para leitura: 00:02:00 min

Dúvida
Qual exemplo de ExecAuto dos tipos 1, 2, 5 e 8 da nota de débito (tpNFDebito = 06)?

Ambiente
Cross Segmentos - Backoffice Protheus - SIGAFAT - Todas versões

Solução

User Function MyMata600()
    Local jFld600      := JsonObject():new()
    Local aDocumentos  := {}
    Local oDoc1        := JsonObject():New()
    Local oDoc2        := JsonObject():New()
  
    Private oModelNCND   := Nil
    Private jDocRef      := JsonObject():new()
  
    RpcSetEnv('T1','D MG 01', 'ADMIN','1234')
  
    jFld600["F2_TPCOMPL"]   := "1"
    jFld600["F2_SERIE"]     := "001"
    jFld600["A1_COD"]       := "FAT001"
    jFld600["A1_LOJA"]      := "01"
  
    //INICIA AS VARIAVEIS PARA REALIZAR A EXECAUTO DO MATA600
    A600IniObj(jFld600)
  
    oModelNCND := FwLoadModel('MATA600')
  
    //SETA A OPERACAO PARA INCLUSAO DA NF
    oModelNCND:SetOperation(3)
  
    oModelNCND:Activate()
  
    If oModelNCND:IsActive()
        //CABEÇALHO
        oModelNCND:SetValue( "CABMASTER"    , "F2_TPCOMPL" ,jFld600["F2_TPCOMPL"])
        oModelNCND:LoadValue( "CABMASTER"    , "F2_CLIENTE" ,jFld600["A1_COD"]) //**IMPORTANTE ESSE CAMPO DEVE SER UTILIZADO SOMENTE LOADVALUE PARA PREENCHIMENTO
        oModelNCND:SetValue( "CABMASTER"    , "F2_LOJA"    ,jFld600["A1_LOJA"])
        oModelNCND:SetValue( "CABMASTER"    , "F2_COND"    ,"000")
        oModelNCND:SetValue( "CABMASTER"    , "F2_CODA1U"  ,"000001")
  
        //ITENS
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_ITEM"    ,"01")
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_COD"     ,"FAT001                        ")
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_PRCVEN"  , 50)
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_TES"     ,"999")
  
        oModelNCND:GetModel('ITENSDETAIL'):AddLine()
  
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_ITEM"    ,"02")
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_COD"     ,"FAT002                        ")
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_PRCVEN"  , 100)
        oModelNCND:SetValue( "ITENSDETAIL"    , "D2_TES"     ,"999")
  
        //DOCUMENTOS DE REFERENCIA
  
        // Documento 1
        oDoc1["documento"] := "PGVR02   " //Número da nota referenciada
        oDoc1["serie"]     := "1  " //Série da nota referenciada
        oDoc1["chave"]     := "                                            " //Chave NFe da nota referenciada
        oDoc1["cliente"]   := "PGVR01" //Código do Cliente da nota referenciada
        oDoc1["loja"]      := "01" //Código da Loja do Cliente da nota referenciada
  
        AAdd(aDocumentos, oDoc1)
  
        // Documento 2
        oDoc2["documento"] := "PGVR03   " //Número da nota referenciada
        oDoc2["serie"]     := "1  " //Chave NFe da nota referenciada
        oDoc2["chave"]     := "                                            " //Série da nota referenciada
        oDoc2["cliente"]   := "PGVR01" //Código do Cliente da nota referenciada
        oDoc2["loja"]      := "01" //Código da Loja do Cliente da nota referenciada
  
        AAdd(aDocumentos, oDoc2)
  
        // Atribui array ao JSON principal
        jDocRef["documentos"] := aDocumentos
  
        If oModelNCND:VldData()
            oModelNCND:CommitData()
            ConOut('Registros Incluidos com Sucesso !')
        Else
            MostraErro()
        EndIf
    EndIf
  
    oModelNCND:Destroy()
    FwFreeObj(oModelNCND)
 
Return

 

Exclusão:

User Function MyMata600()     Local jParam        := JsonObject():new()
    Local jFld600       := JsonObject():new()
    Local cDoc          := "FIN216   " //Número da nota de débito
    Local cSerie        := "001" //Série da nota débito
    Local cCli          := "FAT001" //Código do Cliente
    Local cLoja         := "01" //Loja do Cliente
  
    Private oModelNCND  := Nil
    Private jDocRef     := Nil
  
    RpcSetEnv('T1','D MG 01', 'ADMIN','1234')
  
    DbSelectArea("SF2")
    SF2->(DbSetOrder(1))
    If SF2->(DbSeek(FwxFilial("SF2") + cDoc + cSerie + cCli + cLoja))
        jFld600["F2_DOC"]     := SF2->F2_DOC
        jFld600["F2_SERIE"]   := SF2->F2_SERIE
        jFld600["F2_CLIENTE"] := SF2->F2_CLIENTE
        jFld600["F2_LOJA"]    := SF2->F2_LOJA
  
        //INICIA AS VARIAVEIS PARA REALIZAR A EXECAUTO DO MATA600
        A600IniObj(jFld600)
  
        jParam['billBranch']       := SF2->F2_FILIAL
        jParam['participantCode']  := SF2->F2_CLIENTE
        jParam['participantUnit']  := SF2->F2_LOJA
        jParam['documentBranch']   := SF2->F2_FILIAL
        jParam['documentNumber']   := SF2->F2_DOC
        jParam['documentSeries']   := SF2->F2_SERIE
        jParam['mainSourceTable']  := "SF2"
        jParam['totalTitulos']     :=  SF2->F2_VALBRUT
        jParam['identification']   := {}
        AADD(jParam['identification'],"978cd922637740008E3671881293da36" ) // FK7_IDDOC  - Identificadores (chave) dos títulos (RA/PA)
  
        //SETA O DOCUMENTOS DE REFERENCIA
        SetJVAdt(jParam)
  
        oModelNCND := FwLoadModel('MATA600')
  
        //SETA A OPERACAO PARA EXCLUSAO DA NF
        oModelNCND:SetOperation(5)
  
        oModelNCND:Activate()
  
        If oModelNCND:IsActive()
            If oModelNCND:VldData()
                oModelNCND:CommitData()
                ConOut('Registros Deletados com Sucesso !')
            Else
                MostraErro()
            EndIf
        EndIf
  
        oModelNCND:Destroy()
        FwFreeObj(oModelNCND)
    EndIf
 
Return

 

Saiba mais:

Notas de Débito (MATA600) - ExecAuto

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Artigo fechado para comentários.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _