Ir para o conteúdo

Funções de data e hora no Jitterbit Design Studio

Introdução

Se você estiver usando essas funções em conjunto com o Now ou Now_ funções, esteja ciente de que o fuso horário retornado é o configurado na máquina que executa o agente. Todos os agentes de nuvem estão em UTC. Os agentes privados variam com base na máquina específica em que cada agente está sendo executado. Se você estiver usando uma função de conversão, leve isso em consideração se seu projeto for projetado para ser executado na nuvem e em um agente privado.

Nota

Se você tiver a configuração Substituir fuso horário do Agente de programação habilitada nas políticas da sua organização, quaisquer scripts que usem funções de data e hora, conforme descrito aqui, não serão substituídos pelo fuso horário selecionado.

Códigos de fuso horário

Os parâmetros de fuso horário são um dos códigos de fuso horário padrão, um nome completo (código TZ) como "America/Los_Angeles", um deslocamento UTC como "UTC-8:00", ou uma abreviação como "PST" (código de três letras). Os códigos de fuso horário diferenciam maiúsculas de minúsculas. Códigos TZ de nome completo são recomendados, se um fuso horário estiver sendo usado, pois "AST" pode se referir ao horário padrão "Atlântico" ou "Árabe".

Convertendo horários unix em datas

Se um horário UNIX for um número que inclui precisão de milissegundos, você pode usar um código semelhante a este para converter um horário UNIX em uma data:

// If you have a UNIX timestamp with milliseconds such as
createdate = "1478119530707";
// You can convert it to a date by
// truncating the last three digits and using FormatDate:
date = double(Left(createdate, 10));
FormatDate(date, "yyyy-mm-dd");

ConvertTimeZone

Declaração

string ConvertTimeZone(date d, string fromTZ, string toTZ[, bool is_european_format, bool ignoreDST])

string ConvertTimeZone(string d, string fromTZ, string toTZ[, bool is_european_format, bool ignoreDST])

Sintaxe

ConvertTimeZone(<d>, <fromTZ>, <toTZ>[, <is_european_format>, <ignoreDST>])

Parâmetros obrigatórios

Parâmetros opcionais

  • is_european_format: Este sinalizador opcional determina se o formato de data europeu deve ser usado. Quando true, o formato é dia e depois mês; quando false, o formato é mês e depois dia.

  • ignoreDST: Por padrão, o horário de verão é considerado ao converter entre os quatro principais fusos horários dos EUA. Defina este sinalizador opcional para true para anular esta ação.

Descrição

Pegue uma data e retorne-a convertida de um fuso horário para outro fuso horário.

Nota

Se você estiver usando ConvertTimeZone em conjunto com Now ou Now_, esteja ciente de que o fuso horário retornado é o configurado na máquina que executa o agente. Todos os agentes de nuvem estão em UTC. Os agentes privados variam com base na máquina específica em que cada agente está sendo executado. Se você estiver usando uma função de conversão, como ConvertTimeZone, leve isso em consideração se seu projeto for projetado para rodar tanto na nuvem quanto em um agente privado.

Exemplos

ConvertTimeZone(Now(), "UTC", "America/Los_Angeles", false, false);
// If Now() is 2017-03-10 18:34:37
// returns "2017-03-10 10:34:37"

ConvertTimeZone("02/06/2017 5:25:00", "America/Los_Angeles", "America/New_York");
// returns "2017-02-06 08:25:00" (shifts the time by 3 hours)

CVTDate

Declaração

string CVTDate(date d, string inputFormat, string outputFormat)

string CVTDate(string d, string inputFormat, string outputFormat)

Sintaxe

CVTDate(<d>, <inputFormat>, <outputFormat>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de data
  • inputFormat: Uma string de formato, especificando o formato da data de entrada
  • outputFormat: Uma string de formato, especificando o formato da data de saída

Descrição

Converte um objeto de data ou uma string de data no formato de entrada para uma string de data no formato de saída.

Nota

Se você estiver usando CVTDate em conjunto com Now ou Now_, esteja ciente de que o fuso horário retornado é o configurado na máquina que executa o agente. Todos os agentes de nuvem estão em UTC. Os agentes privados variam com base na máquina específica em que cada agente está sendo executado. Se você estiver usando uma função de conversão, como CVTDate, leve isso em consideração se seu projeto for projetado para rodar tanto na nuvem quanto em um agente privado.

Exemplos

Nesses exemplos, presume-se que todos os agentes estejam em execução na nuvem e os horários retornados seriam UTC. "myDate"é a data 19 de junho de 1994.

Fórmula Entrada Saída
CVTDate(myDate, "mmddyy", "yyyymmdd") 061994 19940619
CVTDate(myDate, "mmddyy", "ShortDate") 061994 6/19/94
CVTDate(myDate, "mmddyy", "LongDate") 061994 Sunday, June 19, 1994
CVTDate(Now(), "GeneralDate","dd-mmm-yy, HH:MM AP") em 31/01/17 às 12h39 no horário de verão do leste dos EUA 31-Jan-17, 07:39 PM
CVTDate(Now(), "GeneralDate","dd-mmm-yy, HH:MM.SS AP") em 31/01/17 às 12:39:13 PM em MST 31-Jan-17, 07:39:13 PM
CVTDate(Now_(), "GeneralDate","ddmmmyyyy, HH:MM:SS.zzz AP") em 31/01/17 às 12:39:13.310 PM em MST 31Jan2017, 07:39:13.310 PM
CVTDate(Now(), "GeneralDate","yyyy_mm_dd_HH_MM") em 31/01/17 às 12:39:13.310 PM em MST 2017_01_31_19_39_13
CVTDate(myDate, "mmddyy", "%Y%m%d%a") 061994 19940619Sun
CVTDate(myDate, "mmddyy", "%Y %m %d %a") 061994 1994 06 19 Sun
CVTDate(myDate, "mmddyy", "%Y %m %d %A") 061994 1994 06 19 Sunday

Formatar strings

O formato da string de data de entrada e da string de data de saída é especificado da mesma forma, usando caracteres para marcadores de posição ou um dos quatro formatos de data predefinidos (GeneralDate, LongDate, MediumDate, ou ShortDate).

Para entradas, o ano, mês, dia, hora, minuto, segundo e AM/PM são lidos da sequência de data na posição onde y, m, d, H, M, S, SSS, e AP aparecem na string de formato de entrada.

Para saídas, a string de formato é copiada para a string de dados com o ano, mês, dia, hora, minuto e segundo substituindo os caracteres de y, m, d, H, M, S, SSS, e AP.

Alternativamente, as substituições usadas no método ANSI C strftime pode ser usado. Por exemplo, a string "%Y-%m-%d" resultaria no formato de data ISO 8601 (yyyy-mm-dd). Veja a documentação externa em strftime para uma descrição detalhada.

Esses códigos podem aparecer conforme necessário na string de formato para especificar como ler a entrada ou escrever a saída:

Formato Entrada ou Saída
yyyy Ano de 4 dígitos
yy (último) ano de 2 dígitos
??yy Ano de 2 ou 4 dígitos
mmm Janeiro, fevereiro, março, abril, maio, junho, julho, agosto, setembro, outubro, novembro, dezembro
mm Mês de 2 dígitos (01-12)
?m Mês de 1 ou 2 dígitos (1-12)
ddd Data juliana (001-366)
dd Dia de 2 dígitos (01-31)
?d Dia de 1 ou 2 dígitos (1-31)
HH Hora (00-23) ou (01-12) se AM/PM for especificado usando AP
MM Minuto (00-59)
SS Segundo (00-59)
zzz Milissegundo (.001-.999)
AP AM ou PM
GeneralDate 19/06/94 17:34:23
LongDate Domingo, 19 de junho de 1994
MediumDate 19-jun-1994
ShortDate 19/06/94

DateAdd

Declaração

string DateAdd(string datePart, int number, date d)

string DateAdd(string datePart, int number, string d)

Sintaxe

DateAdd(<datePart>, <number>, <d>)

Parâmetros obrigatórios

  • datePart: Um código de parte descrevendo a parte da data para aplicar a adição
  • number: Um número inteiro a ser adicionado à parte da data
  • d: O objeto de data ou uma string de data a ser operada

Descrição

Retorna uma string de data após adicionar um número a uma parte especificada de um objeto de data.

Esses códigos são usados para descrever as partes de data:

Parte de data Código de parte
Ano yyyy ou yy
Mês mm ou m
Semana ww ou wk
Dia dd
Hora hh
Minuto mi ou n
Segundo ss ou s

Cuidado

Quando usado com versões de agente 10.83 / 11.21 ou anteriores, o DateAdd a função retorna o valor errado ao fornecer a parte do mês e da data (mm ou m) e um inteiro negativo que é um múltiplo de 12(12, 24, 36, etc.). Isso faz com que o ano da data retornada seja reduzido incorretamente em um ano adicional.

Exemplos

DateAdd("yyyy", 1, Now());
// Adding one year to a date
// If Now() is 2017-03-10 18:46:41
// returns "2018-03-10 18:46:41"

DateAdd("dd", 1, "2017-03-10");
// Adding one day to a date
// returns "2017-03-11"

DayOfMonth

Declaração

int DayOfMonth(date d)

int DayOfMonth(string d)

Sintaxe

DayOfMonth(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna o dia do mês (1-31) de um objeto de data ou string de data.

Exemplos

DayOfMonth(Now());
// Returns 25 if today is December 25

DayOfWeek

Declaração

int DayOfWeek(date d)

int DayOfWeek(string d)

Sintaxe

DayOfWeek(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna o dia da semana para um objeto de data ou string de data, com 0 para domingo, 1 para segunda-feira, até 6 para sábado.

Esta definição é independente do local. Para o nome do dia da semana, chame FormatDate em vez de.

Exemplos

DayOfWeek(Now());
// Returns 0, if today is Sunday

Now() + (6 - DayOfWeek(Now()))*24*60*60;
// Returns the date object of the last day of the current week,
// assuming Saturday (day 6) is the last day of the week

FormatDate

Declaração

string FormatDate(date d, string format)

string FormatDate(string d, string format)

Sintaxe

FormatDate(<d>, <format>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de data
  • format: Uma string de formato, especificando o formato da data de saída

Descrição

Converte um objeto de data em uma string de acordo com uma string de formato. Isso é semelhante ao CVTDate função e usa as mesmas strings de formato.

Exemplos

FormatDate(Now(),"%w");
// Similar to DayOfWeek(Now()), except the return value
// is a string value of today's weekday name, such as "Wed"

FormatDate("2017-12-07","%A");
// Returns the weekday name of the date string, such as "Thursday"

LPadChar(String(Long(FormatDate(d, "yyyy")) - 1900), "0", 3) + FormatDate(d, "ddd");
// Returns, for a date d, a string formatted as a JD Edwards Date ("CYYDDD")
// If d = "2000-12-31" (a leap year), returns "100366"
// See https://docs.oracle.com/cd/E26228_01/doc.93/e21961/julian_date_conv.htm#WEAWX259

GeneralDate

Declaração

string GeneralDate(date d)

string GeneralDate(string d)

Sintaxe

GeneralDate(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna uma string no formato geral de data para um objeto de data ou string de data.

Exemplos

GeneralDate(Now());
// If Now() is 2017-09-16 11:59:23
// returns "09/16/2017 11:59:23 AM"

GeneralDate("2017-12-07");
// returns "12/07/2017 12:00:00 AM"

GetUTCFormattedDate

Declaração

string GetUTCFormattedDate(date d, string time_zone_id[, bool is_european_format])

string GetUTCFormattedDate(string d, string time_zone_id[, bool is_european_format])

Sintaxe

GetUTCFormattedDate(<d>, <time_zone_id>[, <is_european_format>])

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de data
  • time_zone_id: O fuso horário a ser convertido, expresso como um código de fuso horário

Parâmetros opcionais

  • is_european_format: Este sinalizador opcional determina se o formato de data europeu deve ser usado. Quando verdadeiro, o formato é dia e depois mês; quando falso, o formato é mês e depois dia.

Descrição

Retorna uma string de data sem informações de tempo. Converte um objeto de data ou string de data em uma string de acordo com um código de fuso horário.

Aviso

Se passar uma data com um horário, o GetUTCFormattedDate() função trunca o tempo antes da conversão para UTC. Isso significa que os timestamps que são depois da meia-noite UTC serão retornados como ocorrendo na data anterior, conforme mostrado no exemplo acima para o "America/Los_Angeles" fuso horário.

Nota

Se você estiver usando GetUTCFormattedDate em conjunto com Now ou Now_, esteja ciente de que o fuso horário retornado é o configurado na máquina que executa o agente. Todos os agentes de nuvem estão em UTC. Os agentes privados variam com base na máquina específica em que cada agente está sendo executado. Se você estiver usando uma função de conversão, como GetUTCFormattedDate, leve isso em consideração se seu projeto for projetado para rodar tanto na nuvem quanto em um agente privado.

Exemplos

// If Now() is 2017-12-09 18:46:41, then:

GetUTCFormattedDate(Now(), "UTC", false);
// Returns "2017-12-09"

GetUTCFormattedDate(Now(), "America/Los_Angeles", false);
// Returns "2017-12-09"

GetUTCFormattedDateTime

Declaração

string GetUTCFormattedDateTime(date d, string time_zone_id[, bool is_european_format])

string GetUTCFormattedDateTime(string d, string time_zone_id[, bool is_european_format])

Sintaxe

GetUTCFormattedDateTime(<d>, <time_zone_id>[, <is_european_format>])

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de data
  • time_zone_id: O fuso horário a ser convertido, expresso como um código de fuso horário

Parâmetros opcionais

  • is_european_format: Este sinalizador opcional determina se o formato de data europeu deve ser usado. Quando verdadeiro, o formato é dia e depois mês; quando falso, o formato é mês e depois dia.

Descrição

Retorna uma string de data com informações de tempo. Converte um objeto de data ou string de data em uma string de acordo com um código de fuso horário.

Nota

Se você estiver usando GetUTCFormattedDateTime em conjunto com Now ou Now_, esteja ciente de que o fuso horário retornado é o configurado na máquina que executa o agente. Todos os agentes de nuvem estão em UTC. Os agentes privados variam com base na máquina específica em que cada agente está sendo executado. Se você estiver usando uma função de conversão, como GetUTCFormattedDateTime, leve isso em consideração se seu projeto for projetado para rodar tanto na nuvem quanto em um agente privado.

Exemplos

// If Now() is 2017-12-09 18:46:21, then:

GetUTCFormattedDateTime(Now(), "UTC", false);
// returns "2017-12-09T18:46:21Z"

GetUTCFormattedDateTime(Now(), "America/Los_Angeles", false);
// returns "2017-12-10T02:46:21Z"

LastDayOfMonth

Declaração

date LastDayOfMonth(date d)

date LastDayOfMonth(string d)

Sintaxe

LastDayOfMonth(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna um objeto de data representando o último dia do mês para um objeto de data ou string de data.

Exemplos

LastDayOfMonth(Now());
// If Now() is a day in February of 2000 (a leap year),
// returns "2000-02-29"

LongDate

Declaração

string LongDate(date d)

string LongDate(string d)

Sintaxe

LongDate(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna uma string no formato de data longa para um objeto de data ou string de data.

Exemplos

LongDate(Now());
// If Now() is 2017-09-16 11:59:23
// returns "Saturday, September 16, 2017"

LongTime

Declaração

string LongTime(date d)

string LongTime(string d)

Sintaxe

LongTime(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna uma string no formato de tempo longo para um objeto de data ou string de data.

Exemplos

LongTime(Now());
// If Now() is 2017-09-16 11:59:23
// returns "11:59:23 AM"

MediumDate

Declaração

string MediumDate(date d)

string MediumDate(string d)

Sintaxe

MediumDate(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna uma string no formato de data média para um objeto de data ou string de data.

Exemplos

MediumDate(Now());
// If Now() is 2017-09-16 11:59:23
// returns "16-Sep-17"

MediumTime

Declaração

string MediumTime(date d)

string MediumTime(string d)

Sintaxe

MediumTime(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna uma string no formato de tempo médio para um objeto de data ou string de data.

Exemplos

MediumTime(Now());
// If Now() is 2017-09-16 11:59:23
// returns "11:59 AM"

MonthOfYear

Declaração

int MonthOfYear(date d)

int MonthOfYear(string d)

Sintaxe

MonthOfYear(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna o mês (1-12) para um objeto de data ou string de data.

Exemplos

MonthOfYear(Now());
// If Now() is 2017-09-16 11:59:23
// returns "9"

Now

Declaração

date Now()

Sintaxe

Now()

Descrição

Retorna um objeto de data representando os valores de data e hora no momento em que a função foi executada. A fração de segundo é truncada.

Nota

Esteja ciente de que o fuso horário da data retornada é o configurado na máquina que executa o agente. Todos os agentes de nuvem estão em UTC. Os agentes privados variam com base na máquina específica em que cada agente está sendo executado. Se você estiver usando funções de conversão, leve isso em consideração se seu projeto for projetado para ser executado na nuvem e em um agente privado.

Exemplos

Now();
// If the current date and time is 11:59:23 AM on September 16, 2017
// returns "2017-09-16 11:59:23"

Now_

Declaração

date Now_()

Sintaxe

Now_()

Descrição

Retorna um objeto de data representando os valores de data e hora no momento em que a função foi executada. O valor de tempo inclui a fração de segundo (milissegundos).

Nota

Esteja ciente de que o fuso horário da data retornada é o configurado na máquina que executa o agente. Todos os agentes de nuvem estão em UTC. Os agentes privados variam com base na máquina específica em que cada agente está sendo executado. Se você estiver usando funções de conversão, leve isso em consideração se seu projeto for projetado para ser executado na nuvem e em um agente privado.

Exemplos

Now_();
// If the current date and time is 11:59:23.123 AM on September 16, 2017
// returns "2017-09-16 11:59:23.123"

ShortDate

Declaração

string ShortDate(date d)

string ShortDate(string d)

Sintaxe

ShortDate(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna uma string no formato de data abreviada para um objeto de data ou string de data.

Exemplos

ShortDate(Now());
// If Now() is 2017-09-16 11:59:23
// returns "9/16/17"

ShortTime

Declaração

string ShortTime(date d)

string ShortTime(string d)

Sintaxe

ShortTime(<d>)

Parâmetros obrigatórios

  • d: Um objeto de data ou uma sequência de datas

Descrição

Retorna uma string no formato de tempo curto para um objeto de data ou string de data.

Exemplos

ShortTime(Now());
// If Now() is 2017-09-16 11:59:23
// returns "11:59"