⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cj_datamodule.pas

📁 亚惠快餐管理信息系统 包括亚惠快餐管理的各项功能
💻 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 + -