Home

Linha Microsiga Protheus

Páginas filhas
  • MATA300 - Posição do Estoque

Função: MATA300 - Posição do Estoque
Versões: Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10
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: Espanhol , Inglês
Descrição:

OBJETIVO:
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"


 

 


 

Exemplos
#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
Parâmetros:
Nome Tipo Descrição Default Obrigatório Referência
PARAMIXB Lógico Caso a rotina seja rodada em batch(.T.), senão (.F.) X