Вычитание часов из метки времени в отчете SAP BO Webi

#sap #business-objects

#бизнес-объекты

Вопрос:

Необходимо вычесть метку времени в столбце даты в отчете SAP Webi.

Временная метка находится в строке, например « 20190302000001 «, и нет надлежащей структуры из-за информации, полученной с SQL server. Мне нужно вычесть два часа из указанной выше метки времени. Я пробовал функцию относительной даты, но она не работает, поскольку метка времени является строкой. Я пробовал To_date() функцию, но она также не поддерживается.

Кто-нибудь, подскажите мне, как это решить.

Ответ №1:

Вы действительно близки к цели. Я создал переменную с именем Timestamp Text, но вместо этого вы бы использовали свой объект Timestamp.

 [Timestamp Text]="20190302000001"
  

Вам действительно нужно использовать функцию ToDate(), но вам нужно указать ей, в каком формате находится ваша строка. Вот полезная ссылка на различные части значения даты / времени.

 [Timestamp Date]=ToDate([Timestamp Text]; "yyyyMMddhhmmss")
  

Затем вы используете функцию RelativeDate() для вычитания двух часов.

 [Timestamp Minus 2 Hours Date]=RelativeDate([Timestamp Date]; -2; HourPeriod)
  

Я не уверен, нужна ли вам эта часть, но вы можете преобразовать ее обратно в тот же формат строки, с которого вы начали, используя функцию formatDate().

 [Timestamp Minus 2 Hours Text]=FormatDate([Timestamp Minus 2 Hours Date]; "yyyyMMddhhmmss")
  

Вот значения каждой из переменных, чтобы показать прогрессию. Мне пришлось изменить формат столбцов даты, чтобы отобразить время.

введите описание изображения здесь

Надеюсь, это поможет вам,

Ноэль