?? cardloss.pas
字號(hào):
unit CardLoss;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TFrm_CardLoss = class(TForm)
Label5: TLabel;
Label6: TLabel;
Label8: TLabel;
Lb_kysj: TLabel;
Lb_ZS: TLabel;
Lb_X: TLabel;
Lb_Y: TLabel;
LB_CardType: TLabel;
Lb_Deposit: TLabel;
LB_Payment: TLabel;
Label10: TLabel;
Label9: TLabel;
LB_Gift: TLabel;
LB_JSSS: TLabel;
Label11: TLabel;
LB_SYJE: TLabel;
Label7: TLabel;
Label4: TLabel;
LB_CardDate: TLabel;
LB_CardTime: TLabel;
Label12: TLabel;
Label13: TLabel;
edt_HT: TEdit;
Btn_Read: TButton;
Btn_Dele: TButton;
Btn_Close: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
LB_Tele: TLabel;
edt_Gname: TEdit;
edt_IdentityNo: TEdit;
Bevel1: TBevel;
Bevel2: TBevel;
procedure FormShow(Sender: TObject);
procedure Btn_ReadClick(Sender: TObject);
procedure Btn_DeleClick(Sender: TObject);
private
procedure ValidCheck(Sender: TObject);
{ Private declarations }
public
{ Public declarations }
end;
var
Frm_CardLoss: TFrm_CardLoss;
implementation
uses sys_dm, sys_global;
{$R *.dfm}
var
checkFlag: char;
procedure TFrm_CardLoss.FormShow(Sender: TObject);
begin
edt_Gname.Text := '';
edt_IdentityNo.Text := '' ;
LB_CardType.Caption := '' ;
Lb_Deposit.Caption := '' ;
LB_Payment.Caption := '' ;
LB_Gift.Caption := '' ;
LB_JSSS.Caption := '' ;
LB_SYJE.Caption := '' ;
LB_CardDate.Caption := '' ;
LB_CardTime.Caption := '' ;
LB_Tele.Caption := '' ;
end;
procedure TFrm_CardLoss.Btn_ReadClick(Sender: TObject);
begin
edt_Gname.Text := trim(edt_Gname.Text);
edt_IdentityNo.Text := trim(edt_IdentityNo.Text);
if (edt_Gname.Text='') and (edt_IdentityNo.Text='') then begin
messagebox(handle,' 請(qǐng)輸入姓名或身份證號(hào)碼 ', '提示', mb_ok+MB_ICONWARNING);
edt_Gname.SetFocus ;
exit ;
end;
with frm_sys_dm.Qr_tmp1 do
begin
close;
sql.clear;
sql.text := 'select * from card where IdentityNo=''' + edt_IdentityNo.Text + ''' or Gname='''+ edt_Gname.Text+'''' ;
open;
if eof then begin
messagebox(handle,'沒(méi)有符合條件的資料','提示',mb_ok+mb_iconstop);
exit;
end;
if RecordCount>=2 then begin
messagebox(handle,pchar('有'+intTostr(RecordCount)+'張卡在使用, 不可掛失'),'提示',mb_ok+mb_iconstop);
exit;
end;
m_ICno := intTostr(fieldbyname('IcNo').asinteger) ;
m_ICdate := fieldbyname('ICDate').asdatetime ;
LB_CardType.Caption := fieldbyname('icType').AsString ;
Lb_Deposit.Caption := floatTostr(fieldbyname('Deposit').AsFloat);
LB_Payment.Caption := floatTostr(fieldbyname('Payment').AsFloat);
LB_Gift.Caption := floatTostr(fieldbyname('Gift').AsFloat);
LB_JSSS.Caption := floatTostr(fieldbyname('JSSS').AsFloat /60) ;
if LB_CardType.Caption='計(jì)時(shí)卡' then begin // 計(jì)時(shí)卡
m_ICmoney := fieldbyname('SYSJ').AsFloat ;
LB_SYJE.caption := GetHourMinute(Trunc(m_ICmoney)) ;
edt_HT.Text := Lb_Deposit.Caption ;
end else begin
m_ICmoney := fieldbyname('SYJE').AsFloat ;
LB_SYJE.caption := floatTostr(m_ICmoney)+' 元' ;
edt_HT.Text := floatTostr(m_ICmoney+strTofloat(Lb_Deposit.Caption)) ;
end;
LB_CardDate.Caption := dateTostr(m_ICdate);
LB_CardTime.Caption := timeTostr(m_ICdate);
LB_Tele.caption := fieldbyname('Tele').AsString ;
Btn_Read.Tag := 1 ;
end;
end;
procedure TFrm_CardLoss.ValidCheck(Sender: TObject);
begin
// 檢查網(wǎng)絡(luò)是否正常
m_Stop := '0' ;
ServerDateTime ;
if m_Stop = '9' then begin
messagebox(handle,' 網(wǎng)絡(luò)不通, 該卡暫時(shí)不能注銷! ', '提示', mb_ok+MB_ICONWARNING);
checkFlag :='0' ;
exit ;
end;
edt_HT.text := trim(edt_HT.text);
if Trim(edt_HT.text)='' then edt_HT.text := '0' ;
try
strTofloat(edt_HT.text)
except
MessageBox(handle, ' 退回的金額有錯(cuò)!','提示', mb_ok+mb_iconstop);
edt_HT.SetFocus ;
checkFlag :='0' ;
exit;
end;
end;
procedure TFrm_CardLoss.Btn_DeleClick(Sender: TObject);
begin
if Btn_Read.Tag = 0 then begin
messagebox(handle, '沒(méi)有有效資料, 不可掛失.', '提示', mb_ok+mb_iconstop);
exit ;
end;
checkFlag := '1' ; // 假定能通過(guò)有效性檢查
ValidCheck(sender); // 進(jìn)行有效性檢查
if checkFlag='0' then exit; // 若檢查通不過(guò), 則自動(dòng)退出
if messagebox(handle,pchar('退回客人 '+edt_ht.Text+' 元'+#13+#13+' 您確定嗎? '), '提示',mb_okcancel+mb_iconquestion)=idcancel then
exit ;
// 刪除CARD中相應(yīng)的記錄, 在delcard 中插入一條記錄
with frm_sys_dm.Qr_tmp1 do
begin
close;
sql.clear;
sql.text := 'delete from card where Icno='+intTostr(strToint(m_ICno)) ;
try
execsql;
except
beep;
end;
close ;
sql.clear;
sql.text := 'insert into DelCard (CardNo, DelTime) values (:CardNo, :DelTime)' ;
Parameters.parambyname('CardNo').Value := strToint(m_ICno) ;
Parameters.parambyname('DelTime').value := now ;
try
execsql;
except
beep;
end;
end;
// 向借貸表插入一條記錄
if strTofloat(edt_HT.text)>=0.5 then
with frm_sys_dm.Qr_tmp1 do
begin
close;
sql.clear;
sql.Text := 'insert into Pbill (icNo, Edate, itemName, DF, Operator) values (:icNo, :Edate, :itemName, :DF, :Operator)' ;
Parameters.parambyname('icNo').Value := strToint(m_ICno) ;
Parameters.parambyname('Edate').value := now ;
Parameters.parambyname('itemName').value := 'HT' ;
Parameters.parambyname('DF').value := strTofloat(edt_HT.text);
Parameters.parambyname('Operator').value := m_OpName ;
try
execsql;
except
beep;
end;
end;
messagebox(handle,pchar(edt_Gname.Text+'的卡已掛失成功'), '提示',mb_ok+MB_ICONINFORMATION) ;
end;
end.
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -