flowcourseunit.~pas
来自「批发商品管理系统 目前我正在潜心研究」· ~PAS 代码 · 共 296 行
~PAS
296 行
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 + =
减小字号Ctrl + -
显示快捷键?