📄 importaccountdata.pas
字号:
unit ImportAccountData;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Base, DB, Grids, DBGrids, ADODB, StdCtrls, Buttons, ExtCtrls;
type
TfrmImportAccountData = class(TfrmBase)
dsAccountBook: TDataSource;
DGAccountBook: TDBGrid;
QAccountBook: TADOQuery;
Panel1: TPanel;
GroupBox1: TGroupBox;
cbProduct: TCheckBox;
cbStorage: TCheckBox;
cbStorageTotal: TCheckBox;
GroupBox2: TGroupBox;
cbArea: TCheckBox;
cbProvider: TCheckBox;
cbCustomer: TCheckBox;
GroupBox3: TGroupBox;
cbDep: TCheckBox;
cbEmployee: TCheckBox;
cbTool: TCheckBox;
cbAccountP: TCheckBox;
cbAccountC: TCheckBox;
GroupBox4: TGroupBox;
cbGroup: TCheckBox;
cbUser: TCheckBox;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
GroupBox5: TGroupBox;
cbMps: TCheckBox;
spImportData: TADOStoredProc;
QAccountBookaId: TAutoIncField;
QAccountBookaName: TWideStringField;
QAccountBookaDataBaseName: TWideStringField;
ADOStoredProc1: TADOStoredProc;
procedure BitBtn2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure cbProductClick(Sender: TObject);
procedure cbStorageClick(Sender: TObject);
procedure cbStorageTotalClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure cbAreaClick(Sender: TObject);
procedure cbProviderClick(Sender: TObject);
procedure cbCustomerClick(Sender: TObject);
procedure cbAccountPClick(Sender: TObject);
procedure cbAccountCClick(Sender: TObject);
procedure cbDepClick(Sender: TObject);
procedure cbEmployeeClick(Sender: TObject);
procedure cbGroupClick(Sender: TObject);
procedure cbUserClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmImportAccountData: TfrmImportAccountData;
implementation
uses DataModule, Global;
{$R *.dfm}
procedure TfrmImportAccountData.BitBtn2Click(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmImportAccountData.FormCreate(Sender: TObject);
begin
inherited;
with QAccountBook do
begin
parameters.ParamValues['AccountID'] := G_iAccountID;
if Active then
Requery
else
Open;
end;
end;
procedure TfrmImportAccountData.cbProductClick(Sender: TObject);
begin
inherited;
if not (Sender as TCheckBox).Checked then
cbStorageTotal.Checked := (Sender as TCheckBox).Checked;
end;
procedure TfrmImportAccountData.cbStorageClick(Sender: TObject);
begin
inherited;
if not (Sender as TCheckBox).Checked then
cbStorageTotal.Checked := (Sender as TCheckBox).Checked;
end;
procedure TfrmImportAccountData.cbStorageTotalClick(Sender: TObject);
begin
inherited;
if (Sender as TCheckBox).Checked then
begin
cbProduct.Checked := (Sender as TCheckBox).Checked;
cbStorage.Checked := (Sender as TCheckBox).Checked;
end;
end;
procedure TfrmImportAccountData.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
frmImportAccountData := nil;
end;
procedure TfrmImportAccountData.cbAreaClick(Sender: TObject);
begin
inherited;
if not (Sender as TCheckBox).Checked then
begin
cbProvider.Checked := (Sender as TCheckBox).Checked;
cbCustomer.Checked := (Sender as TCheckBox).Checked;
cbAccountP.Checked := (Sender as TCheckBox).Checked;
cbAccountC.Checked := (Sender as TCheckBox).Checked;
end;
end;
procedure TfrmImportAccountData.cbProviderClick(Sender: TObject);
begin
inherited;
if (Sender as TCheckBox).Checked then
cbArea.Checked := (Sender as TCheckBox).Checked
else
cbAccountP.Checked := (Sender as TCheckBox).Checked
end;
procedure TfrmImportAccountData.cbCustomerClick(Sender: TObject);
begin
inherited;
if (Sender as TCheckBox).Checked then
cbArea.Checked := (Sender as TCheckBox).Checked
else
cbAccountC.Checked := (Sender as TCheckBox).Checked
end;
procedure TfrmImportAccountData.cbAccountPClick(Sender: TObject);
begin
inherited;
if (Sender as TCheckBox).Checked then
begin
cbArea.Checked := (Sender as TCheckBox).Checked;
cbProvider.Checked := (Sender as TCheckBox).Checked;
end;
end;
procedure TfrmImportAccountData.cbAccountCClick(Sender: TObject);
begin
inherited;
if (Sender as TCheckBox).Checked then
begin
cbArea.Checked := (Sender as TCheckBox).Checked;
cbCustomer.Checked := (Sender as TCheckBox).Checked;
end;
end;
procedure TfrmImportAccountData.cbDepClick(Sender: TObject);
begin
inherited;
if not (Sender as TCheckBox).Checked then
cbEmployee.Checked := (Sender as TCheckBox).Checked;
end;
procedure TfrmImportAccountData.cbEmployeeClick(Sender: TObject);
begin
inherited;
if (Sender as TCheckBox).Checked then
cbDep.Checked := (Sender as TCheckBox).Checked;
end;
procedure TfrmImportAccountData.cbGroupClick(Sender: TObject);
begin
inherited;
if not (Sender as TCheckBox).Checked then
cbUser.Checked := (Sender as TCheckBox).Checked;
end;
procedure TfrmImportAccountData.cbUserClick(Sender: TObject);
begin
inherited;
if (Sender as TCheckBox).Checked then
cbGroup.Checked := (Sender as TCheckBox).Checked;
end;
procedure TfrmImportAccountData.BitBtn1Click(Sender: TObject);
var
sDDBName, sSDBName: string;
begin
inherited;
try
screen.Cursor := crHourGlass;
if dmClient.dsetAccount.Locate('aID', G_iAccountID, []) then
with spImportData do
begin
sSDBName := QAccountBook.FieldbyName('aDatabaseName').asString;
sDDBName := dmClient.dsetAccount.FieldbyName('aDatabaseName').asString;
parameters.ParamValues['@SDBName'] := sSDBName;
parameters.ParamValues['@DDBName'] := sDDBName;
parameters.ParamValues['@bProduct'] := cbProduct.Checked;
parameters.ParamValues['@bStorage'] := cbStorage.Checked;
parameters.ParamValues['@bStorageTotal'] := cbStorageTotal.Checked;
parameters.ParamValues['@bArea'] := cbArea.Checked;
parameters.ParamValues['@bProvider'] := cbProvider.Checked;
parameters.ParamValues['@bAccountP'] := cbAccountP.Checked;
parameters.ParamValues['@bCustomer'] := cbCustomer.Checked;
parameters.ParamValues['@bAccountC'] := cbAccountC.Checked;
parameters.ParamValues['@bDep'] := cbDep.Checked;
parameters.ParamValues['@bEmployee'] := cbEmployee.Checked;
parameters.ParamValues['@bTool'] := cbTool.Checked;
parameters.ParamValues['@bGroup'] := cbGroup.Checked;
parameters.ParamValues['@bUser'] := cbUser.Checked;
parameters.ParamValues['@bMPS'] := cbMps.Checked;
Execproc;
end;
except
on E: Exception do
begin
screen.Cursor := crDefault;
raise Exception.create('引入数据失败!' + #10#13 + E.Message)
end;
end;
screen.Cursor := crDefault;
Messagedlg('引入数据成功!', mtInformation, [mbOk], 0);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -