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 - Totvs Backoffice Protheus - SIGACOM - Rotina Automática MATA103 - Documento Entrega Futura


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

Dúvida

Como posso criar Rotina Automática MATA103 para documento de Entrega Futura?

Ambiente
Cross Segmentos - TOTVS Backoffice (Linha Protheus) - Gestão de Compras - Versão 12

Solução
Siga o exemplo abaixo:

//DOCUMENTO ENTREGA FUTURA (DHQ)

#Include "Protheus.ch"
#Include "RwMake.ch"
#Include "TbiConn.ch"

User Function EXECFUT()

Local aCab          := {}
Local cNum         := "COM000"
Local cNum1        := "COM001"
Local aItem         := {}
Local aItens        := {}
Local cSerie    := "100"
Local cFornec   := "000005"
Local cLoja     := "01"
Local cEspecie  := "NFE  " 
Local cProd1    := "001               "
Local nX            := 0
Local cTes       := "043"
Local cPedido      := "TIR469"

Local nOpc     := 3 //3-Inclui / 5-Exclui

Private lMsErroAuto := .F.

 

PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "COM" FUNNAME "MATA103"

  If nOpc == 3

// Compra com Entrega Futura (simples faturamento)


    aadd(aCab,{"F1_DOC"           ,cNum            ,NIL})
    aadd(aCab,{"F1_SERIE"          ,cSerie            ,NIL})
    aadd(aCab,{"F1_FORNECE"   ,cFornec         ,NIL})
    aadd(aCab,{"F1_LOJA"          ,cLoja              ,NIL})
    aadd(aCab,{"F1_EMISSAO"   ,DDATABASE   ,NIL})
    aadd(aCab,{"F1_DTDIGIT"     ,DDATABASE   ,NIL})
    aadd(aCab,{"F1_TIPO"        ,"N"                   ,NIL})
    aadd(aCab,{"F1_FORMUL"      ,"N"              ,NIL})
    aadd(aCab,{"F1_ESPECIE"     ,cEspecie        ,NIL})
    aadd(aCab,{"F1_COND"        ,"001"            ,NIL})
    aadd(aCab,{"F1_EST"           ,"SP"               ,NIL})
    aadd(aCab,{"F1_DESPESA" , 0                     ,NIL})
    aadd(aCab,{"F1_DESCONT" , 0                   ,NIL})
    aadd(aCab,{"F1_SEGURO" , 0                     ,NIL})
    aadd(aCab,{"F1_FRETE" , 0                        ,NIL})
    aadd(aCab,{"F1_MOEDA" , 1                     ,NIL})
    aadd(aCab,{"F1_TXMOEDA" , 1                 ,NIL})
    aadd(aCab,{"F1_STATUS" , "A"                  ,NIL})
    aadd(aCab,{"F1_VOLUME1",0                   ,NIL})
    aadd(aCab,{"F1_PLIQUI",0                        ,NIL})
    aadd(aCab,{"F1_PBRUTO",0                     ,NIL})

    For nX := 1 To 1
        cProd1 :="001             " 
        
        aItem := {}
        aadd(aItem,{"D1_ITEM"       ,StrZero(nX,4) ,NIL})
        aadd(aItem,{"D1_COD"        ,PadR(cProd1,TamSx3("D1_COD")[1]) ,NIL})
        aadd(aItem,{"D1_UM"         ,"UN"   ,NIL}) 
        aadd(aItem,{"D1_LOCAL"      ,"01"   ,NIL})
        aAdd(aItem, {"D1_PEDIDO" ,cPedido,Nil})
        aAdd(aItem, {"D1_ITEMPC", "0001",Nil})
        aadd(aItem,{"D1_QUANT"      ,100    ,NIL}) 
        aadd(aItem,{"D1_VUNIT"      ,100     ,NIL}) 
        aadd(aItem,{"D1_TOTAL"      ,10000      ,NIL})
        aadd(aItem,{"D1_TES"         ,cTes  ,NIL})
        aAdd(aItens,aItem)
    Next nX


   MSExecAuto({|x,y,z| MATA103(x,y,z)},aCab,aItens,nOpc)
    
    If lMsErroAuto 
        MostraErro()
    Else
        Conout("Entrega Futura incluída: " + cNum)
    Endif
Endif

 

/***********************************************************************/

// Documento de Entrada representando a remessa da mercadoria

aCab          := {}
aItem         := {}
aItens        := {}
nX            := 0


 If nOpc == 3

    aadd(aCab,{"F1_DOC"         ,cNum1    ,NIL})
    aadd(aCab,{"F1_SERIE"       ,cSerie     ,NIL})
    aadd(aCab,{"F1_FORNECE"     ,cFornec    ,NIL})
    aadd(aCab,{"F1_LOJA"        ,cLoja      ,NIL})
    aadd(aCab,{"F1_EMISSAO"     ,DDATABASE  ,NIL})
    aadd(aCab,{"F1_DTDIGIT"     ,DDATABASE  ,NIL})
    aadd(aCab,{"F1_TIPO"        ,"N"        ,NIL})
    aadd(aCab,{"F1_FORMUL"      ,"N"        ,NIL})
    aadd(aCab,{"F1_ESPECIE"     ,cEspecie   ,NIL})
    aadd(aCab,{"F1_COND"        ,"001"      ,NIL})
    aadd(aCab,{"F1_EST"         ,"SP"       ,NIL})
    aadd(aCab,{"F1_DESPESA" , 0 , Nil})
    aadd(aCab,{"F1_DESCONT" , 0 , Nil})
    aadd(aCab,{"F1_SEGURO" , 0 , Nil})
    aadd(aCab,{"F1_FRETE" , 0 , Nil})
    aadd(aCab,{"F1_MOEDA" , 1 , Nil})
    aadd(aCab,{"F1_TXMOEDA" , 1 , Nil})
    aadd(aCab,{"F1_STATUS" , "A" , Nil})
    aadd(aCab,{"F1_VOLUME1",0, Nil})
    aadd(aCab,{"F1_PLIQUI",0, Nil})
    aadd(aCab,{"F1_PBRUTO",0, Nil})

    For nX := 1 To 1
        cProd1 :="001             " 
        
        aItem := {}
        aadd(aItem,{"D1_ITEM"       ,StrZero(nX,4) ,NIL})
        aadd(aItem,{"D1_COD"        ,PadR(cProd1,TamSx3("D1_COD")[1]) ,NIL})
        aadd(aItem,{"D1_UM"         ,"UN"   ,NIL}) 
        aadd(aItem,{"D1_LOCAL"      ,"01"   ,NIL})
        aadd(aItem,{"D1_QUANT"      ,50     ,NIL}) 
        aadd(aItem,{"D1_VUNIT"      ,100    ,NIL}) 
        aadd(aItem,{"D1_TOTAL"      ,5000   ,NIL})
        aadd(aItem,{"D1_TES"        ,"496"  ,NIL})
        aadd(aItem,{"AUT_ENTFUT", {cNum,"100","0001",0,"0001",cFornec,cLoja},Nil})//Dados para nota fiscal de origem

        aAdd(aItens,aItem)
    Next nX


   MSExecAuto({|x,y,z| MATA103(x,y,z)},aCab,aItens,nOpc)
    
    If lMsErroAuto 
        MostraErro()
    Else
        Conout("Remessa Entrega Futura incluida: " + cNum1)
    Endif

Endif
RESET ENVIRONMENT

Return

 

Saiba Mais:

PCOM12003 - Documento de Entrada (Rotina Automática MATA103 - EXECAUTO)

PÁGINA CENTRALIZADORA COMPRAS 

Artigos Materiais - Compras (SIGACOM)

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

0 Comentários

Por favor, entre para comentar.
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 _