Page tree

A103 - Entrada de Mercadorias

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):


Nome
Tipo
Descrição
Default
Obrigatório Referência

PARAMIXB1
Vetor
Array contendo o cabeçalho da Nota Fiscal de Entrada.







PARAMIXB2
Vetor
Array contendo os ítens da Nota Fiscal de Entrada.







PARAMIXB3
Numérico
Opção desejada: 3-Inclusão; 4-Alteração ; 5-Exclusão3






PARAMIXB4
Lógico
Indica se Apresenta ou não a Dialog da Rotina em Rotina Automática..F.






PARAMIXB5
Vetor
Parâmetro de uso interno TOTVS.






Nível de Acesso:Nível 1 (Acesso Clientes)

Idiomas:

Espanhol, Inglês

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos

Ponto de Entrada

Descrição:

Essa rotina permite o registro de qualquer movimento de entrada de mercadorias na empresa. A entrada das mercadorias inicia um processo de atualização on-line de dados financeiros e de estoques e custos. Além disso, permite que os materiais recebidos pelo Recebimento de Materiais sejam classificados e os devidos lançamentos efetuados.Este processo consiste na confirmação dos valores do recebimento, na informação das tributações aplicadas e dos dados contábeis financeiros.

Programa Fonte:

MATA103.PRW

Sintaxe:

MATA103 - Entrada de Mercadorias ( [ PARAMIXB1 ] [ PARAMIXB2 ] [ PARAMIXB3 ] [ PARAMIXB4 ] [ PARAMIXB5 ] ) --> Nil

Retorno:

Nil(nulo)
Nil

Variáveis:
Nome
Tipo
Escopo
Pode Alterar
Descrição


Array of Record
Global
Não


Observações:

Esta rotina pode ser utilizada via Rotina Automática.

Exemplo:
User Function MyMata103b()Local aCabec := {}Local aItens := {}Local aLinha := {}Local nX     := 0Local nY     := 0Local cDoc   := ""Local lOk    := .T.         Private lMsHelpAuto := .T.PRIVATE lMsErroAuto := .F.//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//| Abertura do ambiente                                         |//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙConOut(Repl("-",80))ConOut(PadC(OemToAnsi("Teste de Inclusao de 2 documentos de entrada com 2 itens cada"),80))PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "COM" TABLES "SF1","SD1","SA1","SA2","SB1","SB2","SF4"//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//| Verificacao do ambiente para teste                           |//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙDbSelectArea("SB1")DbSetOrder(1)If !SB1->(MsSeek(xFilial("SB1")+"PA001"))	lOk := .F.	ConOut(OemToAnsi("Cadastrar produto: PA001"))EndIfDbSelectArea("SF4")DbSetOrder(1)If !SF4->(MsSeek(xFilial("SF4")+"001"))	lOk := .F.	ConOut(OemToAnsi("Cadastrar TES: 001"))EndIfDbSelectArea("SE4")DbSetOrder(1)If !SE4->(MsSeek(xFilial("SE4")+"001"))	lOk := .F.	ConOut(OemToAnsi("Cadastrar condicao de pagamento: 001"))EndIfIf !SB1->(MsSeek(xFilial("SB1")+"PA002"))	lOk := .F.	ConOut(OemToAnsi("Cadastrar produto: PA002"))EndIfDbSelectArea("SA2")DbSetOrder(1)If !SA2->(MsSeek(xFilial("SA2")+"F0000101"))	lOk := .F.	ConOut(OemToAnsi("Cadastrar fornecedor: F0000101"))EndIfIf lOk	ConOut(OemToAnsi("Inicio: ")+Time())	//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿	//| Verifica o ultimo documento valido para um fornecedor        |	//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ	DbSelectArea("SF1")	DbSetOrder(2)	MsSeek(xFilial("SF1")+"F0000101z",.T.)	dbSkip(-1)	cDoc := SF1->F1_DOC	For nY := 1 To 2		aCabec := {}		aItens := {}		If Empty(cDoc)			cDoc := StrZero(1,Len(SD1->D1_DOC))		Else			cDoc := Soma1(cDoc)		EndIf		aadd(aCabec,{"F1_TIPO"   ,"N"})		aadd(aCabec,{"F1_FORMUL" ,"N"})		aadd(aCabec,{"F1_DOC"    ,(cDoc)})		aadd(aCabec,{"F1_SERIE"  ,"UNI"})		aadd(aCabec,{"F1_EMISSAO",dDataBase})		aadd(aCabec,{"F1_FORNECE","F00001"})		aadd(aCabec,{"F1_LOJA"   ,"01"})		aadd(aCabec,{"F1_ESPECIE","NFE"})		aadd(aCabec,{"F1_COND","001"})		aadd(aCabec,{"F1_DESPESA"   ,10})				aadd(aCabec,{"E2_NATUREZ","NAT01"})		For nX := 1 To 2			aLinha := {}			aadd(aLinha,{"D1_COD"  ,"PA001",Nil})			aadd(aLinha,{"D1_QUANT",1,Nil})			aadd(aLinha,{"D1_VUNIT",100,Nil})			aadd(aLinha,{"D1_TOTAL",100,Nil})			aadd(aLinha,{"D1_TES","001",Nil})			aadd(aItens,aLinha)		Next nX		//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿		//| Teste de Inclusao                                            |		//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ                MSExecAuto({|x,y| mata103(x,y)},aCabec,aItens)		If !lMsErroAuto			ConOut(OemToAnsi("Incluido com sucesso! ")+cDoc)		Else			ConOut(OemToAnsi("Erro na inclusao!"))		EndIf	Next nY	ConOut(OemToAnsi("Fim  : ")+Time())EndIfRESET ENVIRONMENTReturn(.T.)