PERGUNTAS E RESPOSTAS
 
Bem Vindo, Visitante  Todos os Fórums
  ADVPL
Enviar para a impressoraImprimir  Enviar e-mail para um amigoEnviar Para um Amigo
Precisa estar Logado

Subject Assunto:
MATA215 - Refaz Acumulados
Versão:
12.1.25
Plataforma:
Microsoft
Complemento:
DB:
SQL Server
Complemento:
LinkedIn
Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário AVIANA86 AVIANA86 em 27/07/2020, 14:28 h
Local: BA  Registro: 01/11/2019  Postagens: 23
Boa tarde, pessoal!

Vi no TDN uma fomra de automatizar uma rotina chamada refazer acumuldados. Lá tem até a sintax que deve ser usada, mas como sou novo nessa ferramenta gostaria da orientação de você para implementar essa função.

Programa Fonte:
MATA215.PRX
Sintaxe:
MATA215 - Refaz Acumulados ( 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 "SA1","SB2","SC0","SC6","SC7","SC9","SD1","SD4","SE2","VCB" ;
MODULO "EST"


Exemplos
User Function jobm215()Local PARAMIXB := .T.           Local aemp := {"99","01"}PREPARE ENVIRONMENT EMPRESA aemp[1] Filial aemp[2] USER ‘Administrador‘ PASSWORD ‘senha‘ TABLES "SA1","SB2","SC0","SC6","SC7","SC9","SD1","SD4","SE2","VCB" MODULO "EST"MSExecAuto({|x| mata215(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                    
Caso fique ruim para entender, segue o link:
https://tdn.totvs.com/display/public/mp/MATA215+-+Refaz+Acumulados

Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário EMERSON.EN EMERSON.EN em 27/07/2020, 15:28 h
Local: SP  Registro: 20/08/2010  Postagens: 670
a implementação é como mostrado abaixo:

User Function jobm215()

Local PARAMIXB := .T. // aqui precisa ser .T. para indicar para a rotina que é execução automática
Local aEmp := {‘99‘,‘01‘} // empresa e filial onde será executada a rotina

     RpcClearEnv() // fecha algum ambiente aberto anteriormente
     RpcSetType(3) // indica que é uma execução automática, portando não deve consumir licenças
     RpcSetEnv(aEmp[1], aEmp[2], , ‘EST‘) // prepara o ambiente no módulo estoque para a empresa indicada no vetor aEmp
     OpenSxs() // abre o dicionário de dados
     InitPublic() // inicia as variáveis públicas
     SetsDefault() // configura os valores default (set dele, set century, etc)

     // executa automaticamente o procedimento, sem que haja
     // necessidade de interação com o usuário
     MSExecAuto({|x| mata215(x)}, PARAMIXB)

Return


pra executar você pode criar um job diretamente no ini, ou um schedule pelo configurador.

Para postar no Fórum você precisa efetuar o seu login ou se registrar

 Mudar para Fórum

 

 

 
 
   
Pagina Principal Shopping PROTHEUS Tire suas duvidas Vagas Microsiga em todo Brasil Aprofunde seus conhecimentos Noticias Online Fale Conosco Pagina Principal