Tempo aproximado para leitura: 00:02:00 min
Dúvida
Qual exemplo de ExecAuto do tipo 6 da nota de débito (tpNFDebito = 06)?
Ambiente
Cross Segmentos - Backoffice Protheus - SIGAFAT - Todas versões
Solução
User Function MyMata600()
Local jParam := JsonObject():new()
Local jFld600 := JsonObject():new()
Private oModelNCND := Nil
Private jDocRef := Nil
RpcSetEnv('T1','D MG 01', 'ADMIN','1234')
jFld600["F2_SERIE"] :="001"
jFld600["TPCOMPL"] := 6
//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" ,"6") //PAGAMENTO ANTECIPADO
oModelNCND:LoadValue( "CABMASTER" , "F2_CLIENTE" ,"FAT001")
oModelNCND:SetValue("CABMASTER" , "F2_LOJA" ,"01")
oModelNCND:SetValue( "CABMASTER" , "F2_COND" ,"000")
oModelNCND:SetValue( "CABMASTER" , "F2_CODA1U" ,"000001")
//ITENS
oModelNCND:SetValue( "ITENSDETAIL" , "D2_COD" ,"FAT001 ")
oModelNCND:SetValue( "ITENSDETAIL" , "D2_PRCVEN" , 1000)
oModelNCND:SetValue( "ITENSDETAIL" , "D2_TES" ,"999")
oModelNCND:SetValue( "ITENSDETAIL" , "D2_CF" ,"5101 ")
oModelNCND:SetValue( "ITENSDETAIL" , "D2_LOCAL" ,"01")
//VINCULAR OS TITULOS DE RECEBIMENTO ANTECIPADO
jParam['billBranch'] := FWxFilial("SE1") //Filial do Protheus que será consultada (informar código completo)
jParam['participantCode'] := "FAT001" //Código do Cliente
jParam['participantUnit'] := "01" //Loja do Cliente
jParam['documentBranch'] := cFilant //Variável cFilAnt
jParam['documentSeries'] := jFld600["F2_SERIE"] //Série da Nota Fiscal
jParam['mainSourceTable'] := "SF2" //Tabela de origem
jParam['identification'] := {} //Identificadores (chave) dos títulos (RA) - FK7_IDDOC
AADD(jParam['identification'], "978cd922637740008E3671881293da36" ) //FK7_IDDOC
SetJVAdt(jParam)
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:
0 Comentários