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.) |