Saturday 14 November 2015

Useful TIMESTAMP Codes in OBIEE11g





Below Timestamp related codes are very very useful in Obiee. These codes are to be placed in the Column Formula (fx tab) or Can be used in Filter conditions in Criteria tab.

Current Date:

TIMESTAMPADD(SQL_TSI_DAY, 0, CURRENT_DATE)

Previous Date:


TIMESTAMPADD(SQL_TSI_DAY, -1, CURRENT_DATE)

Next Date:

TIMESTAMPADD(SQL_TSI_DAY, 1, CURRENT_DATE)

Current Month Number:

MONTH(CURRENT_DATE)

* Shows the results in Number format like 1,2,3 etc. Shows the month number.

Current Quarter Number:

QUARTER_OF_YEAR(CURRENT_DATE)


* Shows the results in Number format like 1,2,3 etc. Shows the month number.

Current Year Number:

YEAR(CURRENT_DATE)


* Shows the results in Number format like 2012,2013,2014 etc. Shows the month number.

Current Month Name:

MONTHNAME(CURRENT_DATE)

 * Shows the results in character format like Jan,Feb,Mar etc. Shows the month number.

Last Month Start Date:

TIMESTAMPADD(SQL_TSI_MONTH, -1, TIMESTAMPADD( SQL_TSI_DAY , DAYOFMONTH( CURRENT_DATE) * -(1) + 1, CURRENT_DATE))

Current Month Start Date:

TIMESTAMPADD(SQL_TSI_MONTH, 0, TIMESTAMPADD( SQL_TSI_DAY , DAYOFMONTH( CURRENT_DATE) * -(1) + 1, CURRENT_DATE))

Next Month Start Date:

TIMESTAMPADD(SQL_TSI_MONTH, 1, TIMESTAMPADD( SQL_TSI_DAY , DAYOFMONTH( CURRENT_DATE) * -(1) + 1, CURRENT_DATE))

Current Year Start Date:

TIMESTAMPADD( SQL_TSI_DAY , EXTRACT( DAY_OF_YEAR FROM CURRENT_DATE) * -(1) + 1, CURRENT_DATE)

 Last Year Start Date:

TIMESTAMPADD( SQL_TSI_YEAR , -1, TIMESTAMPADD( SQL_TSI_DAY , EXTRACT( DAY_OF_YEAR FROM CURRENT_DATE) * -(1) + 1, CURRENT_DATE))

Current Month End Date:

 TIMESTAMPADD( SQL_TSI_DAY , -1, TIMESTAMPADD( SQL_TSI_MONTH , 1, TIMESTAMPADD( SQL_TSI_DAY , DAYOFMONTH( CURRENT_DATE) * -(1) + 1, CURRENT_DATE)))

Current Year End Date:

TIMESTAMPADD(SQL_TSI_YEAR, 1, TIMESTAMPADD( SQL_TSI_DAY , -1, TIMESTAMPADD( SQL_TSI_DAY , EXTRACT( DAY_OF_YEAR FROM CURRENT_DATE) * -(1) + 1, CURRENT_DATE)))

Last Year End Date:

TIMESTAMPADD( SQL_TSI_DAY , -1, TIMESTAMPADD( SQL_TSI_DAY , EXTRACT( DAY_OF_YEAR FROM CURRENT_DATE) * -(1) + 1,CURRENT_DATE))

5 comments:

  1. how can i convert timezone from the cell from +0 to +3
    eg reports shows the cell as 01.03.2017 22:23:25 and i want to convert it to 02.03.2017 01:23:25

    ReplyDelete
    Replies
    1. Hi,

      We can achieve this in multiple ways, for server level setting change you need to modify the NQSconfig file and set the timezone to your required timezone or you can make the column level setting in Criteria--> Column Properties--> Data Format.

      Thanks,
      Nagarjuna

      Delete
  2. Hi, Can you help me with code to work out current_date for the previous year, i.e 15/11/2017. I need it to be dynamic. Thanks

    ReplyDelete
  3. How to get the data for the PREVIOUS MONTH using timestamp

    ReplyDelete
  4. Please help I want latest date stamp to be selected in my query...

    ReplyDelete