#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")
Вот значения каждой из переменных, чтобы показать прогрессию. Мне пришлось изменить формат столбцов даты, чтобы отобразить время.
Надеюсь, это поможет вам,
Ноэль