ausp-atflv лежит дата в числовом формате, нужно преобразовать в тип dats
Добрый, есть FM который конвертит float в дату.
Ключевое в вопросе - в AMDP
Если у to_date нет подходящей маски, то скорее всего придётся дико извращаться(и не факт, что получится что-то хорошее).
Последовательно сперва в строку to_varchar, потом в дату to_date Или можно создать cds которая конвертит в дату (там немного другие функции). Но через cds хуже, тк если на это поле будет завязано сравнение, насколько я помню, оно сперва все данные склнвертит, а только потом станет налагать условие
METHOD sel_ausp BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT USING AUSP. et_ausp_date = select objek, atinn, atflv, atflb, TO_DATS ( SUBSTRING( TO_INT( atflv ), 0, 10 ) ) as atflv_as_abap_date from ausp WHERE mandt = :iv_mandt and atinn = :iv_atinn; ENDMETHOD.
но я бы использовал CDS для выборки из AUSP. 1) Тестировать легче 2) можно использовать в других CDS и развернуть AUSP из строк в колонки
Обсуждают сегодня