ustaff.~pas

来自「it is a database programme for sql serv」· ~PAS 代码 · 共 232 行

~PAS
232
字号
unit uStaff;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
  cxDataStorage, cxEdit, DB, cxDBData, Menus, cxPropertiesStore, cxintl,
  DBTables, cxGridCustomPopupMenu, cxGridPopupMenu, RzRadChk, StdCtrls,
  Mask, RzEdit, RzButton, cxGridLevel, cxClasses, cxControls,
  cxGridCustomView, cxGridCustomTableView, cxGridTableView,
  cxGridBandedTableView, cxGridDBBandedTableView, cxGrid, ExtCtrls, ADODB,
  frxExportPDF, frxExportXML, frxExportXLS, frxExportHTML, frxExportText,
  frxExportRTF, frxExportImage, frxExportCSV, frxClass, frxExportMail,
  frxDBSet, frxDesgn;

type
  TfrmStaff = class(TForm)
    Panel1: TPanel;
    cxGrid1: TcxGrid;
    cxTV: TcxGridDBBandedTableView;
    cxGrid: TcxGridLevel;
    Panel2: TPanel;
    btnKapat: TRzBitBtn;
    btnEkle: TRzBitBtn;
    btnSil: TRzBitBtn;
    btnDuzenle: TRzBitBtn;
    Panel3: TPanel;
    Label1: TLabel;
    RzEdit1: TRzEdit;
    Rzc2: TRzCheckBox;
    Rzc3: TRzCheckBox;
    Rzc1: TRzCheckBox;
    btnAra: TRzBitBtn;
    cxStyleRepository1: TcxStyleRepository;
    TekSatirlar: TcxStyle;
    CiftSatirlar: TcxStyle;
    ArkaFon: TcxStyle;
    Secili: TcxStyle;
    InAktif: TcxStyle;
    Baslik: TcxStyle;
    DSStaff: TDataSource;
    cxIntl1: TcxIntl;
    QStaff: TADOQuery;
    cxTVDBBandedColumn1: TcxGridDBBandedColumn;
    cxTVDBBandedColumn2: TcxGridDBBandedColumn;
    cxTVDBBandedColumn3: TcxGridDBBandedColumn;
    cxTVDBBandedColumn4: TcxGridDBBandedColumn;
    cxTVDBBandedColumn5: TcxGridDBBandedColumn;
    btnYazdir: TRzBitBtn;
    frxDBDataset1: TfrxDBDataset;
    fr: TfrxReport;
    frxMailExport1: TfrxMailExport;
    frxGIFExport1: TfrxGIFExport;
    frxCSVExport1: TfrxCSVExport;
    frxBMPExport1: TfrxBMPExport;
    frxJPEGExport1: TfrxJPEGExport;
    frxTIFFExport1: TfrxTIFFExport;
    frxRTFExport1: TfrxRTFExport;
    frxSimpleTextExport1: TfrxSimpleTextExport;
    frxHTMLExport1: TfrxHTMLExport;
    frxXLSExport1: TfrxXLSExport;
    frxXMLExport1: TfrxXMLExport;
    frxPDFExport1: TfrxPDFExport;
    Query1: TADOQuery;
    PopupMenu1: TPopupMenu;
    MenuItem1: TMenuItem;
    frxDesigner1: TfrxDesigner;
    procedure btnKapatClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure btnEkleClick(Sender: TObject);
    procedure btnDuzenleClick(Sender: TObject);
    procedure cxTVDblClick(Sender: TObject);
    procedure btnAraClick(Sender: TObject);
    procedure btnSilClick(Sender: TObject);
    procedure btnYazdirClick(Sender: TObject);
    procedure MenuItem1Click(Sender: TObject);
  private
    { Private declarations }
  public
    prm:integer;
    { Public declarations }
  end;

var
  frmStaff: TfrmStaff;

implementation

{$R *.dfm}

uses uDm,uGiris,uStaffEdit;



procedure TfrmStaff.btnKapatClick(Sender: TObject);
begin
  Close;
end;

procedure TfrmStaff.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  frmGiris.Close;
end;

procedure TfrmStaff.FormShow(Sender: TObject);
begin

  prm:=0;
  with QStaff.SQL do begin
       Clear;
       Add('Select * From Staff');
  end;
  try
    QStaff.Open;
  except
      with QStaff.SQL do begin
        Clear;
        Add('Select PersonelCode,Name,Surname,DeptCode,StatusCode,DutyCode,Phone,OfficeNo,Address From Staff ');
      end;
      QStaff.Open;
      prm:=1;
      exit;
  end;
end;

procedure TfrmStaff.btnEkleClick(Sender: TObject);
begin
  if prm=1 then begin
     ShowMessage('You cannot insert staff record. Because you dont have permission');
     exit;
  end;

  frmStaffEdit:=TfrmStaffEdit.Create(nil);
  frmStaffEdit.PFormType:=1;
  frmStaffEdit.PCardCode:='';
  frmStaffEdit.ShowModal;
  frmStaffEdit.Free;
  frmStaffEdit:=nil;
  
end;


procedure TfrmStaff.btnDuzenleClick(Sender: TObject);
begin

  if QStaff.Active then
     if (QStaff.RecordCount <> 0) then begin
        frmStaffEdit:=TfrmStaffEdit.Create(nil);
        frmStaffEdit.PFormType:=2;
        frmStaffEdit.PCardCode:=QStaff.Fields[0].AsString;
        frmStaffEdit.ShowModal;
        frmStaffEdit.Free;
        frmStaffEdit:=nil;
     end;
end;


procedure TfrmStaff.cxTVDblClick(Sender: TObject);
begin
   btnDuzenleClick(Sender);
end;

procedure TfrmStaff.btnAraClick(Sender: TObject);
var PSQL,PWhere,Tmp:string;
begin

  PWhere:='Where ';
  Tmp := StringReplace(RzEdit1.Text,'*','%',[rfreplaceAll]);

  if Rzc1.Checked then
     PWhere:=PWhere + ' (PersonelCode Like ' + QuotedStr(Tmp) + ') and ';

  if Rzc2.Checked then
     PWhere:=PWhere + ' (Name Like ' + QuotedStr(Tmp) + ') and ';

  if Rzc3.Checked then
     PWhere:=PWhere + ' and (Surname Like ' + QuotedStr(Tmp) + ') and ';

  PWhere:=Copy(PWhere,1,Length(PWhere)-4);

  PSQL := 'Select PersonelCode,Name,Surname,OfficeNo,Phone From Staff ' + PWhere;
  with QStaff.SQL do begin
       Clear;
       Add(PSQL);
  end;
  try
    QStaff.Open;
  except
    ShowMessage('You cannot find staff record. Because you dont have permission');
  end;

end;

procedure TfrmStaff.btnSilClick(Sender: TObject);
begin

  if MessageDlg('Do you delete to staff record?',mtConfirmation,[mbYes,mbNo],0)=mrNo then exit;

  with Query1.SQL do begin
       Clear;
       Add('Delete From Staff ');
       Add('Where PersonelCode='+QuotedStr(QStaff.Fields[0].AsString));
  end;
  try
    Query1.ExecSQL;
  except
    ShowMessage('You cannot delete staff record. Because you dont have permission');
  end;

end;

procedure TfrmStaff.btnYazdirClick(Sender: TObject);
begin
  frxDBDataset1.Close;
  frxDBDataset1.Open;
  fr.LoadFromFile(ExtractFilePath(Application.ExeName)+'List.fr3');
  fr.ShowReport;
end;

procedure TfrmStaff.MenuItem1Click(Sender: TObject);
begin
  frxDBDataset1.Close;
  frxDBDataset1.Open;
  frxDBDataset1.DataSet.FieldDefs.Update;
  fr.LoadFromFile(ExtractFilePath(Application.ExeName)+'List.fr3');
  fr.DesignReport;
end;

end.

⌨️ 快捷键说明

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