📄 frmratepmtotal.pas
字号:
unit frmRatePMTotal;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, dxCntner, dxEditor, dxExEdtr,
dxEdLib, ExtCtrls, dxTL, dxDBCtrl, dxDBGrid, DB, ADODB, dxDBTLCl,
dxGrClms, DateUtils, RM_dset, RM_dbset, RM_class;
type
TRatePMTotalForm = class(TForm)
Panel1: TPanel;
Label3: TLabel;
Label4: TLabel;
Label1: TLabel;
edtPersonID: TdxButtonEdit;
edtFirstDate: TDateTimePicker;
edtEndDate: TDateTimePicker;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
grdRatePMTotal: TdxDBGrid;
aspRatePMTotal: TADOStoredProc;
dsRatePMTotal: TDataSource;
grdRatePMTotalRateID: TdxDBGridMaskColumn;
grdRatePMTotalRateName: TdxDBGridMaskColumn;
grdRatePMTotalOrderDate: TdxDBGridDateColumn;
grdRatePMTotalModelID: TdxDBGridMaskColumn;
grdRatePMTotalProdAnums: TdxDBGridMaskColumn;
grdRatePMTotalProdBNums: TdxDBGridMaskColumn;
grdRatePMTotalProdCNums: TdxDBGridMaskColumn;
SaveDialog: TSaveDialog;
rmpRatePMTotal: TRMReport;
RMDBDataSet1: TRMDBDataSet;
aspRatePMTotalRateID: TStringField;
aspRatePMTotalRateName: TStringField;
aspRatePMTotalOrderDate: TDateTimeField;
aspRatePMTotalModelID: TStringField;
aspRatePMTotalProdAnums: TIntegerField;
aspRatePMTotalProdBNums: TIntegerField;
aspRatePMTotalProdCNums: TIntegerField;
StatusBar1: TStatusBar;
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure rmpRatePMTotalGetValue(const ParName: String;
var ParValue: Variant);
procedure edtPersonIDButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
RatePMTotalForm: TRatePMTotalForm;
implementation
uses
DataCenter, ChoicePerson, frmMsg;
{$R *.dfm}
procedure TRatePMTotalForm.FormShow(Sender: TObject);
begin
aspRatePMTotal.Close;
edtFirstDate.Date:=Date()-DayOf(Date)+1;
edtEndDate.Date:=Date;
end;
procedure TRatePMTotalForm.BitBtn1Click(Sender: TObject);
begin
aspRatePMTotal.Close;
aspRatePMTotal.Parameters[1].Value:=edtFirstDate.Date;
aspRatePMTotal.Parameters[2].Value:=edtEndDate.Date;
aspRatePMTotal.Parameters[3].Value:=edtPersonID.Text;
MsgForm:=TmsgForm.create(self);
MsgForm.Show;
screen.Cursor:=crSQLWAIT;
MsgForm.update;
aspRatePMTotal.Open;
MsgForm.Hide;
screen.Cursor:=crDefault;
MsgForm.Close;
MsgForm.Free;
StatusBar1.Panels[0].Text:='总有记录数:'+inttostr(aspRatePMTotal.recordcount)+'条';
end;
procedure TRatePMTotalForm.BitBtn4Click(Sender: TObject);
begin
if SaveDialog.Execute then
begin
if FileExists(SaveDialog.FileName) then
if MessageDlg(Format('文件"'+SaveDialog.FileName+'"已经存在,是否替换原有文件?', [SaveDialog.FileName]),mtConfirmation, mbYesNoCancel, 0) <> idYes then Exit;
grdRatePMTotal.SaveToXLS(SaveDialog.FileName,True);
end;
end;
procedure TRatePMTotalForm.BitBtn3Click(Sender: TObject);
begin
aspRatePMTotal.DisableControls;
rmpRatePMTotal.LoadFromFile('RatePMTotal');
rmpRatePMTotal.ShowReport;
aspRatePMTotal.EnableControls;
end;
procedure TRatePMTotalForm.rmpRatePMTotalGetValue(const ParName: String;
var ParValue: Variant);
begin
if ParName='FirstDate' then ParValue:=DateToStr(edtFirstDate.Date);
if ParName='EndDate' then ParValue:=DateToStr(edtEndDate.Date);
end;
procedure TRatePMTotalForm.edtPersonIDButtonClick(Sender: TObject;
AbsoluteIndex: Integer);
begin
if Application.FindComponent('frmChoicePerson')=nil then
Application.CreateForm(TfrmChoicePerson,frmChoicePerson);
dmData.aquPersonel.SQL.Text:='select * from Personel';
dmData.aquPersonel.Open;
case frmChoicePerson.ShowModal of {返回的值}
mrCancel:
begin
edtFirstDate.SetFocus;
// ValueIsChange:=true;
end;
mrOk:
begin
edtPersonID.Text:=dmData.aquPersonelPersonID.Value;
edtFirstDate.SetFocus;
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -