---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# GlideSchedule - com escopo

# GlideSchedule - com escopo {#ariaid-title1}

A API GlideSchedule com escopo fornece métodos para executar operações em objetos GlideSchedule, como adicionar novos segmentos de programação a uma programação, determinar se uma data/hora está dentro da programação ou definir o fuso horário da programação.

## GlideSchedule --- GlideSchedule() {#ariaid-title2}

Instancia um objeto GlideSchedule vazio.
{#r_ScopedGlideScheduleGlideSchedule__table_ulv_hhr_2r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 1. Parâmetros]

{#r_ScopedGlideScheduleGlideSchedule__table_ulv_hhr_2r}

## GlideSchedule -- GlideSchedule(cadeia de caracteres sysID, cadeia de caracteres fuso horário) {#ariaid-title3}

Instancia um objeto GlideSchedule e carrega as informações de programação. Se um fuso horário não for especificado, o fuso horário da sessão atual será usado.
{#r_SGSCH-GlideSchedule_S_S__table_emk_4cg_1r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysID | Cadeia de caracteres | O ID do sistema para a programação. |
| fuso horário | Cadeia de caracteres | Opcional. O fuso horário a ser usado. Padrão: o fuso horário da sessão atual. Os fusos horários podem ser fornecidos nos seguintes formatos. * `País/Cidade`. Por exemplo, `América/Los_Angeles`. * `País/Fuso horário`. Por exemplo, `EUA/Pacífico`. * `Abreviação do fuso horário`. Por exemplo, `PST`. {#r_SGSCH-GlideSchedule_S_S__ul_up2_zln_lwb}Para obter uma lista completa de fusos horários válidos, consulte o campo Fuso horário na tabela Usuário \[sys_user\]. Para obter mais informações sobre fusos horários, consulte [Time zones](https://www.servicenow.com/docs/access?context=r_TimeZones&version=xanadu&pubname=xanadu-platform-administration&ft:locale=en-US). |
[Tabela 2. Parâmetros]

{#r_SGSCH-GlideSchedule_S_S__table_emk_4cg_1r}  

    var schedule = new GlideSchedule('090eecae0a0a0b260077e1dfa71da828', 'US/Pacific');

## GlideSchedule - add(GlideDateTime startDate, GlideDuration offSet) {#ariaid-title4}

Adiciona um novo segmento de programação à programação atual.
{#r_SGSCH-Add_GDT_GD__table_kws_rdg_1r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| startDate | GlideDateTime | A data de início do novo segmento de programação. |
| offSet | GlideDuration | A compensação de tempo do novo segmento de programação. |
[Tabela 3. Parâmetros]

{#r_SGSCH-Add_GDT_GD__table_kws_rdg_1r} {#r_SGSCH-Add_GDT_GD__table_mws_rdg_1r__entry__2}

| Tipo | Descrição |
|-|-|
| GlideDateTime | A programação atualizada com o novo segmento de programação. |
[Tabela 4. Retorna]

{#r_SGSCH-Add_GDT_GD__table_mws_rdg_1r}  

    var startDate = new GlideDateTime('2014-01-02');
    var days = 2;
    var dur = new GlideDuration(60 * 60 * 24 * 1000 * days);
    var schedule = new GlideSchedule();
    var end = schedule.add(startDate, dur);
    gs.info(end);

Saída:

    2014-01-04 00:00:00

## GlideSchedule - duração (GlideDateTime startDate, GlideDateTime endDate) {#ariaid-title5}

Determina o tempo decorrido na programação entre dois valores de data e hora usando o fuso horário da programação ou, se não for especificado, o fuso horário da sessão.
{#r_SGSCH-Duration_GDT_GDT__table_dlk_j3g_1r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| startDate | GlideDateTime | A data/hora de início. |
| endDate | GlideDateTime | A data/hora final. |
[Tabela 5. Parâmetros]

{#r_SGSCH-Duration_GDT_GDT__table_dlk_j3g_1r} {#r_SGSCH-Duration_GDT_GDT__table_flk_j3g_1r__entry__2}

| Tipo | Descrição |
|-|-|
| GlideDuration | A diferença entre a data/hora inicial e a final. |
[Tabela 6. Retorna]

{#r_SGSCH-Duration_GDT_GDT__table_flk_j3g_1r}  

    var startDate = new GlideDateTime('2014-10-16 02:00:00');
    var endDate = new GlideDateTime('2014-10-18 04:00:00');
    var schedule = new GlideSchedule();
     
    schedule.load('090eecae0a0a0b260077e1dfa71da828'); // loads "8-5 weekdays excluding holidays" schedule
    var duration = schedule.duration(startDate, endDate);
    gs.info(duration.getDurationValue()); // gets the elapsed time in schedule

## GlideSchedule -- getName() {#ariaid-title6}

Recupera o nome da programação.
{#r_ScopedGlideScheduleGetName__table_onn_hhr_2r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 7. Parâmetros]

{#r_ScopedGlideScheduleGetName__table_onn_hhr_2r} {#r_ScopedGlideScheduleGetName__table_tcd_rwg_1r__entry__2}

| Tipo | Descrição |
|-|-|
| Cadeia de caracteres | O nome da programação atual. |
[Tabela 8. Retorna]

{#r_ScopedGlideScheduleGetName__table_tcd_rwg_1r}  

    sys_id ='04e664654a36232701a2247dcd8fc4cf'; // sys_id for "Application" schedule record
    var sched = new GlideSchedule(sys_id);
    gs.info(sched.getName());

## GlideSchedule - isInSchedule(GlideDateTime time) {#ariaid-title7}

Determina se a data e a hora especificadas estão dentro da programação atual.
{#r_SGSCH-IsInSchedule_GDT__table_lvd_jkg_1r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| hora | GlideDateTime | Valor de data e hora a ser verificado. |
[Tabela 9. Parâmetros]

{#r_SGSCH-IsInSchedule_GDT__table_lvd_jkg_1r} {#r_SGSCH-IsInSchedule_GDT__table_nvd_jkg_1r__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Sinalizador que indica se a data e hora especificadas estão dentro da programação. Valores válidos: * verdadeiro: a data e a hora estão dentro da programação. * falso: a data e a hora estão fora da programação. {#r_SGSCH-IsInSchedule_GDT__ul_ujh_rxv_p4b} |
[Tabela 10. Retorna]

{#r_SGSCH-IsInSchedule_GDT__table_nvd_jkg_1r}  

    var glide = new GlideRecord('cmn_schedule');
    glide.addQuery('type', 'blackout');
    glide.query();
    if (glide.next()) {
       var sched = new GlideSchedule(glide.sys_id);
       var date = new GlideDateTime();
       date.setDisplayValue("2007-09-18 12:00:00");
       if (sched.isInSchedule(date)) 
          gs.info("Is in the schedule");
       else
          gs.info("Is NOT in the schedule");
    }

## GlideSchedule -- isValid() {#ariaid-title8}

Determina se a programação atual é válida. Uma programação é válida se tiver pelo menos um período de programação.
{#r_ScopedGlideScheduleIsValid__table_th1_plg_1r__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro se a programação for válida. |
[Tabela 11. Retorna]

{#r_ScopedGlideScheduleIsValid__table_th1_plg_1r}  

    var glide = new GlideRecord('cmn_schedule');
    glide.addQuery('type', 'blackout');
    glide.query();
    if (glide.next()) {
       var sched = new GlideSchedule(glide.sys_id);
       var date = new GlideDateTime();
       date.setDisplayValue("2007-09-18 12:00:00");
       if (sched.isValid()) 
          gs.info("Is valid");
     
       else
          gs.info("Is not valid");
    }

## GlideSchedule - load(cadeia de caracteres sysID, cadeia de caracteres timeZone, cadeia de caracteres excludeSpanID) {#ariaid-title9}

Carrega uma programação com as informações da programação.
{#r_SGSCH-Load_S_S_S__table_ztn_lxg_1r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysID | Cadeia de caracteres | O ID do sistema da programação. |
| fuso horário | Cadeia de caracteres | (Opcional) O fuso horário. Se um fuso horário não for especificado ou for nulo, o fuso horário da sessão atual será usado para a programação. |
| ExcluirSpanID | Cadeia de caracteres | Qualquer período a ser excluído. |
[Tabela 12. Parâmetros]

{#r_SGSCH-Load_S_S_S__table_ztn_lxg_1r} {#r_SGSCH-Load_S_S_S__table_tcd_rwg_1r__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 13. Retorna]

{#r_SGSCH-Load_S_S_S__table_tcd_rwg_1r}  

    var x = new GlideSchedule();
    x.load('08fcd0830a0a0b2600079f56b1adb9ae');

## GlideSchedule -- setTimeZone(cadeia de caracteres fuso horário) {#ariaid-title10}

Define o fuso horário da programação atual.
{#r_SGSCH-SetTimeZone_S__table_sdh_hzg_1r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| fuso horário | Cadeia de caracteres | O fuso horário a ser usado. Os fusos horários podem ser fornecidos nos seguintes formatos. * `País/Cidade`. Por exemplo, `América/Los_Angeles`. * `País/Fuso horário`. Por exemplo, `EUA/Pacífico`. * `Abreviação do fuso horário`. Por exemplo, `PST`. {#r_SGSCH-SetTimeZone_S__ul_up2_zln_lwb}Para obter uma lista completa de fusos horários válidos, consulte o campo Fuso horário na tabela Usuário \[sys_user\]. Para obter mais informações sobre fusos horários, consulte [Time zones](https://www.servicenow.com/docs/access?context=r_TimeZones&version=xanadu&pubname=xanadu-platform-administration&ft:locale=en-US). |
[Tabela 14. Parâmetros]

{#r_SGSCH-SetTimeZone_S__table_sdh_hzg_1r} {#r_SGSCH-SetTimeZone_S__table_tcd_rwg_1r__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 15. Retorna]

{#r_SGSCH-SetTimeZone_S__table_tcd_rwg_1r}  
Este exemplo define o fuso horário da programação como EUA/Pacífico.

    var schedule = new GlideSchedule();
    schedule.setTimeZone('US/Pacific');

## GlideSchedule -whenNext(GlideDateTime time, String timeZone) {#ariaid-title11}

Determina quanto tempo (em milissegundos) até a hora de início do próximo item de programação.
Esta função deve ser chamada quando o objeto GlideSchedule (tabela cmn_schedule) não está na janela de programação. A chamadawhenNext() retorna a duração (em ms) até que o objeto GlideSchedule esteja dentro da programação. Esta função não retornará um valor significativo se for chamada quando o objeto GlideSchedule estiver dentro da programação.
{#r_SGSCH-WhenNext_GDT_S__table_i1b_myg_1r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| hora | GlideDateTime | Tempo a ser avaliado |
| fuso horário | Cadeia de caracteres | Fuso horário |
[Tabela 16. Parâmetros]

{#r_SGSCH-WhenNext_GDT_S__table_i1b_myg_1r} {#r_SGSCH-WhenNext_GDT_S__table_k1b_myg_1r__entry__2}

| Tipo | Descrição |
|-|-|
| Número | Número de milissegundos até a hora de início do próximo item de programação. Retorna -1 se nunca. |
[Tabela 17. Retorna]

{#r_SGSCH-WhenNext_GDT_S__table_k1b_myg_1r}  

    var startDate = new GlideDateTime('2014-10-25 08:00:00');
    var glideSchedule = new GlideSchedule('08fcd0830a0a0b2600079f56b1adb9ae', 'UTC');
    gs.info(glideSchedule.whenNext(startDate));

Saída:

    172800000

    testScript(); 
    function testScript() { 
    var now = new GlideDateTime(); //current date and time
    var sched = new GlideSchedule("<sys_id>"); // Use a cmn_schedule sys_id 
    if (sched.isInSchedule(now)){ 
    gs.info('We are in an active schedule window so whenNext() is not helpful'); 
    } else{  
    gs.info('Not currently in schedule so call whenNext()'); 
    var msUntilNext = sched.whenNext(new GlideDateTime(), 'US/Pacific'); 
    gs.info('Next schedule starts in '+msUntilNext+' milliseconds'); 
    } 
    }
    \\ Output [schedule inactive)]:
    \\ *** Script: Not currently in schedule so call whenNext() 
    \\ *** Script: Next schedule starts in -1 milliseconds

Saída:

    [Scheduled for future] *** Script: Not currently in schedule *** Script: Next schedule starts in 332894000 milliseconds


