📄 flowcourseunit.~pas
字号:
unit FlowCourseUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dxExEdtr, DB, ADODB, dxCntner, dxTL, dxDBCtrl, dxDBGrid,
ExtCtrls, ImgList, RzButton, RzPanel, cxPC, cxControls, Grids, DBGrids,
dxDBTLCl, dxGrClms, cxLabel, cxContainer, cxEdit, cxTextEdit, ActnList,
cxDBEdit, cxGraphics, cxSpinEdit, cxMaskEdit, cxDropDownEdit;
type
TFlowCourseForm = class(TForm)
MainPC: TcxPageControl;
MainTS: TcxTabSheet;
Toolbar: TRzToolbar;
BtnAdd: TRzToolButton;
BtnEdit: TRzToolButton;
BtnSave: TRzToolButton;
BtnDelete: TRzToolButton;
BtnRefresh: TRzToolButton;
ImageList: TImageList;
FlowCourse_PC: TcxPageControl;
Flow_TS: TcxTabSheet;
Flow_Panel: TPanel;
dxDBGrid1: TdxDBGrid;
dxDBGrid2: TdxDBGrid;
Course_TS: TcxTabSheet;
FlowData: TADOQuery;
SQL: TADOQuery;
DS_Flow: TDataSource;
DS_Course: TDataSource;
SQLiFlowID: TAutoIncField;
SQLcFlowName: TWideStringField;
SQLcFlowMemo: TWideStringField;
CourseData: TADOTable;
dxDBGrid2ID: TdxDBGridMaskColumn;
dxDBGrid2AutoID: TdxDBGridMaskColumn;
dxDBGrid2CourseID: TdxDBGridMaskColumn;
dxDBGrid2cCourseName: TdxDBGridColumn;
dxDBGrid2cPerson: TdxDBGridColumn;
dxDBGrid2cDeptNo: TdxDBGridColumn;
dxDBGrid2cCourseMemo: TdxDBGridColumn;
dxDBGrid2cCouDefine01: TdxDBGridColumn;
dxDBGrid2cCouDefine02: TdxDBGridColumn;
dxDBGrid2cCouDefine03: TdxDBGridColumn;
dxDBGrid2cCouDefine04: TdxDBGridColumn;
dxDBGrid2cCouDefine05: TdxDBGridColumn;
dxDBGrid2cCouDefine06: TdxDBGridColumn;
dxDBGrid2cCouDefine07: TdxDBGridColumn;
dxDBGrid2cCouDefine08: TdxDBGridColumn;
dxDBGrid2cCouDefine09: TdxDBGridColumn;
dxDBGrid2cCouDefine10: TdxDBGridColumn;
dxDBGrid2iCouDefine01: TdxDBGridMaskColumn;
dxDBGrid2iCouDefine02: TdxDBGridMaskColumn;
dxDBGrid2iCouDefine03: TdxDBGridCurrencyColumn;
dxDBGrid2dCouDefine04: TdxDBGridDateColumn;
dxDBGrid2dCouDefine05: TdxDBGridDateColumn;
dxDBGrid1iFlowID: TdxDBGridMaskColumn;
dxDBGrid1cFlowName: TdxDBGridColumn;
dxDBGrid1cFlowMemo: TdxDBGridColumn;
FlowName_TE: TcxTextEdit;
cxLabel1: TcxLabel;
cxLabel2: TcxLabel;
FlowMemo_TE: TcxTextEdit;
FlowID_TE: TcxDBTextEdit;
TranList: TActionList;
Add: TAction;
Change: TAction;
Save: TAction;
Refresh: TAction;
Delete: TAction;
Next: TAction;
cxLabel3: TcxLabel;
CourseName_TE: TcxTextEdit;
cxLabel4: TcxLabel;
CourseMemo_TE: TcxTextEdit;
cxLabel5: TcxLabel;
Person_CBB: TcxComboBox;
cxLabel6: TcxLabel;
Dept_CBB: TcxComboBox;
cxLabel7: TcxLabel;
CourseNo_SE: TcxSpinEdit;
procedure AddExecute(Sender: TObject);
procedure ChangeExecute(Sender: TObject);
procedure RefreshExecute(Sender: TObject);
procedure SaveExecute(Sender: TObject);
procedure dxDBGrid1Click(Sender: TObject);
procedure dxDBGrid2Click(Sender: TObject);
procedure DeleteExecute(Sender: TObject);
procedure dxDBGrid1DblClick(Sender: TObject);
procedure dxDBGrid2DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FlowCourseForm: TFlowCourseForm;
implementation
uses
DataModule;
{$R *.dfm}
procedure TFlowCourseForm.AddExecute(Sender: TObject);
begin
BtnAdd.Enabled := False ;
BtnEdit.Enabled := False ;
BtnDelete.Enabled := False ;
BtnSave.Enabled := True ;
BtnRefresh.Enabled := True ;
IF FlowCourse_PC.ActivePage = Flow_TS Then
Begin
FlowName_TE.Enabled := True ;
FlowMemo_TE.Enabled := True ;
End Else IF FlowCourse_PC.ActivePage = Course_TS Then
Begin
CourseNo_SE.Enabled := True ;
CourseName_TE.Enabled := True ;
Dept_CBB.Enabled := True ;
Person_CBB.Enabled := True ;
CourseMemo_TE.Enabled := True ;
End;
end;
procedure TFlowCourseForm.ChangeExecute(Sender: TObject);
begin
BtnAdd.Enabled := False ;
BtnEdit.Enabled := False ;
BtnDelete.Enabled := False ;
BtnSave.Enabled := True ;
BtnRefresh.Enabled := True ;
IF FlowCourse_PC.ActivePage = Flow_TS Then
Begin
FlowName_TE.Enabled := True ;
FlowMemo_TE.Enabled := True ;
FlowName_TE.Text := FlowData.Fields[1].AsString ;
FlowMemo_TE.Text := FlowData.Fields[2].AsString ;
End Else IF FlowCourse_PC.ActivePage = Course_TS Then
Begin
CourseNo_SE.Enabled := True ;
CourseName_TE.Enabled := True ;
Dept_CBB.Enabled := True ;
Person_CBB.Enabled := True ;
CourseMemo_TE.Enabled := True ;
CourseName_TE.Text := CourseData.Fields[1].AsString ;
Dept_CBB.Text := CourseData.Fields[2].AsString ;
Person_CBB.Text := CourseData.Fields[3].AsString ;
CourseNo_SE.Text := CourseData.Fields[4].AsString ;
CourseMemo_TE.Text := CourseData.Fields[5].AsString ;
End;
end;
procedure TFlowCourseForm.RefreshExecute(Sender: TObject);
begin
FlowName_TE.Enabled := False ;
FlowMemo_TE.Enabled := False ;
CourseNo_SE.Enabled := False ;
CourseName_TE.Enabled := False ;
Dept_CBB.Enabled := False ;
Person_CBB.Enabled := False ;
CourseMemo_TE.Enabled := False ;
BtnAdd.Enabled := True ;
BtnEdit.Enabled := True ;
BtnDelete.Enabled := True ;
BtnSave.Enabled := False ;
BtnRefresh.Enabled := False ;
end;
procedure TFlowCourseForm.SaveExecute(Sender: TObject);
begin
IF FlowCourse_PC.ActivePage = Flow_TS Then
Begin
FlowName_TE.Enabled := False ;
FlowMemo_TE.Enabled := False ;
IF (FlowName_TE.Text = '') OR (FlowMemo_TE.Text = '') Then
Begin
Showmessage('资料填写不完整,请重新输入');
Exit ;
End;
SQL.Close;
SQL.SQL.Clear;
SQL.SQL.Add('INSERT INTO tFlowData ');
SQL.SQL.Add('(cFlowName, cFlowMemo)');
SQL.SQL.Add('VALUES ('''+ FlowName_TE.Text +''','''+ FlowMemo_TE.Text +''')');
SQL.ExecSQL;
FlowData.Close;
FlowData.Open;
End Else IF FlowCourse_PC.ActivePage = Course_TS Then
Begin
CourseNo_SE.Enabled := False ;
CourseName_TE.Enabled := False ;
Dept_CBB.Enabled := False ;
Person_CBB.Enabled := False ;
CourseMemo_TE.Enabled := False ;
IF (CourseName_TE.Text = '') OR (Dept_CBB.Text = '') OR (Person_CBB.Text = '') OR (CourseMemo_TE.Text = '') Then
Begin
Showmessage('资料填写不完整,请重新输入');
Exit ;
End;
SQL.Close;
SQL.SQL.Clear;
SQL.SQL.Add('INSERT INTO tFlowCourseItem ');
SQL.SQL.Add('(ID, CourseID, cCourseName, cPerson, cDeptNo, cCourseMemo)');
SQL.SQL.Add('VALUES ('''+ FlowData.Fields[0].AsString +''','+ IntTOStr(CourseNo_SE.Value) +','''+ CourseName_TE.Text +''','''+ Person_CBB.Text +''','''+ Dept_CBB.Text +''','''+ CourseMemo_TE.Text +''')');
SQL.ExecSQL;
CourseData.Close;
CourseData.Open;
End;
BtnAdd.Enabled := True ;
BtnEdit.Enabled := True ;
BtnDelete.Enabled := True ;
BtnSave.Enabled := False ;
BtnRefresh.Enabled := False ;
end;
procedure TFlowCourseForm.dxDBGrid1Click(Sender: TObject);
begin
FlowCourse_PC.ActivePage := Flow_TS;
end;
procedure TFlowCourseForm.dxDBGrid2Click(Sender: TObject);
begin
FlowCourse_PC.ActivePage := Course_TS;
end;
procedure TFlowCourseForm.DeleteExecute(Sender: TObject);
begin
IF FlowCourse_PC.ActivePage = Flow_TS Then
Begin
IF MessageDlg('提示: '+#13+'是否要删除以下流程的信息:'+#13+#13+ FlowData.Fields[1].AsString +#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then
Begin
SQL.Close;
SQL.SQL.Clear;
SQL.SQL.Add('DELETE FROM tFlowData ');
SQL.SQL.Add('WHERE iFlowID = '+ FlowData.Fields[0].AsString +'');
SQL.ExecSQL;
End Else Exit ;
FlowData.Close;
FlowData.Open;
End Else IF FlowCourse_PC.ActivePage = Course_TS Then
Begin
IF MessageDlg('提示: '+#13+'是否要删除以下子进程的信息:'+#13+#13+ CourseData.Fields[3].AsString +#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then
Begin
SQL.Close;
SQL.SQL.Clear;
SQL.SQL.Add('DELETE FROM tFlowCourseItem ');
SQL.SQL.Add('WHERE ID = '+ FlowData.Fields[0].AsString +'');
SQL.SQL.Add('AND CourseID = '+ CourseData.Fields[2].AsString +'');
SQL.ExecSQL;
End Else Exit ;
CourseData.Close;
CourseData.Open;
End;
end;
procedure TFlowCourseForm.dxDBGrid1DblClick(Sender: TObject);
begin
IF MessageDlg('提示: '+#13+'是否要删除以下流程的信息:'+#13+#13+ FlowData.Fields[1].AsString +#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then
Begin
SQL.Close;
SQL.SQL.Clear;
SQL.SQL.Add('DELETE FROM tFlowData ');
SQL.SQL.Add('WHERE iFlowID = '+ FlowData.Fields[0].AsString +'');
SQL.ExecSQL;
End Else Exit ;
FlowData.Close;
FlowData.Open;
end;
procedure TFlowCourseForm.dxDBGrid2DblClick(Sender: TObject);
begin
IF MessageDlg('提示: '+#13+'是否要删除以下子进程的信息:'+#13+#13+ CourseData.Fields[3].AsString +#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then
Begin
SQL.Close;
SQL.SQL.Clear;
SQL.SQL.Add('DELETE FROM tFlowCourseItem ');
SQL.SQL.Add('WHERE AutoID = '+ CourseData.Fields[1].AsString +'');
SQL.ExecSQL;
End Else Exit ;
CourseData.Close;
CourseData.Open;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -