Comuns – Serviços – Calendarização de Processos
A calendarização de processos permite a programação e acompanhamento da execução de variados processos. Esta encontra-se estruturada em três partes que se interrelacionam. Assim temos a um nível superior os “Batch” e as respectivas definições para os mesmos. Para cada um dos Batch encontramos o conjunto de Items que o constituem. Em último lugar estão os parâmetros que fazem parte de cada um dos Batch Items.
Na figura seguinte temos o ecrã da Calendarização de Processos. Ao longo do manual será discriminada cada uma das partes que o constituem.

Batch
O seguinte grupo é constituído pelos vários processos que se encontram calendarizados. Descreveremos então os campos que o caracterizam:

Campos:
Batch – Número sequencial atribuído ao Batch.
Descrição – Nome atribuído ao Batch.
Activo - Indica se o Batch está ou não activo, podendo assumir os valores de “Sim” ou “Não”.
Em Execução – Indica se o processo se encontra ou não em fase de execução. Assume os valores “Sim”, caso o Batch esteja em execução ou “Não”, caso contrário.
Tipo – Tipo de Batch.
Próxima Execução – Dia e Hora em que terá origem a próxima execução.
Dias Execução – Dias da Semana em que o Processo é executado. Ao carregar em “Calendário” aparece a seguinte janela onde o utilizador pode especificar se o batch vai correr apenas nas sessões de bolsa (que são definidas no Sifox BackOffice) ou nos todos os dias parametrizados independentemente se for uma sessão de bolsa ou não.

Intervalo e Frequência – O intervalo, em conjunto com a frequência vai definir a periodicidade do Batch, da seguinte forma:
- Intervalo = 2, Frequência = Semanal; executa o Batch de duas em duas semanas.
- Intervalo = 1, Frequência = Diária; executa o Batch uma vez por dia.
A Frequência pode ser Pontual, Hora, Diário, Semanal ou Mensal.
Hora Início / Hora Fim – Referem-se à janela de tempo em que o processo pode executar. Por exemplo, para um Batch definido das 13 às 14 horas, se o SPM apenas arrancar às 20, só irá ser executado às 13 horas do próximo dia activo.
Retorna ao Ponto de Execução – Indica se em caso de ocorrência de um erro, o processo volta (Sim) ao início ou é executado a partir do ponto em que o erro ocorreu (Não).
Prioridade – Define prioridades de execução do Batch.
Expira – Este campo serve de referência para o serviço de limpeza saber quando deve proceder à limpeza dos resultados do processo.
Instância Serviço – Id do serviço que executa o Batch.
Batch Items
Cada um dos processos podem ter a si associados vários Items. Neste grupo temos então os Items que constituem cada um dos processos e seus respectivos detalhes:
Campos:
Detalhe – Código do Batch Item.
Descrição – Nome atribuído ao Batch Item do processo.
Abrir Ficheiro – Permite a abertura do ficheiro que origina o processo em causa.
Estado – Estado em que se encontra o processo. Podem assumir os seguintes valores: Pendentes, Em execução, Sucesso, Erro e Aguarda Validação.
Parâmetros – Permite aceder directamente aos parâmetros do Item Batch em causa.
Validação do Resultado – Quando o valor é “Sim”, o utilizador terá que validar o resultado. Caso, contrário não será necessária a validação.
Activo – Este campo indica se o processo se encontra ou não activo. Caso esteja activo deve estar marcado como “Sim”. Se estiver inactivo terá o valor “Não”.
Ordem – Ordenação assumida pelo processo no conjunto dos processos existentes.
Processo – Código do Processo.
Tipo – Tipo de Processo. Podem ser parametrizados processos do tipo Leitura de Ficheiro, Geração de Ficheiro, Relatório, Processo de BD ou Dll Externa.
Crítico – Indicador da relevância do processo em causa. Se o processo for crítico terá o valor “Sim”; caso contrário assumirá o valor “Não”. Se o processo for crítico não será possível a passagem ao processo seguinte enquanto este não estiver terminado.
Exige Validação – Campo que indica a necessidade de validação por parte do utilizador. Pode assumir os valores “Sim” ou “Não”, consoante seja ou não exigida a validação.
Expira – Prazo a partir do qual a execução do item é cancelada.
Quebra – Campo que permite a definição das quebras na execução de Reports. Se “Sim” será necessário inserir a instrução de quebra.
Instrução de quebra – No caso do campo anterior assumir o valor “Sim”, este campo deverá indicar o select que define a condição em que será realizada a quebra nos reports.
Instrução de definição destinatários – Forma de obtenção dos endereços a quem o mapa deverá ser enviado.
Execução Condicional – Condição a estabelecer para que seja possível a execução do Batch Item.
Logs Batch
O Logs Batch permite registar e acompanhar as várias fases da execução dos processos. Poderemos então ter conhecimento das horas de entrada dos processos, o Estado do processo, bem como o utilizador por ele responsável.

Campos:
Id – Número identificador do Log.
Tipo – Fase em que o processo se encontra. Pode assumir os seguintes valores: Início, Lock, Verificação Parâmetros, Leitura de Ficheiro, Execução, Escrita de Ficheiro, Tabela Temporária, Parâmetros, Logs, Unlocks, Sucesso e Erro.
Log – Descrição da acção realizada e respectivo estado.
Time stamp - Hora em que a entrada ficou registada.
Utilizador – Código do utilizador.
Parâmetros
Os Batch Items incorporam determinados parâmetros. Para cada um dos Items temos discriminado cada um deles com as suas principais características e condições que devem respeitar.

Campos:
Parâmetro – Código do Parâmetro.
Descrição – Nome atribuído ao parâmetro.
Ordem – Ordenação que o parâmetro deverá assumir. Este campo deverá ser inscrito com números inteiros ,sendo que o 1 é o mais prioritário.
Tipo – Tipo de parâmetro. Pode assumir os seguintes valores: Referenced dll, Dll Method, Flag Delete file on FTP Upload, FTP File, FTP Path, FTP Password, FTP Username, FTP Port, FTP Server, Directory Path, File, Report Parameter, SQL Parameter, Lock ID, Log Days, Email Attach, Email Subject, Email Body, Email Address, DOS Command, Boolean, Log File, Directory Log Path, String, Number, Date, Information e Format.
Obrigatório – Indica a obrigatoriedade, ou não de preenchimento do parâmetro. Caso tenha o valor “Sim” será obrigatório preencher o parâmetro. Se for “Não”, o preenchimento é opcional.
Output de Erro – Quando o output de erro for igual a “Sim”, será possível definir um valor, que ao ser retornado na execução de um processo levará o “Estado” do Item a assumir o valor “Erro”.
Valor – Este campo pode ser definido com um valor ou uma expressão regular. Deverá ser aqui inscrito o valor do parâmetro.
Instrução de Cálculo do Valor – O valor do parâmetro pode ainda ser inscrito de uma forma dinâmica. Assim o cálculo do valor far-se-á através da inscrição de um Select neste campo.
Formato Máscara – Formato que a informação a inserir deverá assumir.
Logs Batch Items

Tal como ao nível dos Batch, temos também para cada um dos Items o registo das várias fases de execução de cada um deles.
Campos:
Id – Número identificador do Log.
Tipo – Estado em que se encontra o processo. Pode assumir os seguintes valores: Início, Lock, Verificação Parâmetros, Leitura de Ficheiro, Execução, Escrita de Ficheiro, Tabela Temporária, Parâmetros, Logs, Unlocks, Sucesso e Erro.
Log – Registo da acção realizada ao nível do Item.
Time stamp – Hora em que a entrada ficou registada.
Utilizador – Código do utilizador.