?? ckdd1.pas
字號:
Ed1.SetFocus;
ADOTable1.Delete;
if ADOtable1.RecordCount = 0 then Bit8.Enabled := false;
end;
procedure TCKDD.NewCode(Sender: integer);
var code: string;
begin
Query1.Close;
Query1.sql.text := 'select count(*) from CKDD001 where kdrq=:cdrq';
Query1.Parameters[0].Value := datetostr(MainForm.DateTimePicker1.Date);
Query1.open;
code := floattostr(Query1.Fields[0].asfloat + strtofloat(formatdatetime('yyyymmdd""001', MainForm.DateTimePicker1.Date)) + Sender);
Query1.Close;
Query1.sql.text := 'select count(*) from CKDD001 where code=:code';
Query1.Parameters[0].Value := code;
Query1.open;
if Query1.Fields[0].Value > 0 then
begin
Sender := sender + 1;
Newcode(sender);
end
else
begin
ADOTable1.FieldByName('code').asstring := code;
ADOTable1.FieldByName('kdrq').Value := datetostr(MainForm.DateTimePicker1.Date);
ADOTable1.FieldByName('dkr').Value := MainForm.Label4.Caption;
ADOTable1.FieldByName('zt').Value := '未審核';
end;
end;
procedure TCKDD.Bit5Click(Sender: TObject);
begin
ADOTable1.Append;
Newcode(0);
try
ADOTable1.Post;
except
Application.MessageBox('單號被占用,請重試一次.', '提示', MB_OK + MB_ICONERROR);
ADOTable1.Cancel;
exit;
end;
ADOTable1.Edit;
Bit5.Enabled := false;
Ed2.ReadOnly := false;
Ed3.ReadOnly := false;
Ed5.ReadOnly := false;
Ed4.ReadOnly := false;
Ed7.ReadOnly := false;
end;
procedure TCKDD.b1UpdateState(Navigator: TwwDBNavigator;
Button: TwwNavButton; Cause: TwwUpdateCause);
begin
if b1.Enabled = true then Bit1.Enabled := true else Bit1.Enabled := false;
if b2.Enabled = true then Bit2.Enabled := true else Bit2.Enabled := false;
if b3.Enabled = true then Bit3.Enabled := true else Bit3.Enabled := false;
if b4.Enabled = true then Bit4.Enabled := true else Bit4.Enabled := false;
if b5.Enabled = true then Bit5.Enabled := true else Bit5.Enabled := false;
if b6.Enabled = true then Bit6.Enabled := true else Bit6.Enabled := false;
if b6.Enabled = true then
begin
DBGridEh1.Columns[0].ReadOnly := true;
DBGridEh1.Columns[4].ReadOnly := true;
DBGridEh1.Columns[5].ReadOnly := true;
DBGridEh1.Columns[6].ReadOnly := true;
DBGridEh1.Columns[7].ReadOnly := true;
DBGridEh1.Columns[8].ReadOnly := true;
end
else
begin
DBGridEh1.Columns[0].ReadOnly := false;
DBGridEh1.Columns[4].ReadOnly := false;
DBGridEh1.Columns[5].ReadOnly := false;
DBGridEh1.Columns[6].ReadOnly := false;
DBGridEh1.Columns[7].ReadOnly := false;
DBGridEh1.Columns[8].ReadOnly := false;
end;
if b7.Enabled = true then Bit7.Enabled := true else Bit7.Enabled := false;
if b8.Enabled = true then Bit8.Enabled := true else Bit8.Enabled := false;
end;
procedure TCKDD.Bit6Click(Sender: TObject);
begin
try
ADOTable1.Post;
except
Application.MessageBox('您的操作不正確,導致單據(jù)異常,不能保存.', '提示', MB_OK + MB_ICONERROR);
end;
end;
procedure TCKDD.Bit7Click(Sender: TObject);
begin
ADOTable1.Cancel;
end;
procedure TCKDD.Bit1Click(Sender: TObject);
begin
if Bit6.Enabled = true then
begin
if Application.MessageBox('單據(jù)已修改,是否要保存?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then ADOTable1.post else ADOTable1.Cancel;
end;
ADOTable1.First;
end;
procedure TCKDD.Bit4Click(Sender: TObject);
begin
if Bit6.Enabled = true then
begin
if Application.MessageBox('單據(jù)已修改,是否要保存?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then ADOTable1.post else ADOTable1.Cancel;
end;
ADOTable1.Last;
end;
procedure TCKDD.N9Click(Sender: TObject);
begin
if ADOTable1.FieldByName('zt').asstring = '審核入賬' then
begin
Application.MessageBox('單據(jù)已經(jīng)入賬,不能再做修改.', '提示', MB_OK + MB_ICONERROR);
exit;
end;
if ADOTable1.RecordCount = 0 then exit;
Application.CreateForm(TCKDDxzsp, CKDDxzsp);
CKDDxzsp.ShowModal;
end;
procedure TCKDD.N10Click(Sender: TObject);
begin
if ADOTable1.FieldByName('zt').asstring = '審核入賬' then
begin
Application.MessageBox('單據(jù)已經(jīng)入賬,不能再做修改.', '提示', MB_OK + MB_ICONERROR);
exit;
end;
if ADOTable2.FieldByName('spname').asstring = '' then exit;
if ADOTable2.FieldByName('spcode').asstring = '' then exit;
if Application.MessageBox(Pchar('是否要刪除當前貨品? 品名:' + ADOTable2.FieldByName('spname').asstring), '提示', MB_YESNO + MB_ICONQUESTION) = IDNO then exit;
ADOTable2.Delete;
end;
procedure TCKDD.FormCreate(Sender: TObject);
begin
ADOTable1.Last;
end;
procedure TCKDD.N2Click(Sender: TObject);
begin
if ADOTable1.FieldByName('zt').asstring = '審核入賬' then
begin
Application.MessageBox('單據(jù)已經(jīng)入賬,不能再做修改.', '提示', MB_OK + MB_ICONERROR);
exit;
end;
if ADOTable1.RecordCount = 0 then exit;
Application.CreateForm(TxgCKDDh, xgCKDDh);
xgCKDDh.Edit1.Text := ADOTable1.FieldByName('code').asstring;
xgCKDDh.ShowModal;
end;
procedure TCKDD.Ed1ButtonClick(Sender: TObject; AbsoluteIndex: Integer);
begin
N13.Click;
end;
procedure TCKDD.N13Click(Sender: TObject);
begin
if Bit6.Enabled = true then
begin
if Application.MessageBox('單據(jù)已修改,是否要保存?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then
ADOTable1.post else ADOTable1.Cancel;
end;
Application.CreateForm(TCKDDcx, CKDDcx);
CKDDcx.ShowModal;
end;
procedure TCKDD.N11Click(Sender: TObject);
begin
if ADOTable2.FieldByName('spname').asstring = '' then exit;
end;
procedure TCKDD.ADOTable1AfterScroll(DataSet: TDataSet);
begin
if ADOTable1.RecordCount = 0 then
begin
Ed2.ReadOnly := true;
Ed3.ReadOnly := true;
Ed5.ReadOnly := false;
Ed4.ReadOnly := true;
Ed7.ReadOnly := true;
DBGridEh1.Columns[0].ReadOnly := true;
DBGridEh1.Columns[4].ReadOnly := true;
DBGridEh1.Columns[5].ReadOnly := true;
DBGridEh1.Columns[6].ReadOnly := true;
DBGridEh1.Columns[7].ReadOnly := true;
DBGridEh1.Columns[8].ReadOnly := true;
end
else
begin
Ed2.ReadOnly := false;
Ed3.ReadOnly := false;
Ed5.ReadOnly := false;
Ed4.ReadOnly := false;
Ed7.ReadOnly := false;
DBGridEh1.Columns[0].ReadOnly := false;
DBGridEh1.Columns[4].ReadOnly := false;
DBGridEh1.Columns[5].ReadOnly := false;
DBGridEh1.Columns[6].ReadOnly := false;
DBGridEh1.Columns[7].ReadOnly := false;
DBGridEh1.Columns[8].ReadOnly := false;
end;
if Bit6.Enabled = true then
begin
DBGridEh1.Columns[0].ReadOnly := true;
DBGridEh1.Columns[4].ReadOnly := true;
DBGridEh1.Columns[5].ReadOnly := true;
DBGridEh1.Columns[6].ReadOnly := true;
DBGridEh1.Columns[7].ReadOnly := true;
DBGridEh1.Columns[8].ReadOnly := true;
end
else
begin
DBGridEh1.Columns[0].ReadOnly := false;
DBGridEh1.Columns[4].ReadOnly := false;
DBGridEh1.Columns[5].ReadOnly := false;
DBGridEh1.Columns[6].ReadOnly := false;
DBGridEh1.Columns[7].ReadOnly := false;
DBGridEh1.Columns[8].ReadOnly := false;
end;
if ADOTable1.FieldByName('zt').asstring = '審核入賬' then
begin
Ed2.ReadOnly := true;
Ed3.ReadOnly := true;
Ed4.ReadOnly := true;
Ed5.ReadOnly := false;
Ed7.ReadOnly := true;
DBGridEh1.Columns[0].ReadOnly := true;
DBGridEh1.Columns[4].ReadOnly := true;
DBGridEh1.Columns[5].ReadOnly := true;
DBGridEh1.Columns[6].ReadOnly := true;
DBGridEh1.Columns[7].ReadOnly := true;
DBGridEh1.Columns[8].ReadOnly := true;
end
else
begin
Ed2.ReadOnly := false;
Ed3.ReadOnly := false;
Ed4.ReadOnly := false;
Ed5.ReadOnly := false;
Ed7.ReadOnly := false;
DBGridEh1.Columns[0].ReadOnly := false;
DBGridEh1.Columns[4].ReadOnly := false;
DBGridEh1.Columns[5].ReadOnly := false;
DBGridEh1.Columns[6].ReadOnly := false;
DBGridEh1.Columns[7].ReadOnly := false;
DBGridEh1.Columns[8].ReadOnly := false;
end;
end;
procedure TCKDD.BitBtn6Click(Sender: TObject);
begin
if ADOTable1zt.Value = '未審核' then
begin
if Application.MessageBox('單據(jù)未審核,是否繼續(xù)打印?', '提示', MB_YESNO + MB_ICONQUESTION) = IDNO then exit;
end;
Application.CreateForm(TdyCKDD, dyCKDD);
dyckdd.ADOQuery1.Close;
dyckdd.ADOQuery1.Sql.clear;
dyckdd.ADOQuery1.Sql.add('select * from ckdd001 where code=:code');
dyckdd.ADOQuery1.Parameters[0].Value := ADOTable1.fieldbyname('code').Value;
dyckdd.ADOQuery1.Open;
dyckdd.ADOQuery2.Close;
dyckdd.ADOQuery2.Sql.clear;
dyckdd.ADOQuery2.Sql.add('select * from ckdd002 where code=:code order by id');
dyckdd.ADOQuery2.Parameters[0].Value := ADOTable1.fieldbyname('code').Value;
dyckdd.ADOQuery2.Open;
dyCKDD.ShowModal;
end;
procedure TCKDD.Panel1Resize(Sender: TObject);
begin
Panel4.Left := (Panel1.Width - Panel4.Width) div 2;
end;
procedure TCKDD.Panel2Resize(Sender: TObject);
begin
Ed7.Width := Panel2.Width - 52;
end;
procedure TCKDD.FormResize(Sender: TObject);
begin
with CKDD do
begin
if Height < 350 then Height := 350;
if Width < 567 then Width := 567;
end;
end;
procedure TCKDD.DBGridEh1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = 189 then
begin
N10.Click;
end;
end;
procedure TCKDD.N3Click(Sender: TObject);
begin
if ADOTable1.FieldByName('dcck').asstring = '' then
begin
Application.MessageBox('請選擇調(diào)出倉庫.', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
if ADOTable1.FieldByName('drck').asstring = '' then
begin
Application.MessageBox('請選擇調(diào)入倉庫.', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
if ADOTable1.FieldByName('dcck').asstring = ADOTable1.FieldByName('drck').asstring then
begin
Application.MessageBox('調(diào)出倉庫和調(diào)入倉庫不能相同.', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
if ADOTable1.FieldByName('ywy').asstring = '' then
begin
Application.MessageBox('請選擇業(yè)務員.', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
if Application.MessageBox('審核入賬后將不能修改單據(jù),是否繼續(xù)?', '提示', MB_YESNO + MB_ICONQUESTION) = IDNO then exit;
try
ADOTable1.Edit;
ADOTable1shrq.Value := strtodate(datetostr(MainForm.DateTimePicker1.Date));
ADOTable1shr.Value := MainForm.Label4.Caption;
ADOTable1.FieldByName('zt').asstring := '審核入賬';
ADOTable1.Post;
except
end;
Application.MessageBox('此單據(jù)已審核入賬成功.', '提示', MB_OK + MB_ICONINFORMATION);
try
ADOTable1.Refresh;
except
end;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -