Árvore de páginas

Versões comparadas

Chave

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

MATA380 - Ajustar os Empenhos

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

aVetor
Array of records
Array com os campos da tabela SD4 para execução do ajuste.


X




nOpc



numérico


Número da opção a executar

3 = Incluir

4 = Alterar

5 = Excluir




X



aEmpen
Array of records
Array com quantidade, localização (endereço) e número de série






Nível de Acesso:Nível 1 (Acesso Clientes)
Idiomas:Português (Brasil)

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos

Ponto de Entrada

Descrição:

Esta rotina possui a finalidade de ajustar os empenhos de produtos solicitados nas OPs.

Os empenhos devem ser ajustados sempre que houver diferenças entre o material que foi empenhado para uma determinada ordem de produção e a quantidade realmente utilizada para a execução desta ordem ou substituição de um componente por outro antes da produção. Essas diferenças podem ocorrer, por exemplo, devido ao índice de perda de material utilizado ou seu aproveitamento na fabricação do produto final.

O sistema considera o índice de perda informado no cadastro de Estruturas para realizar os cálculos das quantidades a serem empenhadas.

Exemplo: uma empresa utiliza uma lata de tinta no acabamento de uma peça, porém, na prática, para revestir a peça é utilizada quase toda a lata, mas, sempre sobra tinta (uma quantidade muito pequena para ser mensurada). Em média a cada 150 peças fabricadas utilizam-se 149 latas de tinta. Sendo assim, quando essa quantidade (150 peças) for atingida, é necessário ajustar o empenho retirando uma lata da quantidade empenhada.

Em Ajuste de Empenho é possível efetuar: Inclusão de Ajuste de Empenho; Alteração de Ajuste de Empenho; Exclusão de Ajuste de Empenho.

ATENÇÃO: Para alteração do campo "Lote" (D4_LOTECTL) deverá ser utilizado o MsExecAuto do MATA381 conforme documentação a seguir: PSIGAPCP0301 - Exemplo de ExecAuto da rotina Empenhos Múltiplos (MATA381)

Programa Fonte:

MATA380.PRX

Sintaxe:

 MATA380 - Ajuste de Empenhos ( [ aVetor ] [ nOpc ] ) --> Nulo

Retorno:

  Nulo()

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


Array of Record
Global
Não


Observações:


Bloco de código
titleBloco de Código
linenumberstrue
#INCLUDE "PROTHEUS.CH"
#include "rwmake.ch"
#include "TbiConn.ch"
 
User Function auto380()
 
Local aVetor := {}
Local aEmpen := {}
Local nOpc   := 3 //Inclusao
 
PREPARE ENVIRONMENT EMPRESA "01" FILIAL "01" MODULO "EST"
 
lMsErroAuto := .F.
 
aVetor:={   {"D4_COD"     ,"PROD113        ",Nil},; //COM O TAMANHO EXATO DO CAMPO
            {"D4_LOCAL"   ,"01"             ,Nil},;
            {"D4_OP"      ,"00005201001  "  ,Nil},;
            {"D4_DATA"    ,dDatabase        ,Nil},;
            {"D4_QTDEORI" ,30               ,Nil},;
            {"D4_QUANT"   ,30               ,Nil},;
            {"D4_TRT"     ,"   "            ,Nil},;
            {"D4_QTSEGUM" ,0                ,Nil}}
             
AADD(aEmpen,{   30                 ,;   // SD4->D4_QUANT
                "END01          ",;  // DC_LOCALIZ
                ""                 ,;  // DC_NUMSERI
                0                  ,;  // D4_QTSEGUM
                .F.}) 
 
MSExecAuto({|x,y,z| mata380(x,y,z)},aVetor,nOpc,aEmpen) 
 
If lMsErroAuto
    Alert("Erro")
    MostraErro()
EndIf
 
Return