Casos especiais em cronogramas de trabalho
Alguns casos especiais exigem cuidado na programação de trabalhos.
Cronogramas de fim do mês
Como os meses têm durações diferentes, tome cuidado ao programar trabalhos para o final do mês.
- Não é recomendável programar um evento para o dia 29 ou 30, porque o trabalho agendado é executado em meses (como fevereiro), que são mais curtos do que essas datas.
- Se um evento estiver programado para o dia 31, ele será executado no último dia do mês, mesmo que o mês seja mais curto.
Por exemplo, algo programado para ser executado no dia 31 do mês é executado em 28 de fevereiro ou 29 de fevereiro em um ano bissexto.
Cronogramas de dias da semana
Para scripts agendados, use o script a seguir para executar somente nos dias da semana:
var isWeekday;
var today = new Date();
var dayOfWeek = today.getDay(); // Get day of the week(0 = Sunday, 1 = Monday, ... , 6 = Saturday)
switch (dayOfWeek) {
case 0: // Sunday
case 6: // Saturday
isWeekday = false;
break;
default:
isWeekday = true;
}
answer=isWeekday;
Se o script condicional em um Relatório programado for mais complexo e você precisar usar nossas classes Glide, use as seguintes etapas como solução alternativa:
- Crie um trabalho agendado e conclua toda a lógica condicional do relatório programado dentro do trabalho agendado.
- Se toda a lógica condicional for atendida, você poderá acionar o Relatório programado com o script a seguir dentro do Trabalho agendado.
var schRpGr = new GlideRecord("sysauto_report"); schRpGr.get("<sys_id of the scheduled report>"); gs.executeNow(schRpGr);
Trabalhos agendados de scripts
Para executar um trabalho agendado acionado por um evento, use o seguinte script:
//Execute a scheduled script job
var rec = new GlideRecord('sysauto_script');
rec.get('name', 'YOUR_JOB_NAME_HERE');
SncTriggerSynchronizer.executeNow(rec);
- Scheduled_import_set (Conjuntos de importação programada)
- Sysauto_script (Execução de script programada)
- Sysauto_template (Geração de modelo programada)
- Sysauto_report (Relatório programado)
SNcTriggerSynchronizer o não fornece métodos para executar trabalhos agendados no futuro.Executar scripts agendados e trabalhos importados de outra instância
Execução de script programada e trabalhos agendados são categorizados como registros de dados no ServiceNow AI Platform, o que significa que eles foram excluídos dos conjuntos de atualizações. Para determinar se uma tabela está incluída, navegue até e exibir o. Atributo valor da tabela em questão. Somente tabelas com o atributo update_sync
Opcionalmente, você pode exportar e importar registros de dados via XML. No entanto, para evitar mudanças de dados inesperadas, os registros de Item de programação [sys_trigger] não são criados para registros de dados importados de um arquivo XML, como um conjunto de atualizações. Para executar trabalhos agendados ou scripts importados de outra instância, atualize o registro de trabalho ou script correspondente na instância de destino.