Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

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.

Bloco de código
titleExemplo:
 
linenumberstrue
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.)