Árvore de páginas

MATA300 - Posição do Estoque

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


PARAMIXB
Lógico
Caso a rotina seja rodada em batch(.T.), senão (.F.)


X



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:

A função de saldo atual tem como objetivo principal calcular e fornecer a posição do estoque mediante os movimentos do sistema (NFs de entrada e saída e movimentos internos).

Para cada item em estoque o sistema recalcula estoque, saldos iniciais em quantidade e valor.

Importante:

Esta rotina pode ser executada com o sistema em uso por todos os usuários. Nesse caso, as movimentações que estejam acontecendo simultaneamente ao cálculo podem influenciar no resultado. Para que a rotina seja executada dessa forma o parâmetro MV_CUSTEXC deve estar com o conteúdo igual a "N".

Outra forma de execução (mais segura) é com o sistema em modo exclusivo, sem outros usuários utilizando os arquivos necessários ao cálculo. Para que a rotina seja executada dessa forma, o parâmetro MV_CUSTEXC deve estar com o conteúdo igual a "S'.

Programa Fonte:MATA300.PRX

Sintaxe:

MATA300 - Posição do Estoque ( PARAMIXB ) --> Nil

Retorno:

Nil

    (nulo)
  • Nil
Observações:

Esta função pode ser executada através de uma rotina automática.

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","SB9","SD1","SD2","SD3","SF4" ;
MODULO "EST"

Exemplo:
#include "rwmake.ch"#include "TbiConn.ch"User Function jobm300()Local PARAMIXB := .T.      //-- Caso a rotina seja rodada em batch(.T.), senão (.F.)     Local aemp := {"99","01"}  //-- "Empresa","Filial"PREPARE ENVIRONMENT EMPRESA aemp[1] Filial aemp[2] USER 'Administrador' PASSWORD '' TABLES  "SB1","SB2","SB9","SD1","SD2","SD3","SF4" MODULO "EST"MSExecAuto({|x| mata300(x)},PARAMIXB)RESET ENVIRONMENTReturn Nil