Histórico da Página
A103 - Entrada de Mercadorias
Linha de Produto: | Protheus | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Segmento: | Manufatura | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Módulo: | SIGAPCP - Planejamento e Controle da Produção | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Parâmetro(s): |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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) | ||||||||||||||||||||
Variáveis: |
| ||||||||||||||||||||
Observações: | Esta rotina pode ser utilizada via Rotina Automática. |
Bloco de código | ||
---|---|---|
|
| |||
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.) |