Для прохода через SQL требуется значение даты, представленное формой, отображаемой в вашем пользовательском формате изображения. Отправьте этот рендеринг в макропеременную, а не в базовое значение.
call symput ('sdt',put(sdt,dbdate.));
Вы можете исключить шаг DATA до SQL, если вы закодировали
proc sql;
connect to db (database=bob user="&srvuser" password="&srvpass") ;
create table ted as
select * from connection to db
(Select *
from work
where num = 7387
and
ADD_TMSTMP
<
%sysfunc(intnx(HOUR,%sysfunc(datetime()),-1,SAME),dbdate.)
);
disconnect from db;
quit;
run;
Если проход через SQL требуется представление даты в одинарных кавычках, например, '2020-02-21-06.06.36'
. Вам нужно будет обновить свой пользовательский формат, чтобы включить ограничивающие одинарные кавычки.
proc format;
picture dbdate
other = '''%Y-%0m-%0d-%0H.%0M.%0S''' (datatype=datetime);
run;