htcx.pas
来自「一个仓库管理中的子系统--采购子系统」· PAS 代码 · 共 357 行
PAS
357 行
unit htcx;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, ComCtrls, StdCtrls, ExtCtrls, Grids, DBGrids;
const
grid_headcolor=$00ACEEFF;
grid_highcolor=$00F7FFFF;
grid_lowcolor=$00CAFFFF;
grid_selectedcolor=$0EFFaa00;
type
ThtcxForm = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
RadioGroup1: TRadioGroup;
hthEdit: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
beginEdit: TEdit;
endEdit: TEdit;
beginDate: TDateTimePicker;
endDate: TDateTimePicker;
SpeedButton1: TSpeedButton;
DBGrid2: TDBGrid;
Label4: TLabel;
Label5: TLabel;
SpeedButton2: TSpeedButton;
GroupBox3: TGroupBox;
Label6: TLabel;
qzrEdit: TEdit;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
StatusBar1: TStatusBar;
SpeedButton7: TSpeedButton;
procedure RadioGroup1Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure SpeedButton2Click(Sender: TObject);
procedure beginDateCloseUp(Sender: TObject);
procedure endDateCloseUp(Sender: TObject);
procedure DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure SpeedButton7Click(Sender: TObject);
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure FormActivate(Sender: TObject);
private
//FReport : TQuickRep;
//procedure SetReport(Value : TQuickRep);
{ Private declarations }
public
//property Report : TQuickRep read FReport write SetReport;
{ Public declarations }
end;
var
htcxForm: ThtcxForm;
implementation
uses Datamodule, sqbinput, htgl, htxg, httj, htReport;
{$R *.DFM}
{procedure ThtcxForm.SetReport(Value : TQuickRep);
begin
FReport:=Value;
end;}
procedure ThtcxForm.RadioGroup1Click(Sender: TObject);
begin
with RadioGroup1 do
begin
if ItemIndex=0 then
begin
GroupBox1.Enabled:=True;
GroupBox2.Enabled:=False;
GroupBox3.Enabled:=False;
end;
if ItemIndex=1 then
begin
GroupBox1.Enabled:=False;
GroupBox2.Enabled:=True;
GroupBox3.Enabled:=False;
end;
if ItemIndex=2 then
begin
GroupBox1.Enabled:=False;
GroupBox2.Enabled:=False;
GroupBox3.Enabled:=True;
end;
end;
end;
procedure ThtcxForm.SpeedButton1Click(Sender: TObject);
begin
if RadioGroup1.ItemIndex=0 then
begin
with datamodule1.htglzbQuery do
begin
sql.Clear;
sql.Add('select hth as 合同号,jfmc as 甲方单位名,yfmc as 乙方单位名,dhje as 订货金额,qzr as 签字人,qzsj as 签字时间,lrms as 合同内容描述,bz as 备注 From dbo.a_htglzb');
sql.Add('where hth='+''''+hthedit.Text+'''');
prepare;
open;
if RecordCount=0 then
begin
speedButton3.Enabled:=false;
speedButton4.Enabled:=false;
speedButton5.Enabled:=false;
SpeedButton6.Enabled:=False;
end
else
begin
speedButton3.Enabled:=true;
speedButton4.Enabled:=true;
SpeedButton5.Enabled:=True;
SpeedButton6.Enabled:=True;
end;
end;
with datamodule1.htglxbQuery do
begin
sql.Clear;
sql.Add('select hth as 合同号,cpmc as 产品名称,xhgg as 型号规格,sldw as 数量单位,dj as 单价,dhsl as 订货数量,fkfs as 付款方式,dhsj as 到货时间,bz as 备注 from dbo.a_htglxb');
sql.Add('where hth='+''''+hthedit.text+'''');
prepare;
open;
end;
end;
if RadioGroup1.ItemIndex=1 then
begin
with datamodule1.htglzbQuery do
begin
sql.Clear;
sql.Add('select hth as 合同号,jfmc as 甲方单位名,yfmc as 乙方单位名,dhje as 订货金额,qzr as 签字人,qzsj as 签字时间,lrms as 合同内容描述,bz as 备注 From dbo.a_htglzb');
sql.Add('where qzsj<='+''''+sqinputForm.Getdate709(endedit.Text)+''''+' and qzsj>='+''''+sqinputForm.Getdate709(beginedit.Text)+'''');
prepare;
open;
first;
if RecordCount=0 then
begin
speedButton3.Enabled:=false;
speedButton4.Enabled:=false;
speedButton5.Enabled:=false;
SpeedButton6.Enabled:=False;
end
else
begin
speedButton3.Enabled:=true;
speedButton4.Enabled:=true;
SpeedButton5.Enabled:=True;
SpeedButton6.Enabled:=True;
end;
end;
with datamodule1.htglxbQuery do
begin
sql.Clear;
sql.Add('select hth as 合同号,cpmc as 产品名称,xhgg as 型号规格,sldw as 数量单位,dj as 单价,dhsl as 订货数量,fkfs as 付款方式,dhsj as 到货时间,bz as 备注 from dbo.a_htglxb');
sql.Add('where hth='+''''+datamodule1.htglzbQuery.fieldByName('合同号').asstring+'''');
prepare;
open;
end;
end;
if RadioGroup1.ItemIndex=2 then
begin
with datamodule1.htglzbQuery do
begin
sql.Clear;
sql.Add('select hth as 合同号,jfmc as 甲方单位名,yfmc as 乙方单位名,dhje as 订货金额,qzr as 签字人,qzsj as 签字时间,lrms as 合同内容描述,bz as 备注 From dbo.a_htglzb');
sql.Add('where qzr<='+''''+qzredit.Text+'''');
prepare;
open;
first;
if RecordCount=0 then
begin
speedButton3.Enabled:=false;
speedButton4.Enabled:=false;
speedButton5.Enabled:=false;
SpeedButton6.Enabled:=False;
end
else
begin
speedButton3.Enabled:=true;
speedButton4.Enabled:=true;
SpeedButton5.Enabled:=True;
SpeedButton6.Enabled:=True;
end;
end;
with datamodule1.htglxbQuery do
begin
sql.Clear;
sql.Add('select hth as 合同号,cpmc as 产品名称,xhgg as 型号规格,sldw as 数量单位,dj as 单价,dhsl as 订货数量,fkfs as 付款方式,dhsj as 到货时间,bz as 备注 from dbo.a_htglxb');
sql.Add('where hth='+''''+datamodule1.htglzbQuery.fieldByName('合同号').asstring+'''');
prepare;
open;
end;
end;
end;
procedure ThtcxForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
with datamodule1 do
begin
htglzbQuery.close;
htglxbQuery.close;
publicQuery1.RequestLive:=False;
publicquery1.Close;
publicquery2.RequestLive:=False;
PublicQuery2.Close;
end;
end;
procedure ThtcxForm.SpeedButton2Click(Sender: TObject);
begin
close;
end;
procedure ThtcxForm.beginDateCloseUp(Sender: TObject);
begin
beginedit.Text:=sqinputForm.ShowMeDate(sqinputForm.DateTo709str(beginDate.Date));
end;
procedure ThtcxForm.endDateCloseUp(Sender: TObject);
begin
endedit.Text:=sqinputForm.ShowMeDate(sqinputForm.DateTo709str(endDate.Date));
end;
procedure ThtcxForm.DBGrid2DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if (DataCol mod 2) =0 then dbgrid2.Canvas.Brush.Color:=grid_highcolor
else dbgrid2.Canvas.Brush.Color:=grid_lowcolor;
if gdSelected in state then dbgrid2.Canvas.Brush.Color:=grid_selectedcolor;
dbgrid2.Canvas.FillRect(rect);
dbGrid2.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
procedure ThtcxForm.SpeedButton3Click(Sender: TObject);
begin
htxgForm:=ThtxgForm.Create(Application);
hide;
htxgForm.ShowModal;
htxgForm.Free;
show;
end;
procedure ThtcxForm.SpeedButton4Click(Sender: TObject);
begin
httjForm:=ThttjForm.Create(Application);
hide;
httjform.ShowModal;
httjForm.Free;
show;
end;
procedure ThtcxForm.SpeedButton5Click(Sender: TObject);
begin
if Messagedlg('您是否要删除当前的合同?',mtInformation,[mbOK,mbCANCEL],0)=mrCancel then
exit
else
begin
with datamodule1.PublicQuery1 do
begin
requestlive:=True;
sql.Clear;
sql.Add('select * from dbo.a_htglzb');
sql.Add('where hth='+''''+datamodule1.htglzbquery.FieldByName('合同号').asstring+'''');
prepare;
open;
delete;
end;
showmessage('删除成功!');
end;
end;
procedure ThtcxForm.SpeedButton6Click(Sender: TObject);
begin
if Messagedlg('您是否要删除当前的合同的当前记录?',mtInformation,[mbOK,mbCANCEL],0)=mrCancel then
exit
else
begin
with datamodule1.publicQuery2 do
begin
Requestlive:=True;
sql.Clear;
sql.Add('select * From dbo.a_htglxb');
sql.Add('where cpmc='+''''+datamodule1.htglxbQuery.FieldBYName('产品名称').asstring+''''+' and xhgg='+''''+datamodule1.htglxbQuery.FieldByname('型号规格').asstring+'''');
prepare;
open;
delete;
end;
showmessage('删除成功!');
end;
end;
procedure ThtcxForm.SpeedButton7Click(Sender: TObject);
begin
if dbGrid2.FieldCount=0 then
begin
showmessage('您没有查询任何合同表的数据!');
exit;
end;
htReportForm:=ThtReportForm.Create(Application);
//Report:=sqbReportform.QuickRep;
with Datamodule1.htglzbQuery do
with htReportForm do
begin
jfmcQR.DataField:=FieldByName('甲方单位名').FieldName;
yfmcQR.DataField:=FieldByname('乙方单位名').FieldName;
hthQR.DataField:=FieldBYNAme('合同号').FieldName;
jhjeQR.DataField:=FieldByName('订货金额').FieldName;
jhyQR.DataField:=FieldByName('签字人').FieldName;
qzsjQR.DataField:=FieldByName('签字时间').Fieldname;
htnrQR.DataField:=FieldByname('合同内容描述').FieldName;
end;
hide;
htReportForm.quickrep1.Preview;
htReportForm.Free;
show;
end;
procedure ThtcxForm.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if (DataCol mod 2) =0 then dbgrid1.Canvas.Brush.Color:=grid_highcolor
else dbgrid1.Canvas.Brush.Color:=grid_lowcolor;
if gdSelected in state then dbgrid1.Canvas.Brush.Color:=grid_selectedcolor;
dbgrid1.Canvas.FillRect(rect);
dbGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
procedure ThtcxForm.FormActivate(Sender: TObject);
begin
begindate.DateTime:=date;
enddate.DateTime:=date;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?