Que o parâmetro geral Utilisazação dos ficheiros batch seja igual a Sim nos parâmetros parâmetros do servidor batch.
Que o parâmetro EXTBATCH seja igual a Sim. Este parâmetro, que pertence ao grupo SUP, pode ser definido ao nível dossier e utilizador. É assim possível de interdir globalmente o lançamento de pedidos batch desta maneira para um dossier dado, em acordando se necessário uma excepção aos utilizadores designados.
O lançamento de um pedido batch pode ser realizado pelo depósito de um ficheiro de extenção .job no directório dedicado a estes ficheiros. Este ficheiro deve ser de tipo ascii, estruturado em linha terminados por <CR> ou <CR><LF>, cada lonha definindo o valor de um parâmetro sob a forma:
PARÂMETRO=VALOR
Certos parâmetros são obrigatórios e identifcando o contexto de execução do pedido. Outros parâmetros dependem do pedido a lançar; o seu nome corresponde ao nome dos parâmetros definidos no ecrã associado ao lançamento do pedido. Nestes casos, um quadro de parâmetros está definido no ecrã; a sintaxe é então PARÂMETRO(indice)=VALOR, indice
Afim de facilitar a criação de um tal ficheiro, é possível de lançar o pedido depois o software, em assinalando a check box modelo no ecrã de lançamento dos pedidos. Se este facto, um ficheiro contendo a lista completa dos parâmetos de lançamento e seu valor será criado no directório de lançamento. Este ficheiro está criado com o nome do pedidos e extenções .mod.
Encontrar-se-á no quadro a seguir o nome dos parâmetros obrigatórios e sua definição.
PARÂMETRO | DEFINIÇÃO |
Dossier : | O código do dossier sobre o qual o pedido deve ser lançado |
UTIL | O código do utilizador de conexão ao dossier |
PASSE | A palavra passe encriptada do utilizador |
GRP | O grupo de pedidos (se um grupo está lançado) |
TAREFA | O pedido (se um pedido é lançado) |
DATA | A data de lançamento (ao formato AAAAMMDD) |
HORA | A hora de lançamento (ao formato HHMM) |
Deve-se referir que os valores do parâmetro são dados sem separador de nenhuma classificação, e que é possível de colocar as linhas de comentários pré-fixados pelo caracter #. Assim, poderemos colocar no ficheiro de pedidos:
# Parâmetros obrigatórios
DOSSIER=DEMO
DATA=20020614
…
# Parâmetros complementares
PARAM(1)=TEST
PARAM(2)=TEST
O servidor batch inspecciona a intervaloes regulares o conteúdo do directório dedicado aos ficheiros de pedido. No momento da inspecção, ele lê os ficheiros presentes no directório tomandos-os na ordem de classificação ascii. Assim, é aconselhado de nomear estes ficheiros com uma raíz ficha e um número sequêncial sobre comprimento fixo. Poder-se-á por exemplo os nomear REQ000001.req, REQ0000002.req…
No momento de cada ficheiros, ficheiros são criados sucessivamente nos diferentes directórios definidos pelos parâmetros do servidor batch
ETAPA DE TRATAMENTO | FICHEIROS ACTUALIZADOS |
Depósito de um pedido de tratamento batch | Criação do ficheiro xxxxx.job por um processo externo, no directório dedicado. |
O servidor batch toma em conta o pedido e coloca em dia a sua tabela de pedidos a lançar | O ficheiro xxxxx.job está renomeado em xxxxx.req (e deslocado se os directórios não são os mesmos) |
O servidor detecta um erro no ficheiro de parâmetros (password incorrecto, código tarefa desconhecido...) | O ficheiro xxxxx.job está renomeado em xxxxx.old (e deslocado se os directórios não são os mesmos). Um ficheiro xxxxx.sta está criado no directório dedicado. Contém um código de erro permitindo saber que o ficheiros de entrada estão incorrectos (cf. formato do ficheiro a seguir). |
O pedido está em curso de execução, o servidor batch o tendo lançado | O ficheiro xxxxx.req está renomeado em xxxxx.old (e deslocado se os directórios não são os mesmos). Um ficheiro xxxxx.run está criado no directório dedicado. |
O pedido está terminado (correctamente ou com um erro) | O ficheiro xxxxx.run está apagado, e um ficheiro xxxxx.sta está criado no directório dedicado : este ficheiro contém um status de devolução (cf. formato do ficheiro a seguir). |
Depósito de um pedido de interrupção de pedido batch (em espera de lançamento ou já lançado) | Criação do ficheiro xxxxx.kil por um processo externo, no directório dedicado. |
Tomada em conta do pedido de interrupção (se o pedido não foi ainda lançado) | O ficheiro xxxxx.req (ou o ficheiro xxxxx.job se ele não foi ainda tomado em conta) é renomeado em xxxxx.old. Um ficheiro xxxxx.sta está criado no directório dedicado. Contém um código de erro permitindo de saber que o pedido foi interrompido sem ter sido lançado O ficheiro xxxxx.kil está apagado. |
Tomada em conta do pedido de interrupção (se o pedido não foi ainda lançado) | O pedido está interrompido por killadx, pelo ficheiro xxxxx.sta está criado no directório dedicado, com um código permitindo de saber que o pedido foi interrompido. Os ficheiros xxxxx.kile xxxxx.run são apagados. |
Conta tida das prioridades de execução ou da paragem do servidor batch, o pedido não pode ser lançado nos atrasos previstos (pedido fora atraso). | O pedido não foi lançado, mas o ficheiro xxxxx.req (o ficheiro xxxxx.job se for caso disso) é renomeado em xxxx.old e deslocado se necessário. Um ficheiro xxxxx.sta está criado no directório dedicado. Contém um código de erro permitindo de saber que o pedido foi interrompido não pode ter sido lançado |
Deve-se notar que o facto que um ficheiro xxxxx.run existe não significa necessáriamente que o pedido em questão volte. Com efeito, se o servidor batch foi parado sem que os pedidos que giram ainda não foram parados, os ficheiros xxxxx.run correspondentes existirão sempre que o pedido foi terminado no seu tratamento. Neste caso,o ficheiro xxxxx.sta não será mais criado. Por outro lado, quando o servidor será lançado de novo, o ficheiro xxxxx.run será apagado, um ficheiro xxxxx.sta contendo um status particular sendo então criado.
O número de pedidos batch em curso de tratamento não pode então forçosamente se deduzir so número de ficheiros xxxxx.run apresenta no directório dedicado.
Estes ficheiros são fischeiros ascii, codificados em ascii 8 bits, presentes nos diferentes directórios, segundo a parametrização:
A estrutura da linha única contém nos ficheiros .run e .sta é a seguinte:
O esquema exacto é o seguinte:
No status | No pedido | Data e hora de início | Data e hora de fim | Código dossier | Código utilizador | Código da tarefa | Mensagem em claro | Fim de linha |
NNNNN | NNNNNNNN | AAAAMMDDHHMMSS | AAAAMMDDHHMMSS | DDDDDDDDDD | UUUUU | TTTTTTTTTT | XXXXXXXXXXXXXXXXXX | <CR> |
5 cifras | 8 cifras | 14 cifras | 14 cifras | (10 caracteres) | (5 caracteres) | (10 caracteres) | (80 caracteres) | (1 ou 2 bytes) |
A zona mensagem permite de explicitar o código erro se necessário. Ela está armazenada em comprimento fixo 80 caracteres (a mensagem sendo completada por espaços se necessário).
O número de pedido está estocado em 8 caracteres, préfixado por zeros se necessário. Este número permite conhecer o nome do ficheiro de rasto gerado na execução do pedido. Com efeito, este ficheiro se chamaRQTNNNNNNNN.tra (NNNNNNNN sendo o número de pedido sobre 8 caracteres). Encontra-mo-lo no sub-directório TRA do dossier SERVX3. Deve-se notar que o número pode ser nulo em certos casos de erro, quando nenhum pedido pode ser lançado.
O código da tarefa corresponde à tarefa ou ao encaminhamento de tarefas lançadas, tal que é conhecido na tabela das tarefas ou dos encadeamentos.
O código status, sobre 5 caracteres numéricos, permitindo de conhecer o resultado da execução. O primeiro algorismo determina o resultado global de execução, as somas seguintes dão as informações complementares. Quando o pedido está terminado sem erro e sem advertência, temos um código de erro igual a 00000. O detalhe dos códigos está dado aqui em baixo:
Valor do código erro sobre 5 algarismos | Mensagem em claro | |||
Primeiro algarismo | Significado | Complemento | Significado |
|
0 | Fim normal de tratamento | 0000 | Sem advertência | PEDIDO TERMINADO |
NNNN | Com NNNN advertência no rasto (9999 se 9999 ou mais). | PEDIDO TERMINADO COM AVERTÊNCIAS | ||
1
| Fim de tratamento sobre erro
| 0000 | Erro não especificado (por exemplo se GOK=-1 e sem informações suplementares) | PEDIDO TERMINADO COM ERRO DESCONHECIDO |
1NNN | Erro no NNNN do motor adonix (mensagem M) | FIM SOBRE ERRO SAGE: M | ||
2000 | Erro de fecho (GOK=0) | ERRO DE FECHO | ||
3NNN | Erro lógico de tratamento com: NNN =valor variável GERRBATCH, | PEDIDO TERMINADO COM ERRO M | ||
Nota importante :
| ||||
2
| Tratamento não lançado
| 1000 | A tarefa foi programada a uma hora dada, mas não pode ser lançada nos atrasos previstos. | ATRASO ULTRAPASSAGEM |
2000 | Tarefa inexistente | TTTTAREFA INEXISTANTE | ||
3000 | Habilitação (não especificada) | TRATAMENTO NÃO LANÇADO PORQUE PROBLEMA DE HABILITAÇÃO NÃO ESPECIFICADA. | ||
3100 | Habilitação (utilizador U desconhecido). | UTILIZADOR U DESCONHECIDO | ||
3200 | Habilitação (password incorrescta para o utilizador U) | PASSWORD INCORRECTO PARA O UTILIZADOR U) | ||
3300 | Habilitação (recusa por ponto de entrada) | TRATAMENTO NÃO LANÇADO PORQUE RECUSAS POR PONTO DE ENTRADA | ||
3400 | Habilitação (nível N da tarefa interdita ao utilizador Uinsuficiente) | NÍVEL DE ACESSO N NÃO AUTIRIZA O UTILIZADOR U | ||
3500 | Habilitação (função F não autorizada ao utilizador U) | F FUNÇÃO NÃO AUTORIZADA AO UTILIZADOR U | ||
4NNN | Passagem em modo impossível (NNNutilizadores em curso) | PASSAGEM EM MODO MONO IMPOSSÍVEL PORQUE NNN UTILIZADORES CONECTADOS | ||
5000 | Tratamento T inexistente | TRATAMENTO T INEXISTENTE | ||
3 | Paragem do tratamento | 0000 | Paragem do tratamento, razão desconhecida (por exemplo se um processo outro que o servidor batch o pediu) | PEDIDO INTERROMPIDO (RAZÃO DESCONHECIDA) |
1000 | Por ficheiro de extensão .kil , contida o mensagem M | PEDIDO INTERROMPIDO POR U PARA O MOTIVO M | ||
Nota : no caso de um kill por ficheiro, o código utilizador pode ser vazio. Com efeito, o sistema ensaia de reencontrar, a partir de identidade do utilizador tendo criado o ficheiro, se um código adonix corresponde ou não. Esta pesquisa pode não funcionar segundo os sistemas de exploração utilizados. | ||||
2000 | Pela gestão das tarefas e o utilizador U: A mensagem registada é M | PEDIDO INTERROMPIDO POR U PARA O MOTIVO M | ||
3000 | Para o servidor batch porque "time-out" | TRATAMENTO INTERROMPIDO PELO SERVIDOR RAZÃO= ULTRAPASSAGEM DO TEMPO ACORDADO |
Deve-se reparar que, no quadro da modelização das tarefas batch (modelo GTRAITE), o utilizador dispõe das variáveis seguintes, acessíveis nas tarefas específicas, ou nas tarefas standandard indirectamento de pontos de entrada :
Salvo erro de coerência ao lançamento, as tarefas standard do software consideram em todos os casos que os erros reencontrados são benignos e actualizam simplesmente em dia o rasto em incrementando GERRTRACE. Isto signifca que todo o erro grave devendo interromper o tratamento deve ser tratado de meneira específica, através de pontos de entrada, em dando a GERRBATCH um valor superior a 100.
Este ficheiro, apresenta no sub-directório TRA do directório SERVX3, contém o rasto do servidor. A estrutura das linhas está conforme àquela de um ficheiro de rasto clássico (cabeçalho normalizado, e status numéricos sobre 5 caracteres). Cada linha está composta de um texto eventualmente prefixado por um número (este número é ele mesmo precedido pelo caracter < se se considera que se trata de um erro, por = se se trata de uma advertência).
Os números de status seguintes existem (eles são prefixados por 4 e 5 por razões de continuidade de numeração com os status precedentes). É de observar que os status começam por 4 são de status graves que não devem surgir numa exploração normal (problemas de actualização, de gestão das tarefas, de fecho do servidor batch), e podem vir seja de problemas com o sistema, seja de uma má instalação, seja ainda específicos. Os status começam por 5 são, quanto a eles, dos status normais da actividade do servidor batch :
ERROS GRAVES DE COERÊNCIA DO SERVIDOR | ||
Status | Explicação | Texto |
41000 | Dessincronização tarefa | ERRO DESINCRONIZAÇÃO TAREFA |
42000 | Problemas de acesso à tabela das tarefas | ERRO DE ACESSO À TABELA DAS TAREFAS |
43000 | Número de pedido inexistente | ERRO PEDIDO INEXISTENTE |
44000 | Problemas de acesso à tabela dos parâmetros batch |
|
MENSAGENS DE EXPLORAÇÃO NORMAIS DO SERVIDOR | ||
50000 | Arranque do servidor | ARRANQUE SERVIDOR BATCH |
51000 | Activação pedido (proceso id P) | ACTIVAÇÃO PEDIDO PID=P |
52NNN | Erro adonix NNN no arranque servidor (mensagem de erro = M) | ERRO NO ARRANQUE DO SERVIDOR M |
53000 | Erro outro no arranque do servidor | ERRO INDETERMINADO NO ARRANQUE DO SERVIDOR |
54000 | Lançamento servidor que já está activo | O SERVIDOR ESTÁ JÁ ACTIVO |
55000 | Desactivação servidor |
|
Este ficheiro, apresenta no sub-directório TRA do directório SERVX3, contém o rasto do servidor associado ao pedido ele mesmo. A estrutura das linhas está conforme àquela de um ficheiro de rasto clássico (cabeçalho normalizado, e status numéricos sobre 5 caracteres). Cada linha está composta de um texto eventualmente prefixado por um número (este número é ele mesmo precedido pelo caracter < se se considera que se trata de um erro, por = se se trata de uma advertência). Estes ficheiros podem ser lidos directamente depois o gestor de pedidos pelo meio de um clique direito / Leitura rasto
Passado a linha de cabeçalho, a primeira linha de tal ficheiro se apresenta sob a forma de uma linha no formato seguinte (ele entrega o status Activação pedidodefinido em cima):
=51000 NNNNNNNNJJ/MM/AA hh :mm :ss Activação pedido (51000)
(NNNNNNNNrepresentando aqui o número de tarefas)
As linhas de rasto clássico da tarefa seguinte esta primeira linha (se o tratamento em questão não foi lançada em batch, estas linhas serão registadas num ficheiro de rasto clássico FNNNNN.tra no directório TRA do dossier de lançamento). Depois, salvo o caso onde a tarefa foi parada brutalmente (por um killadx, por exemplo), encontrar-se-á uma linha final de estrutura idêntico, nas cujo número está conforme ao status de fim corrrecto (00000) ou de erro (1NNNN)descrito acima.