Árvore de páginas

01. DADOS GERAIS

Linha de Produto:Microsiga Protheus®
Segmento:Serviços
Módulo:SIGAPMS - Gestão de Projetos
Função:PMSXFUN - Funções genéricas PMS
Abrangências:Microsiga Protheus 12
Versões:Microsiga Protheus 12
Compatível Países:Todos
Sistemas Operacionais:Todos
Compatível com as Bases de Dados:Todos
Nível de Acesso:Nível 1 (Acesso Clientes)
Idiomas:Todos

02. DESCRIÇÃO

Função utilizada para geração de uma Nota Fiscal de Entrada vinculada a um Projeto PMS via rotina automática (ExecAuto).

03. SINTAXE

MSExecAuto({|a, b, c, d, e, f| MATA103(a, b, c, d, e,f )}, aCabec, aItens, nOpcX, , , aItemRat)

04. PARÂMETROS

NomeTipoDescriçãoDefaultObrigatórioReferência
aCabecArray de registrosArray contendo os campos do cabeçalho (SF1)
Sim
aItensArray de registrosArray contendo os campos dos itens (SD1)
Sim
nOpcXNumérico (opção de execução)3 = Inclusão
Sim
aItemRatArray de registrosArray contendo os rateios dos itens do Projeto PMS (AFN){}Não

05. RETORNO

Nulo

06. EXEMPLO


Este é o exemplo básico para a execução da Rotina Automática de Documento de Entrada amarrado a um projeto PMS

#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"

User Function MyMata103()

Local cNumero     := '000000001'
Local cSerie      := 'A'
Local cECdFor     := '000001'
Local cELjFor     := '01'
Local cPEEspec    := 'NFE'
Local cPEConPg    := '001'
Local cNumIte     := '0001'

Local nI := 0

Local xEAutoCab   := {}
Local xEAutoItens := {}
Local xAutoIt     := {}
Local xAutoRat    := {}
Local aProj     := {}
Local aItemxProj     := {}

PRIVATE lMsErroAuto := .F.
 
 PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" MODULO "COM" TABLES "SF1","SD1","SB1","SB2","SF4","AFN"              
 
 DBSelectArea("SA2")
 DBSetOrder(1)
 DBSeek(xFilial("SA2")+cECdFor+cELjFor)
 
 aAdd(xEAutoCab,{"F1_TIPO"    ,"N"        ,Nil})
 aAdd(xEAutoCab,{"F1_FORMUL"    ,"N"        ,Nil})
 aAdd(xEAutoCab,{"F1_DOC"    ,cNumero    ,Nil})
 aAdd(xEAutoCab,{"F1_SERIE"    ,cSerie        ,Nil})
 aAdd(xEAutoCab,{"F1_EMISSAO",ddatabase    ,Nil})
 aAdd(xEAutoCab,{"F1_FORNECE",cECdFor    ,Nil})
 aAdd(xEAutoCab,{"F1_LOJA"    ,cELjFor    ,Nil})
 aadd(xEAutoCab,{"F1_ESPECIE",cPEEspec   ,Nil})
 aadd(xEAutoCab,{"F1_COND"    ,cPEConPg    ,Nil})
 aadd(xEAutoCab,{"F1_EST"    ,"SP",Nil})
 
 DBSelectArea("SB1")
 DBSetOrder(1)
 cNumIte := strzero(0,TamSX3("D1_ITEM")[1])
 For ni := 1 to 1
     xAutoIt := {}
     cNumIte := SOMA1(cNumIte)
     aAdd(xAutoIt,{"D1_ITEM"    ,cNumIte                         ,Nil})
     aAdd(xAutoIt,{"D1_COD"    ,'COMSP0000000000MAT103CT014'                     ,Nil})
     aAdd(xAutoIt,{"D1_UM"   ,"CX"                        ,Nil})
     aAdd(xAutoIt,{"D1_QUANT", 1                      ,Nil})
     aAdd(xAutoIt,{"D1_VUNIT",100    ,Nil})
     aAdd(xAutoIt,{"D1_TOTAL",100            ,Nil})
     aAdd(xAutoIt,{"D1_EMISSAO",dDataBase                    ,Nil})
     aAdd(xAutoIt,{"D1_LOCAL","01",Nil})
     aAdd(xAutoIt,{"D1_TES"    ,"001"                          ,Nil})

     aadd(xEAutoItens,aClone(xAutoIt))

 Next
 //-- Amaração por Projeto
 aAdd(xAutoRat, "COM0000001")								//PROJETO
 aAdd(xAutoRat, "01.01")										//TAREFA
 aAdd(xAutoRat, 1)											//QUANTIDADE
 aAdd(xAutoRat, "   ")										//TRT
 aAdd(xAutoRat, "0002")										//REVISA
 aAdd(xAutoRat, 0)											//QTSEGU
 aAdd(xAutoRat, "1")											//ESTOQU
 aAdd(xAutoRat, "                                          ")//AFN_ID
 aAdd(xAutoRat, "                    ")						//CONTRA
 aAdd(xAutoRat, .F.)
 aAdd(aProj, xAutoRat)

 aAdd (aItemxProj, {"0001",aProj}) // Amarração do projeto ao Item 0001 da NFE

 MSExecAuto({|a,b,c,d,e,f| MATA103(a,b,c,d,e,f)},xEAutoCab,xEAutoItens,3,,,aItemxProj)
 //
 If lMsErroAuto
     Mostraerro()
 EndIf

RESET ENVIRONMENT

Return Nil



04. DEMAIS INFORMAÇÕES

Não há.

05. ASSUNTOS RELACIONADOS

  • Não há.