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

📄 c_carddata.pas

📁 立方酒店管理系统
💻 PAS
字号:
unit C_CardData;

interface

uses
  SysUtils, Classes, DB, DBTables, IcCardDefine, StdCtrls;

type
  TCardData = class(TDataModule)
    tblSysData: TTable;
    qrySysData: TQuery;
    DatabaseUser: TDatabase;
    procedure DataModuleCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    function GetBh(const AFieldName,APrevStr: string): string;
    procedure ListDm(AComboBox: TComboBox;const ATableName,AFieldMc: string);
    function FindBh(const ATableName,AFieldBh,AFieldMc,AMc: string): string;
    function FindMc(const ATableName,AFieldBh,AFieldMc,ABh: string): string;
    function CheckYgqx(const AYgbh,ACzxm: string): Boolean;
    procedure InsertYjk(const AShlx,ABz: string;ARmb,AXyk,AZp: Currency);
    procedure ExecSql(const ASqlStr: string);
  end;

var
  CardData: TCardData;

implementation

{$R *.dfm}

procedure TCardData.ExecSql(const ASqlStr: string);
begin
  with qrySysData do
  begin
    Close;
    SQL.Clear;
    SQL.Add(ASqlStr);
    Prepare;
    ExecSQL;
  end;
end;

procedure TCardData.InsertYjk(const AShlx,ABz: string;ARmb,AXyk,AZp: Currency);
var
  s : string;
begin
  s := 'insert into YJK (D_RMB,D_XYK,D_ZP,D_CZYXM,D_YJRQ,D_YJSJ,D_YJLX,D_BZ) values '+
       '('+CurrToStr(ARmb)+','+CurrToStr(AXyk)+','+CurrToStr(AZp)+','+
       '"'+CZY.CzyXm+'","'+FormatDateTime('yyyy-mm-dd',Date)+'","'+FormatDateTime('yyyy-mm-dd hh:nn:ss',Now)+
       '","'+AShlx+'","'+ABz+'")';
  ExecSql(s);
end;

function TCardData.CheckYgqx(const AYgbh,ACzxm: string): Boolean;
var
  s: string;
begin
  Result := False;
  if AYgbh='00000' then
  begin
    Result := True;
    Exit;
  end;
  with qrySysData do
  begin
    if Active then Active := False;
    s := 'select * from YGQX where D_YGBH="'+AYgbh+'"';
    SQL.Clear;
    SQL.Add(s);
    Open;
    if Locate('D_CZXM',ACzxm,[]) then
      Result := FieldByName('D_QX').AsBoolean;
    if not Result then
      ShowWarning('对不起,你没有权限操作该模块!');
    Close;
  end;
end;

function TCardData.FindBh(const ATableName,AFieldBh,AFieldMc,AMc: string): string;
begin
  Result := '';
  with tblSysData do
  begin
    if Active then Active := False;
    TableName := ATableName;
    Open;
    try
      if Locate(AFieldMc,AMc,[]) then
        Result := FieldByName(AFieldBh).AsString;
    finally
      Close;
    end;
  end;
end;

function TCardData.FindMc(const ATableName,AFieldBh,AFieldMc,ABh: string): string;
begin
  Result := '';
  with tblSysData do
  begin
    if Active then Active := False;
    TableName := ATableName;
    Open;
    try
      if Locate(AFieldBh,ABh,[]) then
        Result := FieldByName(AFieldMc).AsString;
    finally
      Close;
    end;
  end;
end;

procedure TCardData.ListDm(AComboBox: TComboBox;const ATableName,AFieldMc: string);
var
  s: string;
begin
  with tblSysData do
  begin
    if Active then Active := False;
    TableName := ATableName;
    Open;
    try
      AComboBox.Items.Clear;
      First;
      while not Eof do
      begin
        s := FieldByName('D_DM').AsString+'|'+FieldByName(AFieldMc).AsString;
        AComboBox.Items.Add(s);
        Next;
      end;
    finally
      Close;
    end;
  end;
end;

function TCardData.GetBh(const AFieldName,APrevStr: string): string;
begin
  Result := IntToHex(Trunc(TimeStampToMSecs(DateTimeToTimeStamp(Now))),12);
{  Result := '';
  with tblSysData do
  begin
    if Active then Active := False;
    TableName := 'BH.DB';
    Open;
    try
      First;
      Edit;
      //FieldByName(AFieldName).AsString := APrevStr+AddDH(FieldByName(AFieldName).AsString);
      FieldByName(AFieldName).AsString := IntToHex(Trunc(TimeStampToMSecs(DateTimeToTimeStamp(Now))),12);
      Post;
      Result := FieldByName(AFieldName).AsString;
    finally
      Close;
    end;
  end;}
end;

procedure TCardData.DataModuleCreate(Sender: TObject);
begin
  DataBaseUser.Connected := True;
end;

end.

⌨️ 快捷键说明

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