Blaze » Чт окт 09, 2008 8:10 pm
В DTPicker выбираю формат Custom MM:dd:yyyy HH:mm:ss.
Time по умолчанию ставлю 00:00:01, иначе его сразу не будет видно.
Value в обоих компонентах присваиваю теги типа message (TimeBefore и TimeAfter).
В AlmDbViewCtrl ставлю галочку Use Specific Time, для EndTime и StartTime также присваиваю теги (TimeBefore_end и TimeAfter_end).
Для кнопки, выполняющей выбор пишу скрипт Action (сначала разбиваю строки на части и соединяю в другом порядке)
TimeB_1 = StringMid(TimeBefore, 1, 2);
TimeB_2 = StringMid(TimeBefore, 4, 2);
TimeB_3 = StringMid(TimeBefore, 7, 4);
IF StringLen(TimeBefore) == 19 THEN {* если кол-во часов - 2 цифры*}
TimeB_4 = StringMid(TimeBefore, 12, 2);
TimeB_5 = StringMid(TimeBefore, 15, 2);
TimeB_6 = StringMid(TimeBefore, 18, 2);
ELSE
IF StringLen(TimeBefore) == 18 THEN {* если кол-во часов - 1 цифра*}
TimeB_4 = "0" + StringMid(TimeBefore, 12, 1);
TimeB_5 = StringMid(TimeBefore, 14, 2);
TimeB_6 = StringMid(TimeBefore, 17, 2);
ENDIF;
ENDIF;
TimeA_1 = StringMid(TimeAfter, 1, 2);
TimeA_2 = StringMid(TimeAfter, 4, 2);
TimeA_3 = StringMid(TimeAfter, 7, 4);
IF StringLen(TimeAfter) == 19 THEN
TimeA_4 = StringMid(TimeAfter, 12, 2);
TimeA_5 = StringMid(TimeAfter, 15, 2);
TimeA_6 = StringMid(TimeAfter, 18, 2);
ELSE
IF StringLen(TimeAfter) == 18 THEN
TimeA_4 = "0" + StringMid(TimeAfter, 12, 1);
TimeA_5 = StringMid(TimeAfter, 14, 2);
TimeA_6 = StringMid(TimeAfter, 17, 2);
ENDIF;
ENDIF;
TimeBefore_end = TimeB_2 + "/" + TimeB_1 + "/" + TimeB_3 + " " + TimeB_4 + ":" + TimeB_5 + ":" + TimeB_6;
TimeAfter_end = TimeA_2 + "/" + TimeA_1 + "/" + TimeA_3 + " " + TimeA_4 + ":" + TimeA_5 + ":" + TimeA_6;
#AlmDbViewCtrl1.Refresh();
Т.к. галочка Use Specific Time стоит, то при Refresh происходит выборка.
Если ничего не забыл, то это все.