Inicia configuração de um POOL de AppServers que serão utilizados para distribuição/balanceamento de processos multi-thread.
Esta função pode ser invocada no início do programa, pois não é preciso acionar ela a cada execução. O objetivo desta função é carregar as configurações do POOL Job Threads existentes no arquivo de profile e avaliar se os AppServers configurados na lista de POOL Job Threads estão ativos e a conexão de banco é válida para o respectivo ambiente em uso, que também deverá existir com mesmo nome nos respectivos AppServers definidos para o POOL.
ATENÇÃO
O ambiente utilizado para execução do programa que inicia o POOL Job Threads, deverá também existir com as mesmas configurações nos demais AppServers configurados na lista de POOL Job Servers, ou seja, o ambiente deverá ter:
- O mesmo nome do ambiente onde o programa principal está sendo executado;
- Conectar o mesmo banco de dados que o programa principal conectou;
- Acessar o mesmo RPO (Repositório de Objetos) que o programa principal.
Para informações a respeito da configuração da lista de POOL Job Servers acesse LGX - Configuração POOL Job Threads.
Sintaxe
_ADVPL_PoolJobs_init( < cPoolMainName > ) => BOOLEAN
Parâmetros
Nome | Tipo | Obrigatório? | Descrição |
---|---|---|---|
cPoolMainName |
| Não | Nome principal do POOL de AppServers. Quando não informado, assumirá o nome do POOL com o nome do programa em execução. Este nome de POOL poderá ser utilizado para configurar a lista de AppServers no PROFILE para a chave jobServers. |
Retorno
Tipo | Descrição |
---|---|
BOOLEAN | Indicador de sucesso ou falha na identificação da lista de AppServers configurados como POOL de processos Jobs. TRUE - POOL de AppServers é válido e está aceitando conexões, ou assumiu AppServer atual como POOL, pois não encontrou POOL de AppServers configurado. FALSE - Detectou falha de conexão num dos AppServers configurados no POOL. Neste caso no LOG do AppServer principal será registrada mensagem de alerta com o detalhemanto do problema que foi identificado. |
Exemplo
DEFINE m_pooljob_name CHAR(30) #-----------------------------# FUNCTION POOLJOBS_init_test() #-----------------------------# #Nome do POOL de processamentos JOB para a empresa que estiver realizando o processamento. LET m_pooljob_name = "pool_teste" IF NOT _ADVPL_PoolJobs_init(m_pooljob_name) THEN CALL conout("PoolJobs não iniciado. Appservers do POOL não foram detectados ou houve falha de conexão.") RETURN END IF END FUNCTION
Informações
Fontes: log1200.prw
Observações
Para saber informações de como implementar o uso de POOL de Jobs acesse LGX - Exemplo de uso POOL Job Threads.