unit MainUnit; interface uses { Delphi } Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, { DevExpress } cxGraphics, dxUIAClasses, cxControls, dxCore, dxLayoutLookAndFeels, dxSkinsForm, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinWXI, dxLayoutControlAdapters, dxLayoutContainer, Vcl.Menus, cxStyles, cxCustomData, cxFilter, cxData, cxDataStorage, cxEdit, cxNavigator, dxDateRanges, dxScrollbarAnnotations, Data.DB, cxDBData, cxGridLevel, cxClasses, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, Vcl.StdCtrls, cxButtons, dxLayoutControl, System.Actions, Vcl.ActnList, dxLayoutcxEditAdapters, cxContainer, cxCheckBox, cxDBEdit, cxMaskEdit, cxSpinEdit, cxTextEdit, cxCurrencyEdit; type TfrmMain = class(TForm) lgRoot: TdxLayoutGroup; lcMain: TdxLayoutControl; lgToolbar: TdxLayoutGroup; lgInput: TdxLayoutGroup; lgGrid: TdxLayoutGroup; btnAdd: TcxButton; liAdd: TdxLayoutItem; btnSave: TcxButton; liSave: TdxLayoutItem; btnDelete: TcxButton; liDelete: TdxLayoutItem; btnCancel: TcxButton; liCancel: TdxLayoutItem; dbtvEmployee: TcxGridDBTableView; grdEmployeeLevel1: TcxGridLevel; grdEmployee: TcxGrid; liGrid: TdxLayoutItem; btnEdit: TcxButton; liEdit: TdxLayoutItem; alToolbar: TActionList; acAdd: TAction; acEdit: TAction; acSave: TAction; acDelete: TAction; acCancel: TAction; dbtvEmployeeRecId: TcxGridDBColumn; dbtvEmployeename: TcxGridDBColumn; dbtvEmployeeage: TcxGridDBColumn; dbtvEmployeesalary: TcxGridDBColumn; dbtvEmployeesex: TcxGridDBColumn; dbtvEmployeeposition: TcxGridDBColumn; dbtvEmployeeaddress: TcxGridDBColumn; dbteName: TcxDBTextEdit; liName: TdxLayoutItem; dbseAge: TcxDBSpinEdit; liAge: TdxLayoutItem; dbseSalary: TcxDBSpinEdit; liSalary: TdxLayoutItem; cxDBCheckBox1: TcxDBCheckBox; liSex: TdxLayoutItem; dbtePosition: TcxDBTextEdit; liPosition: TdxLayoutItem; dbteAdress: TcxDBTextEdit; liAddress: TdxLayoutItem; dxLayoutGroup1: TdxLayoutGroup; dxLayoutGroup2: TdxLayoutGroup; dxLayoutGroup3: TdxLayoutGroup; scMain: TdxSkinController; dxLayoutLookAndFeelList: TdxLayoutLookAndFeelList; dxLayoutSkinLookAndFeel1: TdxLayoutSkinLookAndFeel; grdEmployeeDBTableView1: TcxGridDBTableView; procedure acAddExecute(Sender: TObject); procedure acEditExecute(Sender: TObject); procedure acSaveExecute(Sender: TObject); procedure acDeleteExecute(Sender: TObject); procedure acCancelExecute(Sender: TObject); private { Private declarations } public { Public declarations } end; var frmMain: TfrmMain; implementation {$R *.dfm} uses EmployeeUnit; procedure TfrmMain.acAddExecute(Sender: TObject); begin dmData.mdEmployee.Append; dbteName.SetFocus; end; procedure TfrmMain.acCancelExecute(Sender: TObject); begin dmData.mdEmployee.Cancel; end; procedure TfrmMain.acDeleteExecute(Sender: TObject); begin dmData.mdEmployee.Delete; end; procedure TfrmMain.acEditExecute(Sender: TObject); begin dmData.mdEmployee.Edit; end; procedure TfrmMain.acSaveExecute(Sender: TObject); begin dmData.mdEmployee.Post; end; end.