DateOffset

A função de texto DateOffset() (válida para tabelas relacionais, bem como valores do tipo data em grades de planejamento e Essbase) calculará uma nova data deslocando a data referenciada pelo offset-amount especificado. O parâmetro offset-amount é baseado nas unidades especificadas (dias, meses ou anos). O parâmetro table-name é opcional se a função de texto aparecer em uma tabela relacional ou se houver apenas uma única tabela relacional no relatório; caso contrário, o table-name precisa ser fornecido. A referência de linha é opcional e será current-row se não for fornecida. O parâmetro da unidade é obrigatório e precisa ser dia, mês ou ano.

Sintaxe

DateOffset("Grid/TableName", row-reference,col-reference, calendar-unit, offsetAmount)

Parâmetros

Grid/TableName - este é um parâmetro opcional se a função de texto for usada em uma célula de texto da grade/tabela relacional. Se a função de texto for usada em um objeto de Texto, o parâmetro grid/table-name será opcional se houver apenas uma única tabela relacional no relatório; caso contrário, o parâmetro grid/table-name será obrigatório.

row-reference - é um parâmetro opcional. Se nenhum parâmetro row-reference for fornecido, a linha 'atual' (a linha em que a função de texto ocorre) será usada (isso é semelhante à maneira como funções de texto como CellValue() e CellText() funcionam). Se a função de texto de deslocamento de data ocorrer em um objeto de texto, a row-reference será necessária. A referência de linha pode incluir um deslocamento (por exemplo: uma row-reference de 1(5) retornará o attribute-value para a 5ª tupla na linha 1). A coluna referenciada deve fazer referência a um valor de data ou registro hora e data na origem de dados, caso contrário, uma string vazia será retornada.

col-reference - este é um parâmetro opcional. Se nenhum parâmetro col-reference for fornecido, a coluna 'atual' (a coluna em que a função de texto ocorre) será usada (isso é semelhante à maneira como funções de texto como CellValue() e CellText() funcionam). Se a função de texto de deslocamento de data ocorrer em um objeto de texto, o parâmetro col-reference será necessário. O parâmetro col-reference pode incluir um deslocamento (por exemplo: C(E) fará referência ao 5º attribute-name na coluna C). A coluna referenciada deve fazer referência a um valor de data ou registro hora e data na origem de dados, caso contrário, uma string vazia será retornada.

calendar-unit - A unidade do calendário é um parâmetro obrigatório. Pode ser: dia, mês ou ano; e determinará em qual unidade de medida o deslocamento da diferença de dados será calculado.

offsetAmount - O offset-amount é obrigatório e deve ser um número inteiro positivo ou negativo (não zero). Se o offset-amount for positivo, ele deve incluir um símbolo '+' à esquerda (por exemplo: +3).

Note:

Se row-reference ou col-reference se referir a um valor que não seja de data, a função retornará uma string vazia.

Não há validação adicional feita quando uma função DateOffset() faz referência a uma coluna/célula que não contém uma data. A função retornará uma string vazia neste caso.

Conforme especificado na descrição do parâmetro, se offsetAmount for um número positivo, ele deve ser precedido por um símbolo de mais '+'. Se o símbolo de mais estiver faltando e não houver nenhum símbolo negativo, ocorrerá um erro de sintaxe. Isso é necessário para poder analisar corretamente a string da função de texto.

Exemplo

Se o valor da data na coluna B referenciada for "21 de julho de 2023":

  • DateOffset(B, dia, +4) retornará 25 de Julho de 2023
  • DateOffset(B, dia, -4) retornará 17 de Julho de 2023
  • DateOffset(B, mês, +1) retornará 21 de agosto de 2023
  • DateOffset(B, mês, -1) retornará 21 de junho de 2023
  • DateOffset(B, ano, +2) retornará 21 de agosto de 2025
  • DateOffset(B, ano, -2) retornará 21 de junho de 2021