⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tcoursestatisticsunit.pas

📁 DELPHI计算机科学系教务管理系统,带论文设计,不错的参考
💻 PAS
📖 第 1 页 / 共 2 页
字号:
    begin
    tep:=fieldbyname('tcscode').AsString;
              sqlStr := 'UPDATE TCourseReward2 SET '
              + 'tcscode=' + QuotedStr(tep)
              + 'WHERE tcscode=' + QuotedStr(tep);
              ToExecSQL(sqlStr, DM.ADOConnection1);
      next;
    end;
    adoqry2.Free;   
 end;
  TControlAccess(DBGrid1).OnMouseWheel := GridMouseWheel;
end;

procedure TTCourseStatisticsForm.FormShow(Sender: TObject);
begin
  adoquery1.Open;
  with adoquery1 do
   begin
     edttcname.Text := fieldByName('tname').AsString;
     edttclessoncount.Text := fieldByName('trlessonscount').AsString;
     edttraward.Text:=fieldByName('traward').AsString;
     edttrsignature.Text:=fieldByName('trsignature').AsString;
     edttcpost.Text:=fieldbyname('tpost').AsString;
     edttcdepartment.Text:=fieldbyname('tcdepartment').AsString;
     edttrwages.Text:=fieldbyname('trwages').AsString;
     edttrtaxrate.Text:=fieldbyname('trtaxrate').AsString;
     edttremuneration.Text:=fieldbyname('tremuneration').AsString;
     edttrtax.Text:=fieldbyname('trtax').AsString;
     edttrtaxrate.Text:=fieldbyname('trtaxrate').AsString;
     edttrstandard.Text:= fieldbyname('trstandard').AsString;

     if fieldByName('tbool').AsString = '是' then
         cbtcout.Checked:=true
     else
         cbtcout.Checked:=false;
   end;      
    ControlTheEnablePro(true);

end;

procedure TTCourseStatisticsForm.GridMouseWheel(Sender: TObject;
  Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint;
  var Handled: Boolean);
begin
  TDBGrid(Sender).DataSource.DataSet.MoveBy(-WheelDelta div WHEEL_DELTA);
  Handled := True;
end;

procedure TTCourseStatisticsForm.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
 if gdSelected in State then Exit;  //隔行改变网格背景色:
  if adoquery1.RecNo mod 2 = 0 then
    (Sender as TDBGrid).Canvas.Brush.Color := clinfobk //定义背景颜色
  else
    (Sender as TDBGrid).Canvas.Brush.Color := RGB(191, 255, 223);  //定义背景颜色

  //定义网格线的颜色:
  DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
  with (Sender as TDBGrid).Canvas do //画 cell 的边框
  begin
    Pen.Color := $00ff0000; //定义画笔颜色(蓝色)
    MoveTo(Rect.Left, Rect.Bottom); //画笔定位
    LineTo(Rect.Right, Rect.Bottom); //画蓝色的横线
    Pen.Color := clbtnface; //定义画笔颜色(兰色)
    MoveTo(Rect.Right, Rect.Top); //画笔定位
    LineTo(Rect.Right, Rect.Bottom); //画绿色
  end;
end;

procedure TTCourseStatisticsForm.ADOQuery1AfterScroll(DataSet: TDataSet);
var
  adoqry:Tadoquery;
begin
  adoquery1.Open;
  with adoquery1 do
     begin
     temptcscode:=adoquery1.fieldbyname('tno').AsString;
     temptrno:= fieldByName('trno').AsString;
     edttcname.Text := fieldByName('tname').AsString;
     edttclessoncount.Text := fieldByName('trlessonscount').AsString;
     edttraward.Text:=fieldByName('traward').AsString;
     edttrsignature.Text:=fieldByName('trsignature').AsString;
     edttcpost.Text:=fieldbyname('tpost').AsString;
     edttcdepartment.Text:=fieldbyname('tcdepartment').AsString;
     edttrwages.Text:=fieldbyname('trwages').AsString;
     edttrtaxrate.Text:=fieldbyname('trtaxrate').AsString;
     edttremuneration.Text:=fieldbyname('tremuneration').AsString;
     edttrtax.Text:=fieldbyname('trtax').AsString;
     edttrtaxrate.Text:=fieldbyname('trtaxrate').AsString;
     edttrstandard.Text:= fieldbyname('trstandard').AsString;
     if fieldByName('tbool').AsString = '是' then
         cbtcout.Checked:=true
     else
         cbtcout.Checked:=false;
    end;
    adoqry:=tadoquery.Create(self);
     with adoqry do
     begin
       connection:=dm.ADOConnection1;
       Sql.Text:='select sum(tclessoncount) as no from TCourse where tcscode='+quotedstr(adoquery1.fieldbyname('tno').AsString);
       open;
       edttclessoncount.Text:=adoqry.fieldbyname('no').AsString;
       sql.Text:= 'UPDATE TCourseReward2 SET '
                + 'trlessonscount=' + QuotedStr(edttclessoncount.Text)
                + 'WHERE trno=' + QuotedStr(adoquery1.fieldbyname('trno').AsString);
       ExecSQL;
     end;
end;

procedure TTCourseStatisticsForm.btnFindClick(Sender: TObject);
var
  sqlStr:string;
begin
     adoquery1.Open;
     sqlStr :='select  distinct tt.tno,tt.tname,tt.tpost,tt.tcdepartment,tcr.trno,tcr.tcscode ,tcr.trstandard,tcr.traward,tcr.tremuneration,tcr.trtaxrate,tcr.trtax,'
              +'tcr.trwages,tcr.trsignature,tt.tbool,tcr.trlessonscount from  TCourseReward2 tcr inner join tteacher tt on tt.tno=tcr.tcscode     WHERE 1=1';

  if combobox1.ItemIndex <> 0 then
     sqlStr := sqlstr+'AND tt.tbool=' + QuotedStr(combobox1.Text);

  if edtyear.Text <> '' then
     sqlStr := sqlstr+ ' AND tt.tname like ''%'+ edtyear.Text + '%''';

  if combobox3.ItemIndex <> 0 then
     sqlStr := sqlstr+ ' AND tt.tpost like ''%'+ combobox3.Text + '%''';

   with adoquery1 do
   begin
     Sql.Text := sqlStr;
     Open;
   end;
   edtyear.Text:='';
   combobox1.ItemIndex:=0;
   combobox3.ItemIndex:=0;

end;

procedure TTCourseStatisticsForm.Button1Click(Sender: TObject);
begin
     tongjiForm.ShowModal;
     CopyDbDataToExcel([DBGrid1]);
end;

procedure TTCourseStatisticsForm.BitBtn4Click(Sender: TObject);
begin
   adoquery1.Open;   
   if adoquery1.FieldByName('trno').AsString = ''then
   begin
     showmessage('此记录尚未添加,不可做修改!');
   end
   else
   begin
    ControlTheEnablePro(false);
    edttrtax.SetFocus;
    flag:=2;      
   end;
end;

procedure TTCourseStatisticsForm.BitBtn6Click(Sender: TObject);
var
  sqlstr,uno :string;
begin
   uno := GetUno;
   if  flag =1 then
     begin
       sqlstr:='INSERT TCourseReward2(trno,tcscode,trstandard,tremuneration,trtaxrate,trtax,trwages,'
                      +'traward,trsignature)'
                      + 'Values('
                      + QuotedStr(uno)+','
                      + QuotedStr(temptcscode)+','
                      + QuotedStr(edttrstandard.Text)+','
                      + QuotedStr(edttremuneration.Text)+','
                      + QuotedStr(edttrtaxrate.Text)+','
                      + QuotedStr(edttrtax.Text)+','
                      + QuotedStr(edttrwages.Text)+','
                      + QuotedStr(edttraward.Text)+','
                      + QuotedStr(edttrsignature.Text)
                      +')';
          ToExecSQL(sqlStr, DM.ADOConnection1);
       showmessage('添加成功!');
       adoquery1.Close;
       adoquery1.Open;
     end
   else
   if  flag=2 then
     begin
        sqlStr := 'UPDATE TCourseReward2 SET '
                  + 'trwages=' + QuotedStr(edttrwages.Text) +','
                  + 'trtaxrate=' + QuotedStr(edttrtaxrate.Text) +','
                  + 'tremuneration=' + QuotedStr(edttremuneration.Text) +','
                  + 'trstandard=' + QuotedStr(edttrstandard.Text) +','
                  + 'trtax=' + QuotedStr(edttrtax.Text) +','
                  + 'trsignature=' + QuotedStr(edttrsignature.Text) +','
                  + 'traward=' + QuotedStr(edttraward.Text)
                  + 'WHERE trno=' + QuotedStr(temptrno);
                  ToExecSQL(sqlStr, DM.ADOConnection1);
        showmessage('修改成功!');
        adoquery1.close;
        adoquery1.open;
    end;
    ControlTheEnablePro(true);
end;

procedure TTCourseStatisticsForm.BitBtn5Click(Sender: TObject);
begin
    ControlTheEnablePro(true);
end;

procedure TTCourseStatisticsForm.BitBtn7Click(Sender: TObject);
begin
  close;
end;

procedure TTCourseStatisticsForm.btnReportClick(Sender: TObject);
begin
   TCourseStatisticsQRForm.QuickRep1.Preview;
end;

procedure TTCourseStatisticsForm.BitBtn2Click(Sender: TObject);
begin
   adoquery1.Open;

   if adoquery1.FieldByName('trno').AsString<>''then
   begin
     showmessage('此记录已添加过,可做修改!');
   end
   else
   begin
    ControlTheEnablePro(false);
    edttrstandard.Text:='';
    edttraward.Text:='';
    edttremuneration.Text:='';
    edttrtaxrate.Text:='';
    edttrtax.Text:='';
    edttrwages.Text:='';
    edttrsignature.Text:='';
    edttrtax.SetFocus;
    flag:=1;  
    end;
end;

procedure TTCourseStatisticsForm.BitBtn3Click(Sender: TObject);
var
  sqlstr:string;
begin

  if messagebox(handle,'您确定要删除吗?','提示',MB_YESNO + MB_ICONQUESTION)=ID_yes  then
    begin
      sqlStr :=  'delete from TCourseReward2 where trno='+quotedstr(temptrno);
      ToExecSQL(sqlStr, DM.ADOConnection1);
      showmessage('删除成功!');
      adoquery1.Close;
      adoquery1.Open;
    end;
end;

procedure TTCourseStatisticsForm.Button2Click(Sender: TObject);
begin
    with adoquery1 do
    begin
      sql.Text:='select  distinct tt.tno,tt.tname,tt.tpost,tt.tcdepartment,tcr.trno,tcr.tcscode ,tcr.trstandard,tcr.traward,tcr.tremuneration,tcr.trtaxrate,tcr.trtax,'+
                'tcr.trwages,tcr.trsignature,tt.tbool,tcr.trlessonscount from  TCourseReward2 tcr right outer join tteacher tt on tt.tno=tcr.tcscode';
      open;
    end;
end;

procedure TTCourseStatisticsForm.Button3Click(Sender: TObject);
begin
    with adoquery1 do
    begin
      sql.Text:='select  distinct tt.tno,tt.tname,tt.tpost,tt.tcdepartment,tcr.trno,tcr.tcscode ,tcr.trstandard,tcr.traward,tcr.tremuneration,tcr.trtaxrate,tcr.trtax,'+
                'tcr.trwages,tcr.trsignature,tt.tbool,tcr.trlessonscount from  TCourseReward2 tcr inner join tteacher tt on tt.tno=tcr.tcscode';
      open;
    end;
end;

function TTCourseStatisticsForm.GetUno: string;
var
  UnoQry: TADOQuery;
  id: string;
begin
  UnoQry := TADOQuery.Create(self);
  with Unoqry do
  begin
    Connection := dm.ADOConnection1;
    sql.Text := 'select max(trno) as id from TCourseReward2';

    Open;
    id := fieldbyName('id').AsString;
    if id='' then
        id:='1'
      else
        id:=inttostr(strtoint(id)+1);
    end;
  Result := id;
  UnoQry.Free;
end;

end.


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -