× Linguagem de Programação ADVPL

Perguntas Trocar de empresa em tempo de execução

Mais
11 anos 1 mês atrás #17791 por Rstrozi
Boa tarde Pessoal,

Alguém já fez a troca de empresa em tempo de execução?

Aqui, após a execução de uma rotina, preciso gerar um movimento interno em 2 empresas diferentes, utilizando um MsExecAuto.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17792 por kanaamlrr
Chama essa função aqui passando como parâmetro a nova empresa/filial
User Function ALTEMP(cEmp, cFil)

Local cemp:=cEmp
Local cfil:=cFil
	
	dbcloseall()
	cempant :=cemp
	cfilant :=cfil 
	cNumEmp :=cemp+cfil
	Opensm0(cempant+cfil)
 	Openfile(cempant+cfil)
	lrefresh :=.T.
	       
Return

Importante garantir que todas as informações que você vai precisar estejam em variáveis e não em tabelas, pois ele fecha todas as tabelas abertas e abre novamente na nova empresa.
Abraço!

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17793 por kanaamlrr
Rafael,
outra alternativa é fazer uma chamada de uma função como se fosse um job, dessa forma não precisaria necessariamente trocar de empresa, você apenas estaria abrindo uma nova sessão com a nova empresa e rodando o execauto.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17801 por Rstrozi
Boa tarde Kanaam,

depois da execução seria interessante rodar um RpcClearEnv() para voltar à empresa anterior?

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 mês atrás #17802 por kanaamlrr
Rafael,
Aqui não utilizei, mas seria uma boa sim.

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 11 meses atrás #19527 por dgarcia
Boa tarde galera, seguinte estou com um ponto de entrada para ser executado apenas em uma empresa do grupo onde na mesma base existem outras.

Esta função que você passou kanaãm executaria para este caso que preciso?

Obrigado

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.103 segundos
Joomla templates by a4joomla