ssbcx.pas
来自「一个仓库管理中的子系统--采购子系统」· PAS 代码 · 共 373 行
PAS
373 行
unit ssbcx;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, ExtCtrls, Grids, DBGrids, ComCtrls,QuickRpt;
type
TssbcxForm = class(TForm)
BitBtn1: TBitBtn;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Panel1: TPanel;
rwmcLabel: TLabel;
Label15: TLabel;
Label16: TLabel;
yxnxLabel: TLabel;
Label18: TLabel;
lshLabel: TLabel;
Label20: TLabel;
bzsjLabel: TLabel;
bdidLabel: TLabel;
Label23: TLabel;
DBGrid1: TDBGrid;
Panel2: TPanel;
Label8: TLabel;
Label44: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
bzfzrLabel: TLabel;
shrLabel: TLabel;
pzrLabel: TLabel;
bzqzrqLabel: TLabel;
shrqLabel: TLabel;
pzrqLabel: TLabel;
TabSheet2: TTabSheet;
Label1: TLabel;
Panel3: TPanel;
rwmcLabel1: TLabel;
Label3: TLabel;
Label4: TLabel;
yxnxLabel1: TLabel;
Label6: TLabel;
lshLabel1: TLabel;
Label9: TLabel;
bzsjLabel1: TLabel;
bdidLabel1: TLabel;
Label19: TLabel;
DBGrid2: TDBGrid;
Panel4: TPanel;
Label21: TLabel;
Label22: TLabel;
Label24: TLabel;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
bzfzrLabel1: TLabel;
shrLabel1: TLabel;
pzrLabel1: TLabel;
bzqzrqLabel1: TLabel;
shrqLabel1: TLabel;
pzrqLabel1: TLabel;
Label2: TLabel;
printButton: TSpeedButton;
EditBtn: TBitBtn;
procedure FormActivate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure PageControl1Change(Sender: TObject);
procedure EditBtnClick(Sender: TObject);
procedure printButtonClick(Sender: TObject);
private
FReport : TQuickRep;
procedure SetReport(Value : TQuickRep);
{ Private declarations }
public
property Report : TQuickRep read FReport write SetReport;
{ Public declarations }
end;
var
ssbcxForm: TssbcxForm;
implementation
uses Datamodule, ssbedit, sqbinput, ssbreport, bhgsqbreport, bhgsqbedit;
{$R *.DFM}
procedure TssbcxForm.SetReport(Value : TQuickRep);
begin
FReport:=Value;
end;
procedure TssbcxForm.FormActivate(Sender: TObject);
begin
pagecontrol1.ActivePage:=tabSheet1;
with Datamodule1.ssbxbQuery do
begin
close;
sql.Clear;
sql.Add('select cpbh as 产品编号,cpmc as 产品名称,xhgg as 型号规格,jhy as 计划员,');
sql.Add('jldw as 计量单位,sbsl as 申报数量,sbrq as 申报日期,kcsl as 库存数量,');
sql.Add('xcgsl as 需采购数量,ycdhsj as 预测到货时间,xqdw as 需求单位,cgslhs as 采购数量核实,bz as 备注');
sql.add('From dbo.a_cgssxb');
sql.Add('where sqbid='+''''+bdidLabel.caption+'''');
prepare;
open;
end;
with datamodule1.PublicQuery1 do
begin
close;
sql.Clear;
sql.Add('select * from dbo.a_cghzglb');
sql.Add('where sqbid='+''''+bdidLabel.caption+''''+' and hg_flag='+''''+'0'+'''');
prepare;
open;
if recordCount=0 then
begin
close;
label2.Visible:=True;
dbGrid2.Visible:=false;
exit;
end
else
begin
with datamodule1.bhgsqbquery do
begin
sql.Clear;
sql.Add('select dbo.a_cgsqxb.cpbh as 产品编号,dbo.a_cgsqxb.cpmc as 产品名称,dbo.a_cgsqxb.xhgg as 型号规格,dbo.a_cgsqxb.jldw as 计量单位,');
sql.Add('dbo.a_cgsqxb.sbsl as 申请数量,dbo.a_cgsqxb.sccj as 生产厂家,dbo.a_cgsqxb.gjje as 估计金额,dbo.a_cgsqxb.yyhrw as 用于何任务,dbo.a_cgsqxb.sjyq as 时间要求,dbo.a_bhgsqxb.ly as 理由');
sql.Add(' from dbo.a_cgsqxb,dbo.a_bhgsqxb where dbo.a_cgsqxb.cpbh=dbo.a_bhgsqxb.cpbh and dbo.a_cgsqxb.sqbid=dbo.a_bhgsqxb.sqbid and dbo.a_bhgsqxb.sqbid='+''''+bdidLabel.caption+'''');
prepare;
open;
end;
close;
label2.Visible:=False;
dbGrid2.Visible:=True;
end;
end;
end;
procedure TssbcxForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamodule1.publicQuery3.RequestLive:=false;
datamodule1.ssbxbQuery.close;
ssbcxForm.Release;
end;
procedure TssbcxForm.PageControl1Change(Sender: TObject);
begin
if pageControl1.activePage=Tabsheet2 then
begin
rwmcLabel1.Caption:=rwmcLabel.Caption;
yxnxlabel1.Caption:=yxnxlabel.Caption;
lshLabel1.Caption:=lshLabel.Caption;
bdidLabel1.Caption:=bdidLabel.Caption;
bzsjlabel1.Caption:=bzsjlabel.Caption;
bzfzrLabel1.Caption:=bzfzrLabel.Caption;
shrlabel1.Caption:=shrlabel.Caption;
pzrlabel1.Caption:=pzrlabel.Caption;
bzqzrqLabel1.Caption:=bzqzrqLabel.Caption;
shrqLabel1.Caption:=shrqLabel.Caption;
pzrqLabel1.Caption:=pzrqLabel.Caption;
end;
end;
procedure TssbcxForm.EditBtnClick(Sender: TObject);
begin
if pageControl1.ActivePage=Tabsheet1 then
begin
ssbeditForm:=TssbeditForm.Create(application);
with datamodule1.ssbxbQuery do
begin
with ssbeditForm do
begin
sbslEdit.Text:=FieldByname('申报数量').asstring;
ycdhsjEdit.Text:=sqinputForm.ShowMeDate(FieldByName('预测到货时间').asstring);
bzEdit.Text:=FieldByname('备注').asstring;
cpbhEdit.Text:=FieldByname('产品编号').asstring;
cpmcEdit.Text:=FieldByname('产品名称').asstring;
xhggEdit.Text:=FieldByName('型号规格').asstring;
kcslEdit.Text:=FieldByname('库存数量').asstring;
xcgslEdit.Text:=FieldbyName('需采购数量').asstring;
sqdwEdit.Text:=FieldByname('需求单位').asstring;
jldwEdit.Text:=FieldByname('计量单位').asstring;
cgslhsEdit.text:=FieldByname('采购数量核实').asstring;
end;
end;
with ssbeditForm do
begin
bdidlabel.Caption:=ssbcxForm.bdidLabel.Caption;
rwmclabel.Caption:=ssbcxForm.rwmcLabel.Caption;
yxnxlabel.Caption:=ssbcxForm.yxnxLabel.Caption;
lshedit.Text:=ssbcxForm.lshLabel.Caption;
bzsjedit.Text:=ssbcxForm.bzsjlabel.caption;
bzfzrcombo.Text:=ssbcxForm.bzfzrLabel.Caption;
shrCombo.Text:=ssbcxForm.shrLabel.Caption;
pzrCombo.Text:=ssbcxForm.pzrLabel.Caption;
bzfzrqzedit.Text:=ssbcxForm.bzqzrqlabel.Caption;
shrqedit.Text:=ssbcxForm.shrqLabel.Caption;
pzrqedit.Text:=ssbcxForm.pzrqLabel.Caption;
end;
hide;
ssbeditForm.ShowModal;
ssbeditForm.free;
show;
end
else
if pagecontrol1.ActivePage=TabSheet2 then
begin
bhgsqbeditFOrm:=TbhgsqbeditFOrm.Create(application);
hide;
bhgsqbeditFOrm.ShowModal;
bhgsqbeditForm.sqbidcode:=bdidlabel.Caption;
bhgsqbeditFOrm.free;
show;
end;
end;
procedure TssbcxForm.printButtonClick(Sender: TObject);
begin
if PageControl1.ActivePage=TabSheet1 then
begin
ssbReportForm:=TssbReportForm.Create(application);
Report:=ssbReportform.QuickRep;
with dataModule1.publicquery1 do
begin
close;
sql.Clear;
sql.Add('select * From dbo.a_cgsszb');
sql.Add('where sqbid='+''''+bdidlabel.caption+'''');
prepare;
open;
with ssbreportForm do
begin
rwmcQR.DataField:=FieldByName('rwmc').fieldName;
rwmcqr.DataSet:=datamodule1.PublicQuery1;
yxnxqr.DataField:=fieldByName('yxnx').fieldname;
yxnxqr.DataSet:=datamodule1.PublicQuery1;
lshqr.DataField:=fieldByName('lsh').Fieldname;
lshqr.DataSet:=datamodule1.PublicQuery1;
pzrQR.DataField:=fieldByName('pzr').Fieldname;
pzrQR.DataSet:=datamodule1.PublicQuery1;
pzrqQR.DataField:=fieldByName('pzrq').Fieldname;
pzrqQR.DataSet:=datamodule1.PublicQuery1;
shrQR.DataField:=fieldByName('shr').Fieldname;
shrQR.DataSet:=datamodule1.PublicQuery1;
shrqQR.DataField:=fieldByName('shrq').Fieldname;
shrqQR.DataSet:=datamodule1.PublicQuery1;
year.caption:=copy(fieldByName('bzsj').asstring,1,4);
month.caption:=copy(fieldByName('bzsj').asstring,5,2);
day.caption:=copy(fieldByName('bzsj').asstring,7,2);
//bzrqQR.DataField:=fieldByName('bzsj').Fieldname;
//bzrqQR.DataSet:=datamodule1.PublicQuery1;
bzqzQR.DataField:=fieldByName('bzqzrq').Fieldname;
bzqzQR.DataSet:=datamodule1.PublicQuery1;
sqbidQR.DataField:=fieldByName('sqbid').Fieldname;
sqbidQR.DataSet:=datamodule1.PublicQuery1;
bzfzrQR.DataField:=fieldByName('bzfzr').Fieldname;
bzfzrQR.DataSet:=datamodule1.PublicQuery1;
end;
end;
with datamodule1.ssbxbQuery do
begin
with ssbreportForm do
begin
cpmcqr.DataField:=FieldByName('产品名称').fieldName;
xhggQR.DataField:=FieldByName('型号规格').fieldName;
jldwQR.DataField:=FieldByName('计量单位').fieldName;
sbslQR.DataField:=FieldByName('申报数量').fieldName;
sqsjQR.DataField:=FieldByName('申报日期').fieldName;
kcslQr.DataField:=FieldByname('库存数量').FieldName;
xcgslQR.DataField:=FieldByname('需采购数量').FieldName;
ycdhsjQR.DataField:=FieldByname('预测到货时间').Fieldname;
xqdwQR.DataField:=FieldByName('需求单位').FieldName;
cgslhsQR.DataField:=FieldByname('采购数量核实').Fieldname;
bzqr.DataField:=FieldByName('备注').Fieldname;
end;
end;
Report.Preview;
ssbReportForm.Close;
ssbreportForm.free;
end;
if (PageControl1.ActivePage=tabsheet2) and dbGrid2.Visible then
begin
BhgsqReportForm:=TbhgsqReportForm.Create(application);
Report:=bhgsqreportForm.QuickRep;
with dataModule1.publicquery1 do
begin
close;
sql.Clear;
sql.Add('select * From dbo.a_cgsszb');
sql.Add('where sqbid='+''''+bdidlabel.caption+'''');
prepare;
open;
with bhgsqreportForm do
begin
rwmcQR.DataField:=FieldByName('rwmc').fieldName;
rwmcqr.DataSet:=datamodule1.PublicQuery1;
yxnxqr.DataField:=fieldByName('yxnx').fieldname;
yxnxqr.DataSet:=datamodule1.PublicQuery1;
lshqr.DataField:=fieldByName('lsh').Fieldname;
lshqr.DataSet:=datamodule1.PublicQuery1;
pzrQR.DataField:=fieldByName('pzr').Fieldname;
pzrQR.DataSet:=datamodule1.PublicQuery1;
pzrqQR.DataField:=fieldByName('pzrq').Fieldname;
pzrqQR.DataSet:=datamodule1.PublicQuery1;
shrQR.DataField:=fieldByName('shr').Fieldname;
shrQR.DataSet:=datamodule1.PublicQuery1;
shrqQR.DataField:=fieldByName('shrq').Fieldname;
shrqQR.DataSet:=datamodule1.PublicQuery1;
//sqrqQR.DataField:=fieldByName('bzsj').Fieldname;
//sqrqQR.DataSet:=datamodule1.PublicQuery1;
year.caption:=copy(fieldByName('bzsj').asstring,1,4);
month.caption:=copy(fieldByName('bzsj').asstring,5,2);
day.caption:=copy(fieldByName('bzsj').asstring,7,2);
bzqzQR.DataField:=fieldByName('bzqzrq').Fieldname;
bzqzQR.DataSet:=datamodule1.PublicQuery1;
sqbidQR.DataField:=fieldByName('sqbid').Fieldname;
sqbidQR.DataSet:=datamodule1.PublicQuery1;
bzfzrQR.DataField:=fieldByName('bzfzr').Fieldname;
bzfzrQR.DataSet:=datamodule1.PublicQuery1;
end;
end;
with dataModule1.PublicQuery2 do
begin
close;
sql.Clear;
sql.Add('select sqdw from dbo.a_cgsqzb');
sql.Add('where sqbid='+''''+bdidlabel.caption+'''');
prepare;
open;
with bhgsqreportForm do
begin
sqdwqr.DataField:=FieldByname('sqdw').FieldName;
sqdwqr.DataSet:=datamodule1.publicQuery2;
end;
end;
with datamodule1.publicQuery3 do
begin
requestlive:=false;
close;
sql.clear;
sql.Add('select dbo.a_cgsqxb.cpbh as 产品编号,dbo.a_cgsqxb.cpmc as 产品名称,dbo.a_cgsqxb.xhgg as 型号规格,dbo.a_cgsqxb.jldw as 计量单位,dbo.a_cgsqxb.sbsl as 申请数量,');
sql.add('dbo.a_bhgsqxb.HGWCJMC as 生产厂家,dbo.a_cgsqxb.gjje as 估计金额,dbo.a_cgsqxb.yyhrw as 用于何任务,dbo.a_cgsqxb.sjyq as 时间要求,');
sql.Add('dbo.a_bhgsqxb.ly as 理由 from dbo.a_bhgsqxb,dbo.a_cgsqxb');
sql.Add('where dbo.a_cgsqxb.sqbid=dbo.a_bhgsqxb.sqbid and dbo.a_cgsqxb.cpbh=dbo.a_bhgsqxb.cpbh and dbo.a_cgsqxb.sqbid='+''''+bdidlabel.caption+'''');
prepare;
open;
with bhgsqreportForm do
begin
cpmcqr.DataField:=FieldByName('产品名称').fieldName;
xhggQR.DataField:=FieldByName('型号规格').fieldName;
jldwQR.DataField:=FieldByName('计量单位').fieldName;
sbslQR.DataField:=FieldByName('申请数量').fieldName;
gjjeQR.DataField:=FieldByName('估计金额').fieldName;
sccjQR.DataField:=FieldByName('生产厂家').fieldName;
yyhrwQR.DataField:=FieldByName('用于何任务').fieldName;
sjyqQR.DataField:=FieldByName('时间要求').fieldName;
lyQR.DataField:=FieldByName('理由').fieldName;
end;
end;
Report.Preview;
bhgsqReportForm.close;
bhgsqReportForm.free;
end;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?