import.css=/download/attachments/327912/newLayout.css

Função: MATA280 - Transferência de Saldo

 

Versões:Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Microsiga Protheus 10, Microsiga 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:Espanhol, Inglês

 

Descrição:

OBJETIVO :
O objetivo da função MATA280 é fazer com que os saldos finais, calculados pelas rotinas de Recálculo do Custo Médio ou Saldo Atual para Final, sejam transferidos como saldo inicial da data estipulada.

IMPORTANTE:
Ao realizar a Virada de Saldos, o Sistema procede a geração de arquivos que comportem os saldos iniciais do próximo período, além de impedir que movimentos com data menor ou igual a data do fechamento sejam incluídos.

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:

MATA280.PRX

  
Sintaxe:

MATA280 - Transferência de Saldo ( PARAMIXB[1]PARAMIXB[2] [ PARAMIXB[3] ] [ PARAMIXB[4] ] [ PARAMIXB[5] ] [ PARAMIXB[6] ] [ PARAMIXB[7] ] [ PARAMIXB[8] ] [ PARAMIXB[9] ] ) --> Nil

  
Retorno:
Nil
  
Observações
  • Esta função pode ser executada por meio de uma rotina automática.
  • A data do fechamento deve ser igual a da rotina MATA330 (Recalculo do Custo MEDIO / FIFO / LIFO)
  • Se a empresa possuir várias filiais e deseja-se que a Virada de Saldos seja realizada de forma individual, deve ser criado via Configurador um parâmetro MV_ULMES exclusivo para cada filial. O parâmetro MV_ULMES sem indicação de filial deverá ser removido.

 

No exemplo abaixo, existe a preparação do ambiente para rodar esta rotina, 
que é feita pelo 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 "SB2","SB9","SC2","SD1","SD2","SD3","SB1","SF1","SF2" ;
MODULO "EST"

 

#INCLUDE "RWMAKE.CH"   
#INCLUDE "TBICONN.CH"
User Function My280()
  
Local lBat     := .T.  //-- Caso a rotina seja rodada em batch(.T.), senão (.F.)
Local dDataFecLocal cArq1    := "ARQF1"  //-- Arquivo onde serão descarregados os dados do arquivo SF1
Local cArq2    := "ARQD1"  //-- Arquivo onde serão descarregados os dados do arquivo SD1
Local cArq3    := "ARQF2"  //-- Arquivo onde serão descarregados os dados do arquivo SF2
Local cArq4    := "ARQD2"  //-- Arquivo onde serão descarregados os dados do arquivo SD2
Local cArq5    := "ARQD3"  //-- Arquivo onde serão descarregados os dados do arquivo SD3
Local cArq6    := "ARQC2"  //-- Arquivo onde serão descarregados os dados do arquivo SC2
Local cArq7    := "ARQF9"  //-- Arquivo onde serão descarregados os dados do arquivo AF9
PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" USER 'Administrador' PASSWORD 'senha' MODULO "EST" TABLES "SB2","SB9","SC2","SD1","SD2","SD3","SB1","SF1","SF2"
pergunte("MTA330",.F.)
dDataFec := MV_PAR01dbSelectArea("SM0")                                                                            
dbGoTop()
dbSeek("9901")
AADD(aEmpresas,M0_CODIGO+M0_CODFIL)
MATA280(lBat,dDataFec,cArq1,cArq2,cArq3,cArq4,cArq5,cArq6,cArq7)
RESET ENVIRONMENT
Return Nil

 

Parâmetros:

 

NomeTipoDescriçãoDefaultObrigatórioReferência
PARAMIXB[1]LógicoCaso a rotina seja rodada em batch (.T.), senão (.F.) X 
PARAMIXB[2]DataData do fechamento X 
PARAMIXB[3]Caracter5 primeiros caracteres do arquivo onde serão descarregados os dados do arquivo SF1 (Cabeçalho das Notas Fiscais de Compra)   
PARAMIXB[4]Caracter5 primeiros caracteres do arquivo onde serão descarregados os dados do arquivo SD1(Ítens das Notas Fiscais de Compra)   
PARAMIXB[5]Caracter5 primeiros caracteres do arquivo onde serão descarregados os dados do arquivo SF2 (Cabeçalho das Notas Fiscais de Venda)   
PARAMIXB[6]Caracter5 primeiros caracteres do arquivo onde serão descarregados os dados do arquivo SD2(Ítens das Notas Fiscais de Venda)   
PARAMIXB[7]Caracter5 primeiros caracteres do arquivo onde serão descarregados os dados do arquivo SD3 (Movimentações Internas)   
PARAMIXB[8]Caracter5 primeiros caracteres do arquivo onde serão descarregados os dados do arquivo SC2 (Ordens de Produção)   
PARAMIXB[9]Caracter5 primeiros caracteres do arquivo onde serão descarregados os dados do arquivo AF9 (Tarefas de Projetos)