Цитата
ВЫБРАТЬ
"А" КАК Продавец,
ДАТАВРЕМЯ(2012, 5, 23, 17, 0, 0) КАК НачалоРаботы,
8 КАК Часы1,
ДАТАВРЕМЯ(2012, 5, 23, 0, 0, 0) КАК ДатаРегистрации
ПОМЕСТИТЬ Табели
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
"Б",
ДАТАВРЕМЯ(2012, 5, 23, 16, 0, 0),
2,
ДАТАВРЕМЯ(2012, 5, 23, 0, 0, 0)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Табели.Продавец,
Табели.НачалоРаботы,
Табели.Часы1,
Табели.ДатаРегистрации,
ВЫБОР
КОГДА ЧАС(Табели.НачалоРаботы) + Табели.Часы1 > 23
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК ЕстьПереход
ПОМЕСТИТЬ ЗаписиСПризнакомПерехода
ИЗ
Табели КАК Табели
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ЗаписиСПризнакомПерехода.Продавец,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы) КАК ЧасНачалаРаботы,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы) + ЗаписиСПризнакомПерехода.Часы1 КАК ЧасОкончанияРаботы,
ЗаписиСПризнакомПерехода.ДатаРегистрации
ИЗ
ЗаписиСПризнакомПерехода КАК ЗаписиСПризнакомПерехода
ГДЕ
(НЕ ЗаписиСПризнакомПерехода.ЕстьПереход)
ОБЪЕДИНИТЬ
ВЫБРАТЬ
ЗаписиСПризнакомПерехода.Продавец,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы),
23,
ЗаписиСПризнакомПерехода.ДатаРегистрации
ИЗ
ЗаписиСПризнакомПерехода КАК ЗаписиСПризнакомПерехода
ГДЕ
ЗаписиСПризнакомПерехода.ЕстьПереход
ОБЪЕДИНИТЬ
ВЫБРАТЬ
ЗаписиСПризнакомПерехода.Продавец,
0,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы) + ЗаписиСПризнакомПерехода.Часы1 - 24,
ДОБАВИТЬКДАТЕ(ЗаписиСПризнакомПерехода.ДатаРегистрации, ДЕНЬ, 1)
ИЗ
ЗаписиСПризнакомПерехода КАК ЗаписиСПризнакомПерехода
ГДЕ
ЗаписиСПризнакомПерехода.ЕстьПереход
"А" КАК Продавец,
ДАТАВРЕМЯ(2012, 5, 23, 17, 0, 0) КАК НачалоРаботы,
8 КАК Часы1,
ДАТАВРЕМЯ(2012, 5, 23, 0, 0, 0) КАК ДатаРегистрации
ПОМЕСТИТЬ Табели
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
"Б",
ДАТАВРЕМЯ(2012, 5, 23, 16, 0, 0),
2,
ДАТАВРЕМЯ(2012, 5, 23, 0, 0, 0)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Табели.Продавец,
Табели.НачалоРаботы,
Табели.Часы1,
Табели.ДатаРегистрации,
ВЫБОР
КОГДА ЧАС(Табели.НачалоРаботы) + Табели.Часы1 > 23
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК ЕстьПереход
ПОМЕСТИТЬ ЗаписиСПризнакомПерехода
ИЗ
Табели КАК Табели
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ЗаписиСПризнакомПерехода.Продавец,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы) КАК ЧасНачалаРаботы,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы) + ЗаписиСПризнакомПерехода.Часы1 КАК ЧасОкончанияРаботы,
ЗаписиСПризнакомПерехода.ДатаРегистрации
ИЗ
ЗаписиСПризнакомПерехода КАК ЗаписиСПризнакомПерехода
ГДЕ
(НЕ ЗаписиСПризнакомПерехода.ЕстьПереход)
ОБЪЕДИНИТЬ
ВЫБРАТЬ
ЗаписиСПризнакомПерехода.Продавец,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы),
23,
ЗаписиСПризнакомПерехода.ДатаРегистрации
ИЗ
ЗаписиСПризнакомПерехода КАК ЗаписиСПризнакомПерехода
ГДЕ
ЗаписиСПризнакомПерехода.ЕстьПереход
ОБЪЕДИНИТЬ
ВЫБРАТЬ
ЗаписиСПризнакомПерехода.Продавец,
0,
ЧАС(ЗаписиСПризнакомПерехода.НачалоРаботы) + ЗаписиСПризнакомПерехода.Часы1 - 24,
ДОБАВИТЬКДАТЕ(ЗаписиСПризнакомПерехода.ДатаРегистрации, ДЕНЬ, 1)
ИЗ
ЗаписиСПризнакомПерехода КАК ЗаписиСПризнакомПерехода
ГДЕ
ЗаписиСПризнакомПерехода.ЕстьПереход
З.Ы. От окончания работы надо наверно все же секунду отнимать, или в соединении условие на "час окончания" ставить просто меньше без равно. Потому что получится если человек пришел в 17:00 и отработал 2 часа, ЧасОкончания будет 19:00, при соединении с продажами ему попадут продажи за 17:00, 18:00 и 19:00. Но 19:00 там ведь быть не должно.



Публикации
Мужчина
История изменения имен

