📄 cj_datamodule.pas
字号:
unit CJ_DataModule;
interface
uses
SysUtils, Classes, DB, ADODB, Dialogs;
type
TFrmCJ_DataModule = class(TDataModule)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
DataSource1: TDataSource;
DataSource2: TDataSource;
ADOQuery3: TADOQuery;
ADOTable1: TADOTable;
ADOTable2: TADOTable;
ADOConnection2: TADOConnection;
ADOQuery4: TADOQuery;
procedure ADOQuery3BeforePost(DataSet: TDataSet);
procedure ADOQuery1EditError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
procedure ADOQuery1PostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
procedure ADOQuery1DeleteError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
private
{ Private declarations }
procedure CheckRule;
procedure SzDm(Bzxx: integer);
public
{ Public declarations }
end;
var
FrmCJ_DataModule: TFrmCJ_DataModule;
implementation
uses PublicUnit;
{$R *.dfm}
procedure TFrmCJ_DataModule.ADOQuery3BeforePost(DataSet: TDataSet);
begin
with ADOQuery3 do
case PublicUnit.BzLx of
1: FieldByName('大小写').AsString := 'null';
2: FieldByName('权限选项').AsString := '01110100';
3:
begin
FieldByName('选项1').AsString := '11010000';
SzDm(3);
if FieldByName('起始日期').AsDateTime >
FieldByName('终止日期').AsDateTime then
begin
ShowMessage('起始日期不能大于终止日期!');
Abort;
end;
end;
4:
begin
FieldByName('选项1').AsString := '11000000';
FieldByName('选项2').AsString := '10000000';
FieldByName('选项3').AsString := '0';
end;
5:
begin
FieldByName('选项1').AsString := 'null';
FieldByName('柜组号').AsInteger := 0;
FieldByName('打印选项').AsString := '11000000';
FieldByName('税率').AsString := 'null';
FieldByName('厨房打印机').AsString := 'null';
SzDm(5);
end;
6:
begin
FieldByName('价格2').AsFloat := 0;
FieldByName('价格3').AsFloat := 0;
FieldByName('价格4').AsFloat := 0;
FieldByName('成本价').AsFloat := 0;
end;
end;
CheckRule;
end;
procedure TFrmCJ_DataModule.CheckRule;
begin
with ADOQuery3 do
case PublicUnit.BzLx of
1: FieldByName('服务员编码').EditMask := '2000';
2: FieldByName('收款员号').EditMask := '3000';
3: FieldByName('折扣号').EditMask := '500';
4: FieldByName('交易号').EditMask := '900';
5: FieldByName('商品类别号').EditMask := '5000';
6: FieldByName('商品号').EditMask := '10000';
end;
end;
procedure TFrmCJ_DataModule.SzDm(Bzxx: integer);
var
ss: string;
begin
case Bzxx of
3: ss := Trim('000000');
5: ss := Trim('010000');
end;
with ADOQuery3 do
if FieldByName('选项2').AsString = '打折' then
FieldByName('选项2').AsString := ss + '10'
else if FieldByName('选项2').AsString = '不打折' then
FieldByName('选项2').AsString := ss + '01'
end;
procedure TFrmCJ_DataModule.ADOQuery1EditError(DataSet: TDataSet;
E: EDatabaseError; var Action: TDataAction);
begin
ShowMessage('编辑记录错误!');
Action := daAbort;
end;
procedure TFrmCJ_DataModule.ADOQuery1PostError(DataSet: TDataSet;
E: EDatabaseError; var Action: TDataAction);
begin
ShowMessage(E.Message);
ShowMessage('插入记录错误!');
Action := daAbort;
end;
procedure TFrmCJ_DataModule.ADOQuery1DeleteError(DataSet: TDataSet;
E: EDatabaseError; var Action: TDataAction);
begin
ShowMessage('删除记录错误!');
Action := daAbort;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -