135
}
//---------------------------------------------------------------------------
void __fastcallTForm_zp::FormClose(TObject *Sender,
TCloseAction&Action)
{
ADOQuery1->Active=false;
ADOConnection1->Connected = false;
}
//---------------------------------------------------------------------------
void __fastcallTForm_zp::ButtonSearchClick(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT [Табельный №], ФИО, Должность,
Отдел, Заработано AS Сделка, БЛ AS Больничные, Отпуск AS Отпускные,
(Заработано+БЛ+Отпуск) AS Итого FROM "
"(SELECT [Табельный №], ФИО, Должность, Отдел, SUM(Сделка)
AS Заработано, SUM(Больничные) AS БЛ, SUM(Отпускные) AS Отпуск FROM "
"(SELECT R.id AS [Табельный №], R.ФИО AS ФИО, D.наименование
AS Должность, O.наименование AS Отдел, (T.[количество часов]*Op.оплата) AS
Сделка, IIf(Op.наименование='Больничный',ROUND((T.[количество
часов]*R.средний_заработок*(SELECT FIRST(значение) FROM Коэффициенты
WHERE наименование = 'Больничный')),0),0) AS Больничные,
IIf(Op.наименование='Отпуск',ROUND((T.[количество
часов]*R.средний_заработок*(SELECT FIRST(значение) FROM Коэффициенты
WHERE наименование = 'Отпуск')),0),0) AS Отпускные, T.дата AS Дата FROM
Работники AS R, Отделы AS O, Должности AS D, Табель AS T, Операции AS Op
WHERE O.id=R.код_отделаAnd D.id=R.код_должностиAnd
T.код_работника=R.id AndT.код_операции=Op.id");