📄 s_courseunit.~pas
字号:
unit S_CourseUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, ExtCtrls, Db, StdCtrls;
type
TS_CourseForm = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
DBGridCourse: TDBGrid;
DataSourceMaster: TDataSource;
DataSourceDetail: TDataSource;
ButtonZengJia: TButton;
ButtonXiuGai: TButton;
DBGridBase: TDBGrid;
procedure FormCreate(Sender: TObject);
procedure ButtonZengJiaClick(Sender: TObject);
procedure ButtonXiuGaiClick(Sender: TObject);
private
{ Private declarations }
procedure refresh;
public
{ Public declarations }
end;
var
S_CourseForm: TS_CourseForm;
implementation
uses S_CourseUnit1,S_CourseUnit2,CDMUnit;
{$R *.DFM}
procedure TS_CourseForm.FormCreate(Sender: TObject);
begin
with CDM.ClientDataSetBase do
begin
Close;
CommandText:='Select * from BaseTB';
Open;
end;
with CDM.ClientDataSetCourse do
begin
Close;
IndexFieldNames:='student_id';
MasterSource:=DataSourceMaster;
MasterFields:='student_id';
CommandText:='Select * from CourseTB';
Open;
end;
end;
procedure TS_CourseForm.ButtonZengJiaClick(Sender: TObject);
var
fo:TAddCourseForm;
fstudent_id :string[8];//*学号*/
fname :string[12]; //姓名
begin
{增加学生课程}
{取学号}
with DBGridBase.DataSource.DataSet do
begin
fstudent_id:=FieldByName('student_id').AsString;
fname:=FieldByName('name').AsString;
end;
Try
fo:=TAddCourseForm.Create(Self);
//fo.fstudent_id :=fstudent_id;//*学号*/
//fo.fname :=fname; //姓名
fo.LStudent_id.Caption:=fstudent_id;//*学号*/
fo.Lname.Caption:=fname;//姓名
fo.Ecourse.Text:='';//*学科*/
fo.Ccourse_t.ItemIndex:=0;//*类别*/
fo.Eperiod.Text:=''; //*学时*/
fo.Ecredit.Text:=''; //*学分*/
fo.Ebegin_date.Text:=''; //*起始日期*/
fo.Eend_date.Text:=''; //*结束日期*/
if fo.ShowModal=mrOK then
begin
CDM.DCOMConnectionStudent.AppServer.S_C_Add(fo.fstudent_id,fo.fcourse,fo.fcourse_t,fo.fperiod,fo.fcredit,fo.fbegin_date,fo.fend_date);
refresh;
end;
Finally
fo.Free;
End;
end;
procedure TS_CourseForm.ButtonXiuGaiClick(Sender: TObject);
var
fo:TMdCourseForm;
fstudent_id:string[8];
fname:string[12]; //姓名
fcourse :string[10];//*学科*/
fcourse_t :string[1];//*类别*/
fperiod :integer; //*学时*/
fcredit :integer; //*学分*/
fbegin_date :string[8]; //*起始日期*/
fend_date :string[8]; //*结束日期*/
begin
{修改学生课程}
with DBGridBase.DataSource.DataSet do
begin
fstudent_id:=FieldByName('student_id').AsString;
fname:=FieldByName('name').AsString;
end;
{取课程数据}
with DBGridCourse.DataSource.DataSet do
begin
if recordcount >0 then
begin
fcourse :=FieldByName('course').AsString;
fcourse_t :=FieldByName('course_t').AsString;
fperiod :=FieldByName('period').AsInteger;
fcredit :=FieldByName('credit').AsInteger;
fbegin_date :=FieldByName('begin_date').AsString;
fend_date :=FieldByName('end_date').AsString;
end else
exit;
end;
Try
fo:=TMdCourseForm.Create(Self);
fo.LStudent_id.Caption:=fstudent_id;//*学号*/
fo.Lname.Caption:=fname;//姓名
fo.fcourse :=fcourse;
fo.fcourse_t :=fcourse_t;
fo.fperiod :=fperiod;
fo.fcredit :=fcredit;
fo.fbegin_date :=fbegin_date;
fo.fend_date :=fend_date;
if fo.ShowModal = mrOK then
begin
CDM.DCOMConnectionStudent.AppServer.S_C_Md(fo.fstudent_id,fo.fcourse,fo.fcourse_t,fo.fperiod,fo.fcredit,fo.fbegin_date,fo.fend_date);
refresh;
end;
Finally
fo.Free;
End;
end;
procedure TS_CourseForm.refresh;
begin
with CDM.ClientDataSetCourse do
begin
Close;
IndexFieldNames:='student_id';
MasterSource:=DataSourceMaster;
MasterFields:='student_id';
CommandText:='Select * from CourseTB';
Open;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -