Диплом: Автоматизация процесса контроля знаний учащихся ГУО "Средняя школа №8 г. Полоцка"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
150
k4:=0;
k3:=0;
for i:=1 to fmain.QRas.RecordCount do
begin
if fmain.QRas.FieldByName('3_четверть').AsInteger = 10 then k10:=k10 + 1;
if fmain.QRas.FieldByName('3_ четверть ').AsInteger = 9 then k9:=k9 + 1;
if fmain.QRas.FieldByName('3_ четверть ').AsInteger = 8 then k8:=k8 + 1;
if fmain.QRas.FieldByName('3_ четверть ').AsInteger = 7 then k7:=k7 + 1;
if fmain.QRas.FieldByName('3_ четверть ').AsInteger = 6 then k6:=k6 + 1;
if fmain.QRas.FieldByName('3_ четверть ').AsInteger = 5 then k5:=k5 + 1;
if fmain.QRas.FieldByName('3_ четверть ').AsInteger = 4 then k4:=k4 + 1;
if fmain.QRas.FieldByName('3_ четверть ').AsInteger = 3 then k3:=k3 + 1;
fmain.QRas.Next;
end;
kol10_4:=k10 + k9+ k8+ k7+ k6+ k5+ k4;
kol10_7:=k10 + k9+ k8+ k7;
fmain.QRas.First;
absuspev:=FloatToStr(RoundTo(((kol10_4 *
100)/fmain.ADOTable3.RecordCount),-2));
kachuspev:=FloatToStr(RoundTo(((kol10_7 *
100)/fmain.ADOTable3.RecordCount),-2));
sou:=FloatToStr(RoundTo(((((k10+k9)*100)+((k8+k7)*64)+((k6+k5)*36)+((k4+k3)*
16))/fmain.ADOTable3.RecordCount),-2));
fmain.StringGrid2.Cells[1,3]:=fmain.ADOTable2DSDesigner2.AsString;
fmain.StringGrid2.Cells[2,3]:=IntToStr(fmain.ADOTable3.RecordCount);
fmain.StringGrid2.Cells[3,3]:=IntToStr(k10+k9);
fmain.StringGrid2.Cells[4,3]:=IntToStr(k8+k7);
fmain.StringGrid2.Cells[5,3]:=kachuspev;
fmain.StringGrid2.Cells[6,3]:=absuspev;
fmain.StringGrid2.Cells[7,3]:=sou;
151
//////////////// Заполнение4четверть ////////////////////////////
k10:=0;
k9:=0;
k8:=0;
k7:=0;
k6:=0;
k5:=0;
k4:=0;
k3:=0;
for i:=1 to fmain.QRas.RecordCount do
begin
if fmain.QRas.FieldByName('4_ четверть').AsInteger = 10 then k10:=k10 + 1;
if fmain.QRas.FieldByName('4_ четверт ').AsInteger = 9 then k9:=k9 + 1;
if fmain.QRas.FieldByName('4_ четверть').AsInteger = 8 then k8:=k8 + 1;
if fmain.QRas.FieldByName('4_ четверть').AsInteger = 7 then k7:=k7 + 1;
if fmain.QRas.FieldByName('4_ четверть').AsInteger = 6 then k6:=k6 + 1;
if fmain.QRas.FieldByName('4_ четверть').AsInteger = 5 then k5:=k5 + 1;
if fmain.QRas.FieldByName('4_ четверть').AsInteger = 4 then k4:=k4 + 1;
if fmain.QRas.FieldByName('4_ четверть').AsInteger = 3 then k3:=k3 + 1;
fmain.QRas.Next;
end;
kol10_4:=k10 + k9+ k8+ k7+ k6+ k5+ k4;
kol10_7:=k10 + k9+ k8+ k7;
fmain.QRas.First;
absuspev:=FloatToStr(RoundTo(((kol10_4 *
100)/fmain.ADOTable3.RecordCount),-2));
kachuspev:=FloatToStr(RoundTo(((kol10_7 *
100)/fmain.ADOTable3.RecordCount),-2));
sou:=FloatToStr(RoundTo(((((k10+k9)*100)+((k8+k7)*64)+((k6+k5)*36)+((k4+k3)*
16))/fmain.ADOTable3.RecordCount),-2));
152
fmain.StringGrid2.Cells[1,4]:=fmain.ADOTable2DSDesigner2.AsString;
fmain.StringGrid2.Cells[2,4]:=IntToStr(fmain.ADOTable3.RecordCount);
fmain.StringGrid2.Cells[3,4]:=IntToStr(k10+k9);
fmain.StringGrid2.Cells[4,4]:=IntToStr(k8+k7);
fmain.StringGrid2.Cells[5,4]:=kachuspev;
fmain.StringGrid2.Cells[6,4]:=absuspev;
fmain.StringGrid2.Cells[7,4]:=sou;
//////////////// Заполнение1полугодие ////////////////////////////
k10:=0;
k9:=0;
k8:=0;
k7:=0;
k6:=0;
k5:=0;
k4:=0;
k3:=0;
for i:=1 to fmain.QRas.RecordCount do
begin
if fmain.QRas.FieldByName('1_полугодие').AsInteger = 10 then k10:=k10 + 1;
if fmain.QRas.FieldByName('1_ полугодие').AsInteger = 9 then k9:=k9 + 1;
if fmain.QRas.FieldByName('1_ полугодие').AsInteger = 8 then k8:=k8 + 1;
if fmain.QRas.FieldByName('1_ полугодие').AsInteger = 7 then k7:=k7 + 1;
if fmain.QRas.FieldByName('1_ полугодие').AsInteger = 6 then k6:=k6 + 1;
if fmain.QRas.FieldByName('1_ полугодие').AsInteger = 5 then k5:=k5 + 1;
if fmain.QRas.FieldByName('1_ïîëóãîäèå').AsInteger = 4 then k4:=k4 + 1;
if fmain.QRas.FieldByName('1_ïîëóãîäèå').AsInteger = 3 then k3:=k3 + 1;
fmain.QRas.Next;
end;
kol10_4:=k10 + k9+ k8+ k7+ k6+ k5+ k4;
kol10_7:=k10 + k9+ k8+ k7;
153
fmain.QRas.First;
absuspev:=FloatToStr(RoundTo(((kol10_4 *
100)/fmain.ADOTable3.RecordCount),-2));
kachuspev:=FloatToStr(RoundTo(((kol10_7 *
100)/fmain.ADOTable3.RecordCount),-2));
sou:=FloatToStr(RoundTo(((((k10+k9)*100)+((k8+k7)*64)+((k6+k5)*36)+((k4+k3)*
16))/fmain.ADOTable3.RecordCount),-2));
fmain.StringGrid2.Cells[1,5]:=fmain.ADOTable2DSDesigner2.AsString;
fmain.StringGrid2.Cells[2,5]:=IntToStr(fmain.ADOTable3.RecordCount);
fmain.StringGrid2.Cells[3,5]:=IntToStr(k10+k9);
fmain.StringGrid2.Cells[4,5]:=IntToStr(k8+k7);
fmain.StringGrid2.Cells[5,5]:=kachuspev;
fmain.StringGrid2.Cells[6,5]:=absuspev;
fmain.StringGrid2.Cells[7,5]:=sou;
//////////////// Заполнение2полугодие////////////////////////////
k10:=0;
k9:=0;
k8:=0;
k7:=0;
k6:=0;
k5:=0;
k4:=0;
k3:=0;
for i:=1 to fmain.QRas.RecordCount do
begin
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 10 then k10:=k10 + 1;
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 9 then k9:=k9 + 1;
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 8 then k8:=k8 + 1;
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 7 then k7:=k7 + 1;
154
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 6 then k6:=k6 + 1;
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 5 then k5:=k5 + 1;
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 4 then k4:=k4 + 1;
if fmain.QRas.FieldByName('2_ полугодие').AsInteger = 3 then k3:=k3 + 1;
fmain.QRas.Next;
end;
kol10_4:=k10 + k9+ k8+ k7+ k6+ k5+ k4;
kol10_7:=k10 + k9+ k8+ k7;
fmain.QRas.First;
absuspev:=FloatToStr(RoundTo(((kol10_4 *
100)/fmain.ADOTable3.RecordCount),-2));
kachuspev:=FloatToStr(RoundTo(((kol10_7 *
100)/fmain.ADOTable3.RecordCount),-2));
sou:=FloatToStr(RoundTo(((((k10+k9)*100)+((k8+k7)*64)+((k6+k5)*36)+((k4+k3)*
16))/fmain.ADOTable3.RecordCount),-2));
fmain.StringGrid2.Cells[1,6]:=fmain.ADOTable2DSDesigner2.AsString;
fmain.StringGrid2.Cells[2,6]:=IntToStr(fmain.ADOTable3.RecordCount);
fmain.StringGrid2.Cells[3,6]:=IntToStr(k10+k9);
fmain.StringGrid2.Cells[4,6]:=IntToStr(k8+k7);
fmain.StringGrid2.Cells[5,6]:=kachuspev;
fmain.StringGrid2.Cells[6,6]:=absuspev;
fmain.StringGrid2.Cells[7,6]:=sou;
//////////////// ЗаполнениеГодовая////////////////////////////
k10:=0;
k9:=0;
k8:=0;
k7:=0;
k6:=0;
k5:=0;
155
k4:=0;
k3:=0;
for i:=1 to fmain.QRas.RecordCount do
begin
if fmain.QRas.FieldByName('Годовая').AsInteger = 10 then k10:=k10 + 1;
if fmain.QRas.FieldByName(' Годовая').AsInteger = 9 then k9:=k9 + 1;
if fmain.QRas.FieldByName(' Годовая').AsInteger = 8 then k8:=k8 + 1;
if fmain.QRas.FieldByName(' Годовая').AsInteger = 7 then k7:=k7 + 1;
if fmain.QRas.FieldByName(' Годовая').AsInteger = 6 then k6:=k6 + 1;
if fmain.QRas.FieldByName(' Годовая').AsInteger = 5 then k5:=k5 + 1;
if fmain.QRas.FieldByName(' Годовая').AsInteger = 4 then k4:=k4 + 1;
if fmain.QRas.FieldByName(' Годовая').AsInteger = 3 then k3:=k3 + 1;
fmain.QRas.Next;
end;
kol10_4:=k10 + k9+ k8+ k7+ k6+ k5+ k4;
kol10_7:=k10 + k9+ k8+ k7;
fmain.QRas.First;
absuspev:=FloatToStr(RoundTo(((kol10_4 *
100)/fmain.ADOTable3.RecordCount),-2));
kachuspev:=FloatToStr(RoundTo(((kol10_7 *
100)/fmain.ADOTable3.RecordCount),-2));
sou:=FloatToStr(RoundTo(((((k10+k9)*100)+((k8+k7)*64)+((k6+k5)*36)+((k4+k3)*
16))/fmain.ADOTable3.RecordCount),-2));
fmain.StringGrid2.Cells[1,7]:=fmain.ADOTable2DSDesigner2.AsString;
fmain.StringGrid2.Cells[2,7]:=IntToStr(fmain.ADOTable3.RecordCount);
fmain.StringGrid2.Cells[3,7]:=IntToStr(k10+k9);
fmain.StringGrid2.Cells[4,7]:=IntToStr(k8+k7);
fmain.StringGrid2.Cells[5,7]:=kachuspev;
fmain.StringGrid2.Cells[6,7]:=absuspev;
fmain.StringGrid2.Cells[7,7]:=sou;
156
fmain.BitBtn11.Enabled:=true;
end;
procedure TfMain.TabSheet5Show(Sender: TObject);
begin
fmain.StringGrid2.Cells[0,0]:='Период';
fmain.StringGrid2.ColWidths[0]:=90;
fmain.StringGrid2.Cells[1,0]:='Класс'; fmain.StringGrid2.ColWidths[1]:=40;
fmain.StringGrid2.Cells[2,0]:='Кол-во учащихся';
fmain.StringGrid2.ColWidths[2]:=90;
fmain.StringGrid2.Cells[3,0]:='Кол-во10/9';
fmain.StringGrid2.ColWidths[3]:=70;
fmain.StringGrid2.Cells[4,0]:='Кол-во8/7';
fmain.StringGrid2.ColWidths[4]:=70;
fmain.StringGrid2.Cells[5,0]:='Качественная успеваемость,%';
fmain.StringGrid2.ColWidths[5]:=170;
fmain.StringGrid2.Cells[6,0]:='Абсолютная успеваемость,%';
fmain.StringGrid2.ColWidths[6]:=170;
fmain.StringGrid2.Cells[7,0]:='СОУ,%';
fmain.StringGrid2.ColWidths[7]:=45;
fmain.StringGrid2.Cells[0,1]:='I четверть';
fmain.StringGrid2.Cells[0,2]:='II четверть';
fmain.StringGrid2.Cells[0,3]:='III четверть';
fmain.StringGrid2.Cells[0,4]:='IV четверть';
fmain.StringGrid2.Cells[0,5]:='1 полугодие';
fmain.StringGrid2.Cells[0,6]:='2 полугодие';
fmain.StringGrid2.Cells[0,7]:='Годовая';
157
end;
procedure TfMain.BitBtn4Click(Sender: TObject);
begin
if fmain.PageControl1.TabIndex = 0 then
begin
fdm.TKlass.Insert;
form7.Show;
end;
if fmain.PageControl1.TabIndex = 1 then form5.Show;
end;
procedure TfMain.BitBtn5Click(Sender: TObject);
begin
if (fmain.PageControl1.TabIndex = 0) AND (fmain.ComboBox1.ItemIndex =
0) then fDM.TUchenik.Locate('Фамилия', Edit1.Text, [loPartialKey]);
if (fmain.PageControl1.TabIndex = 0) AND(fmain.ComboBox1.ItemIndex = 1)
then fDM.TUchenik.Locate('Имя', Edit1.Text, [loPartialKey]);
if (fmain.PageControl1.TabIndex = 0) AND(fmain.ComboBox1.ItemIndex = 2)
then fDM.TUchenik.Locate('Отчество', Edit1.Text, [loPartialKey]);
if (fmain.PageControl1.TabIndex = 0) AND(fmain.ComboBox1.ItemIndex = 3)
then fDM.TUchenik.Locate('ДомашнийАдрес', Edit1.Text, [loPartialKey]);
if (fmain.PageControl1.TabIndex = 1) AND (fmain.ComboBox1.ItemIndex =
0) then fDM.TPrepod.Locate('Фамилия', Edit1.Text, [loPartialKey]);
if (fmain.PageControl1.TabIndex = 1) AND(fmain.ComboBox1.ItemIndex = 1)
then fDM.TPrepod.Locate('Имя', Edit1.Text, [loPartialKey]);
if (fmain.PageControl1.TabIndex = 1) AND(fmain.ComboBox1.ItemIndex = 2)
then fDM.TPrepod.Locate('Отчество', Edit1.Text, [loPartialKey]);
if (fmain.PageControl1.TabIndex = 1) AND(fmain.ComboBox1.ItemIndex = 3)
then fDM.TPrepod.Locate('Образование', Edit1.Text, [loPartialKey]);
158
end;
procedure TfMain.BitBtn6Click(Sender: TObject);
begin
if fmain.PageControl1.TabIndex = 0 then
begin
feditor.Show;
fdm.TUchenik.Insert;
feditor.DBLookupComboBox1.Enabled:=true;
end;
if fmain.PageControl1.TabIndex = 1 then
begin
form6.Show;
fdm.TPrepod.Insert;
end;
if fmain.PageControl1.TabIndex = 3 then
begin
form5.Show;
end;
if fmain.PageControl1.TabIndex = 2 then
begin
form11.Show;
form11.BitBtn1.Click;
end;
end;
procedure TfMain.BitBtn8Click(Sender: TObject);
begin
if fmain.PageControl1.TabIndex = 0 then
begin
159
if MessageDlg('Удалить выбранный класс (и всех учащихся)?
',mtConfirmation, [mbYes,mbNo],0)=mrYes
then
begin
if not DBGrid1.DataSource.DataSet.Eof
then
DBGrid1.DataSource.DataSet.Delete;
end;
end;
if fmain.PageControl1.TabIndex = 1 then
begin
if MessageDlg('Удалить учебную нагрузку (и все оценки соответственно) ?
',mtConfirmation, [mbYes,mbNo],0)=mrYes
then
begin
if not DBGrid5.DataSource.DataSet.Eof
then
DBGrid5.DataSource.DataSet.Delete;
end;
end;
end;
procedure TfMain.N6Click(Sender: TObject);
begin
form8.Show;
end;
procedure TfMain.N5Click(Sender: TObject);
begin
fmain.Hide;
fauth.Show;

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)