|
Bem Vindo, Visitante
|
Todos os Fórums
ADVPL
|
Imprimir
Enviar Para um Amigo Precisa estar Logado
|
|
|
Assunto: |
MATA215 - Refaz Acumulados |
|
Versão: |
12.1.25 |
|
Plataforma: |
Microsoft |
Complemento: |
|
|
DB: |
SQL Server |
Complemento: |
|
|
|
|
|
Mensagem do
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 |
|
|
Mensagem do
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
|
|