Преобразование времени

 
Подскажите, пожалуйста, как проще всего получить значение заданого составного времени, например 23:30 в день открытия ордера?

Что-то типа (только это не работает)
h=23;
m=30
MyDateTime=D'TimeYear(OrderOpen()).TimeMonth(OrderOpen()).TimeDay(OrderOpen()) h:m';


 
Не знаю как проще всего, но так должно работать

int h=23;
int m=30;
datetime MyDateTime=StrToTime(TimeToStr( OrderOpen(),TIME_DATE))+h*3600+m*60;


 
Не знаю как проще всего, но так должно работать

int h=23;
int m=30;
datetime MyDateTime=StrToTime(TimeToStr( OrderOpen(),TIME_DATE))+h*3600+m*60;




Спасибо, не знал, что есть TIME_DATE!
Причина обращения: