Histórico da Página
Abrangências: | Microsiga Protheus |
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
...
...
11 , Protheus 10 | |
Versões: | Protheus 11 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Nível de Acesso: | Nível 1 (Acesso Clientes) |
Idiomas: |
...
Português (Brasil) |
Descrição:
Objetivo:
...
cadastramento de
...
Ordens
...
de
...
Produção,
...
documento
...
que
...
inicia
...
o
...
processo
...
de
...
fabricação
...
do
...
produto,
...
relacionando
...
todos
...
os
...
componentes
...
e
...
as
...
etapas
...
de
...
fabricação
...
determinadas
...
pela
...
sua
...
estrutura.
...
Além
...
disso,
...
é
...
essencial
...
na
...
geração
...
das
...
requisições
...
dos
...
materiais.
Importante:
...
O
...
sistema
...
administra
...
as
...
OPs
...
da sua
...
geração
...
ao seu
...
término.
...
A
...
ordem
...
de
...
produção
...
pode
...
ser
...
incluida:
...
manualmente,
...
OPs
...
por
...
Pedidos
...
de
...
Venda,
...
através
...
da
...
geração
...
de
...
OPs
...
por
...
ponto
...
de
...
pedido,
...
através
...
do
...
MRP
...
(projeção
...
de
...
estoque)
...
É
...
possível
...
identificar
...
as
...
OPs
...
incluídas
...
manualmente
...
e
...
as
...
geradas
...
automaticamente,
...
através
...
de
...
seus
...
códigos.
As
...
OPs
...
são
...
referenciadas
...
nas
...
atualizações
...
e
...
consultas
...
através
...
da
...
seguinte
...
composição
...
de
...
código.
Número
...
da
...
OP
...
+
...
Item
...
+
...
Sequência
As
...
atualizações
...
das
...
OPs
...
são
...
efetuadas
...
pela
...
informação
...
das
...
movimentações
...
internas
...
(baixa).
...
Uma
...
OP
...
é
...
encerrada,
...
quando
...
o
...
sistema
...
detecta
...
uma
...
movimentação
...
do
...
Tipo
...
Produção
...
para
...
o
...
valor
...
total
...
da
...
OP,
...
ou
...
quando
...
a
...
soma
...
de
...
movimentações
...
do
...
Tipo
...
Produção
...
totaliza
...
a
...
quantidade
...
original
...
da
...
OP.
O
...
custeio
...
de
...
uma
...
OP
...
é
...
calculado
...
através
...
da
...
soma
...
dos
...
custos
...
dos
...
componentes
...
por
...
nível,
...
até
...
o
...
nível
...
do
...
produto
...
pai.
É
...
possível
...
visualizar
...
o
...
andamento
...
do
...
processo
...
de
...
execução
...
das
...
OPs
...
através
...
da
...
opção
...
"Gráfico"
...
na
...
janela
...
de
...
manutenção
...
de
...
Ordens
...
de
...
Produção.
Quando
...
uma
...
ordem
...
de
...
produção
...
é
...
incluida,
...
o
...
sistema
...
verifica
...
automaticamente
...
tudo
...
o
...
que
...
é
...
necessário
...
para
...
que
...
esta
...
produção
...
possa
...
ser
...
executada
...
e
...
efetua
...
o
...
empenho
...
de
...
todos
...
os
...
materiais
...
necessários
...
conforme
...
determinado
...
em
...
sua
...
estrutura.
Programa
...
fonte:
...
MATA650.
...
PRX
Sintaxe:
...
MATA650 - Cadastro de Ordem de Produção (
...
aRotAuto, nOpcAuto ) --> Nil
Retorno:
...
Nil (
...
Nulo)
Observações
...
: O parâmetro AUTEXPLODE demonstrado no exemplo abaixo é preenchido na execução da rotina automática para definir se as OP's
...
intermediárias e as solicitações de compras que ainda não foram geradas devem ser geradas automaticamente ou não.
Obs.: Para cadastros manuais é apresentada uma mensagem ao sair do ambiente de cadastro da Ordem de Produção perguntado se as OP's intermediárias e as solicitações de compras devem ser geradas.
O segundo parâmetro da Rotina Mata650 refere-se as opções de execução onde:
1 = Pesquisa
2 = Visualização
3 = Inclusão
4 = Alteração
5 = Exclusão
Bloco de código | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||
#Include 'Protheus.ch'
No exemplo abaixo, existe a preparação do ambiente para rodar esta rotina, que é feita através do comando Prepare Environment. // aemp[1] = Empresa (Caracter) // aemp[2] = Filial (Caracter) // Administrador = Através de qual usuário irá executar a rotina. (Caracter) // senha = Senha do usuário (Caracter) PREPARE ENVIRONMENT EMPRESA aemp[1] ; FILIAL aemp[2] ; USER 'Administrador' ; PASSWORD 'senha' ; TABLES "SB1","SB2","SC1","SC2","SC3","SC4","SC5","SC6", "SD3","SD4","SG1" ; MODULO "PCP" Exemplos #include "rwmake.ch" #include "TbiConn.ch" User FunctionTmata650 AUTO_650() Local aMATA650 := {} //-Array com os camposLocal nOpc := 3 //-Opção a ser ExecutadaLocal cProduto := "TESTE"Local nQuant := 10 RpcSetEnv( "99","01",,,,,,,,,) //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³ 3 - Inclusao ³ //³ 4 - Alteracao ³ //³ 5 - Exclusao ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Local nOpc := 5 Private lMsErroAuto := .F. PREPARE ENVIRONMENT EMPRESA "01" FILIAL "0101" aMata650 := { {'C2_PRODUTO FILIAL' ,cProduto "0101" ,NIL},; {'C2_ QUANTPRODUTO' ,"PROD001 ",nQuant ,NIL},; {'C2_DATPRI NUM' ,dDatabase "000097" ,NIL},; {'C2_DATPRF ITEM',dDatabase ,"01" ,NIL},; {'AUTEXPLODE C2_SEQUEN' ,'S' "002" ,NIL}} ConOut("Inicio : "+Time()) //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //³ Se alteracao ou exclusao, deve-se posicionar no registro ³ //³ da SC2 antes de executar a rotina automatica ³ //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ If nOpc == 4 .Or. nOpc == 5 SC2->(DbSetOrder(1)) // FILIAL + NUM + ITEM + SEQUEN + ITEMGRD SC2->(DbSeek(xFilial("SC2")+"000097"+"01"+"002")) EndIf msExecAuto({|x,Y| Mata650(x,Y)},aMata650,nOpc) If !lMsErroAuto ConOut("Sucesso! ") Else ConOut("Erro!") MostraErro() EndIf ConOut("Fim : "+Time()) RESETENVIRONMENTReturn ENVIRONMENT Return NilParâmetros: | Nome | Tipo | Descrição | Default | Obrigatório | Referência | aRotAuto | Array of Record | Array com os campos, informações para o cadastro. | X | nOpcAuto | Numérico | Opção a ser executada. | X