new Job( [source])
Esta classe é responsável por criar jobs que permitem a execução agendada de scripts.
Parameters:
| Name | Type | Argument | Description |
|---|---|---|---|
source |
DataSet | File | MemoryStream |
<optional> |
Objeto opcional utilizado para restaurar a tabela. Utilize-o quando quiser recuperar um Job persistido anteriormente pelos métodos #saveToStream ou saveToTable. Importante: classe em construção. Não a utilize. |
- See:
Members
-
<readonly> authTokenId :string
-
Id do token de autenticação utilizado para autorizar este Job. O Job deve ser autorizado pelos métodos Security#authorizeJob ou Session#authorizeJob.
Type:
- string
-
classKey :number
-
Chave da classe do job.
Type:
- number
-
<readonly> creation :Date
-
Data e hora em que o job foi criado.
Type:
- Date
-
date :Date
-
Data da próxima execução do job.
Type:
- Date
-
dateTime :Date
-
Data e hora da próxima execução do job.
Type:
- Date
Example
var job = new Job(); job.dateTime = (new Date) + 31;
-
enabled :boolean
-
Define se o job está habilitado para execução. True, se estiver habilitada.
Type:
- boolean
-
<readonly> failCount :number
-
Número de falhas consecutivas do job desde a última execução bem-sucedida.
Type:
- number
-
<readonly> finished :Date
-
Data e hora em que a execução foi concluída.
Type:
- Date
-
<readonly> finishedSuccessfully :boolean
-
Indica se a ultima execução foi concluída com sucesso. True, se concluiu com sucesso.
Type:
- boolean
-
frequency :string
-
Indica a frequência em que o job deverá ser executado. Valores possíveis:
'once''interval''daily''weekly''monthly''yearly'
Importante: jobs com frequência once serão excluídos automaticamente após uma execução bem sucedida.
Type:
- string
Example
var job = new Job(); job.frequency = 'daily';
-
frequencyKey :number
-
Chave da frequência em que o job será executado. Será retornado um registro da classe Frequências de scripts agendados (-1898145108).
Type:
- number
Example
var job = new Job(); job.frequencyKey = -1898145061; // Diário;
-
host :number
-
Indica qual Engine deve executar este Job. Deve ser informada uma chave da classe Engines (-1898145089).
Type:
- number
-
hour :string
-
Hora em que o job será executado.
Type:
- string
Example
var job = new Job(); job.hour = '06:00';
-
<readonly> id :string
-
Código identificador e único do job.
Type:
- string
-
<readonly> key :number
-
Chave identificadora do job no banco de dados.
Type:
- number
-
<readonly> lastResult :string
-
Resultado da ultima execução do job. O resultado de um job será o último valor deixado na pilha pelo script.
Type:
- string
-
monthDay :number
-
Dia do mês em que o job deve ser executado. Caso o mês não possua o dia informado o job será executado no ultimo dia do mês.
Type:
- number
Example
var job = new Job(); job.monthDay = 15;
-
name :string
-
Nome da job.
Type:
- string
-
<readonly> nextExecution :Date
-
Data e hora de quando ocorrerá a próxima execução.
Type:
- Date
-
prerequisiteTask :string
-
Id do job que deve ser concluído com sucesso antes de iniciar este job.
Type:
- string
-
<readonly> scheduled :Date
-
Data e hora em que o job foi agendado.
Type:
- Date
-
scriptURI :string|number
-
Chave ou URI do script a ser executado.
Type:
- string | number
Example
var job = new Job(); job.scriptURI = -1898145715; //Engine/scripts/system/echo.js;
-
<readonly> started :Date
-
Data e hora em que a execução foi iniciada.
Type:
- Date
-
<readonly> status :string
-
String contendo o estado atual do job. Valores possíveis:
'aborting''running''stopped'
Type:
- string
-
<readonly> statusKey :number
-
Chave do estado em que o job se encontra. Será retornado um registro da classe Status de scripts agendados (-1898145055).
Type:
- number
-
<readonly> userKey :number
-
Chave do usuário utilizado na execução do job. Todas as consultas e alterações no banco de dados serão registrados em nome deste usuário.
Type:
- number
-
userValidationMode :string
-
Modo de validação do usuário do job. Controla se o job deve ser executado quando o usuário associado estiver desativado. Os valores possíveis são:
'strict': valor padrão, o job não será executado se o usuário estiver desativado.'ignoreUserStatus': o job será executado mesmo que o usuário esteja desativado.
A opção de ignorar o status do usuário é útil para a execução de scripts responsáveis por gravações de operações de forma assíncrona, pois, independentemente do estado do usuário, essas operações precisam ser efetivadas na base de dados.
Type:
- string
-
userValidationModeKey :number
-
Chave do modo de validação do usuário do job. Será retornado um registro da classe "Modos de validação de usuário" (-1898139056).
Type:
- number
-
weekDay :number
-
Dia da semana em que o job será executado. Valores possíveis:
0: Domingo1: Segunda2: Terça3: Quarta4: Quinta5: Sexta6: Sábado
Type:
- number
Example
var job = new Job(); job.weekDay = (new Date).getDay();
Methods
-
calcNextExecution()
-
Calcula quando será a próxima execução do job e define a propriedade #nextExecution com a data e hora calculada.
Example
var job = new Job(); job.time = '06:00'; job.frequency = 'daily'; job.calcNextExecution(); var nextExecution = job.nextExecution;
-
loadFromStream(stream)
-
Carrega um job a partir de um objeto do tipo MemoryStream ou File.
Parameters:
Name Type Description streamMemoryStream | File Objeto a partir do qual o job será criado.
-
loadFromTable(table)
-
Restaura o job a partir de um DataSet.
Parameters:
Name Type Description tableDataSet DataSet a partir do qual o job será restaurado.
-
saveToStream(stream)
-
Persiste este job em um objeto do tipo MemoryStream ou File.
Parameters:
Name Type Description streamMemoryStream | File Objeto onde o job será gravado.
-
saveToTable(table)
-
Persiste este job em um DataSet. O dataSet deve ter a mesma estrutura da tabela definida pela classe Script Agendados (-1898145133).
Parameters:
Name Type Description tableDataSet DataSet no qual o job será persistido.