cghzbcx.pas
来自「一个仓库管理中的子系统--采购子系统」· PAS 代码 · 共 1,289 行 · 第 1/4 页
PAS
1,289 行
end;
end;
asysdata.Data:=qrspagenumber;
asysdata.left:=blabel.Left+blabel.Width+10;
datamodule1.publicQuery2.First;
while not datamodule1.publicquery2.EOF do
begin
selectstr:=selectstr+datamodule1.publicquery2.FieldbyName('FieldsName').AsString;
aLabel := TQRLabel.Create(cghzReportform);
aLabel.Parent := HeaderBand1;
with aLabel do
begin
AutoSize:=false;
AutoStretch:=true;
Left :=LeftValue;
Top :=3;
if reportwidth<1122 then
begin
eachwidth:=(1122-reportwidth)/datamodule1.publicQuery2.RecordCount;
Width:=datamodule1.publicQuery2.FieldBYname('display_width').asinteger+trunc(eachwidth);
end
else
Width:=datamodule1.publicQuery2.FieldBYname('display_width').asinteger;
color:=clwhite;
Height:=35;
Alignment:=taleftJustify;
if length(datamodule1.publicquery2.FieldbyName('DisplayName').AsString)<8 then
Caption :=datamodule1.publicquery2.FieldbyName('DisplayName').AsString
else
caption:=copy(datamodule1.publicquery2.FieldbyName('DisplayName').AsString,1,8)+#13+copy(datamodule1.publicquery2.FieldbyName('DisplayName').AsString,9,length(datamodule1.publicquery2.FieldbyName('DisplayName').AsString));
end;
aText := TQRDBText.Create(cghzReportform);
aText.Parent := DetailBand1;
with aText do
begin
AutoSize:=False;
AutoStretch:=True;
Height:=35;
Left :=LeftValue;
Top :=3;
if reportwidth<1122 then
begin
eachwidth:=(1122-reportwidth)/datamodule1.publicQuery2.RecordCount;
Width:=datamodule1.publicQuery2.FieldBYname('display_width').asinteger+trunc(eachwidth);
end
else
Width:=datamodule1.publicQuery2.FieldBYname('display_width').asinteger;
//Height:=DetailBand1.Height;
DataSet:=datamodule1.publicquery3;
DataField:=datamodule1.publicquery2.FieldbyName(
'FieldsName').AsString;
Alignment:=taleftJustify;
end;
{if reportwidth<1122 then
begin
eachwidth:=(1122-reportwidth)/datamodule1.publicQuery2.RecordCount;
LeftValue:=LeftValue+datamodule1.publicQuery2.FieldBYname('display_width').asinteger+trunc(eachwidth);
end
else }
LeftValue:=LeftValue+datamodule1.publicQuery2.FieldBYname('display_width').asinteger;
selectstr:=selectstr+',';
datamodule1.publicquery2.Next;
end;
delete(selectstr,length(selectstr),1);
end;
if datamodule1.publicquery2.RecordCount<>0 then
with datamodule1.publicquery3 do
begin
sql.Clear;
sql.Add(selectstr);
sql.Add('from dbo.a_cghzglb');
if condition<>'' then
sql.Add('where '+condition);
sql.add('order by sqbid desc,jhy asc');
prepare;
open;
end;
Result:=True;
end;
procedure TcghzbForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamodule1.hzglQuery.close;
datamodule1.Query3.Close;
end;
procedure TcghzbForm.N2Click(Sender: TObject);
begin
cghzrycxForm:=TCghzrycxForm.Create(Application);
hide;
cghzrycxForm.ShowModal;
cghzrycxForm.free;
show;
end;
procedure TcghzbForm.N4Click(Sender: TObject);
begin
zdxsForm:=TzdxsForm.Create(Application);
hide;
zdxsForm.ShowModal;
zdxsForm.Free;
show;
end;
procedure TcghzbForm.N12Click(Sender: TObject);
var wherevalue:string;
I:integer;
begin
setupForm1:=TsetupForm1.Create(application);
hide;
with setupform1 do
begin
if ShowModal=mrok then
begin
wherevalue:=edit1.text;
with Datamodule1 do
begin
hzglbSelect:='select SQBID as 申请表单号,RWMC as 任务名称,YXNX as 有效年限,LSH as 流水号,JHY as 计划员,CPBH as 产品编号,CPMC as 产品名称,xHGG as 型号规格,SLDW as 计量单位,SBRQ as 申请日期,SBSL as 申报数量,KCSL as 库存数量,';
hzglbSelect:=hzglbSelect+'SXSL as 需采购数量,GJJE as 估计金额,sccj as 申请指定厂家,SJCGSCCJ as 实际采购厂家,YBJSL as 已报检数量,CGSLHS as 采购数量核实,BJHGSJ as 报检合格时间,YSBX1 as 用于何任务,SJYQ as 时间要求,YCDHSJ as 预测到货时间,BJSJ as 报检时间,';
hzglbSelect:=hzglbSelect+'BJHGSL as 报检合格数量,BJBHGSL as 报检不合格数量,XQDW as 申报部门,BZR as 申请表编制人,BZRQ as 编制日期,SHR as 申请表审核人,SHRQ as 审核时间,PZR as 申请表批准人,PZRQ as 批准时间,CGFS as 采购方式,HG_FLAG as 合格分承制方,'+'QT as 到货说明,BZ as 备注';
condition:='sqbid like'+''''+edit1.text+'%'+'''';
with hzglquery do
begin
close;
sql.Clear;
sql.Add(hzglbselect);
sql.Add('from dbo.a_cghzglb');
sql.Add('where sqbid like '+''''+edit1.text+'%'+'''');
sql.Text:=sql.Text+'order by 申请表单号 desc,计划员 asc';
select_condition:=sql.Text; //记忆上一次查询的sql语句,准备回主查询窗口时刷新
open;
for I:=0 to datamodule1.hzglquery.Fields.Count-1 do
if visible_flag_array[I]=1 then
datamodule1.hzglquery.Fields[I].Visible:=false;
end;
end;
setupForm1.free;
end;
end;
ybjsl_count;
bjhgsl_count;
bjbhgsl_count;
cgslhs_count;
Record_Count;
TotalProduct_Count;
TotalMoney_Count;
TotalTable_Count('where sqbid like '+''''+wherevalue+'%'+'''');
show;
end;
procedure TcghzbForm.N8Click(Sender: TObject);
var I:integer;
begin
setupForm1:=TsetupForm1.Create(application);
with setupform1 do
begin
label1.Caption:='请输入你需要查询的任务名:';
label2.Caption:='任务名称:';
label3.Visible:=True;
label4.visible:=True;
edit2.visible:=True;
edit3.visible:=True;
checkbox1.Visible:=True;
if ShowModal=mrok then
begin
with Datamodule1 do
begin
hzglbSelect:='select SQBID as 申请表单号,RWMC as 任务名称,YXNX as 有效年限,LSH as 流水号,JHY as 计划员,CPBH as 产品编号,CPMC as 产品名称,xHGG as 型号规格,SLDW as 计量单位,SBRQ as 申请日期,SBSL as 申报数量,KCSL as 库存数量,';
hzglbSelect:=hzglbSelect+'SXSL as 需采购数量,GJJE as 估计金额,sccj as 申请指定厂家,SJCGSCCJ as 实际采购厂家,YBJSL as 已报检数量,CGSLHS as 采购数量核实,BJHGSJ as 报检合格时间,YSBX1 as 用于何任务,SJYQ as 时间要求,YCDHSJ as 预测到货时间,BJSJ as 报检时间,';
hzglbSelect:=hzglbSelect+'BJHGSL as 报检合格数量,BJBHGSL as 报检不合格数量,XQDW as 申报部门,BZR as 申请表编制人,BZRQ as 编制日期,SHR as 申请表审核人,SHRQ as 审核时间,PZR as 申请表批准人,PZRQ as 批准时间,CGFS as 采购方式,HG_FLAG as 合格分承制方,'+'QT as 到货说明,BZ as 备注';
with hzglquery do
begin
close;
sql.Clear;
sql.Add(hzglbselect);
sql.Add('from dbo.a_cghzglb');
if not checkbox1.Checked then
begin
condition:='rwmc like '+''''+edit1.text+'%'+'''';
sql.Add('where rwmc like '+''''+edit1.text+'%'+'''');
end
else
begin
if (edit2.text='') or (edit3.Text='') then
begin
showmessage('请您输入需要查询的表单的有效年限和流水号!');
exit;
end;
condition:='rwmc like '+''''+edit1.text+'%'+''''+' and yxnx like '+''''+edit3.text+'%'+''''+' and lsh like '+''''+edit2.Text+'%'+'''';
sql.Add('where rwmc like '+''''+edit1.text+'%'+''''+' and yxnx like '+''''+edit3.text+'%'+''''+' and lsh like '+''''+edit2.Text+'%'+'''');
end;
sql.Text:=sql.Text+'order by 申请表单号 desc,计划员 asc';
open;
select_condition:=sql.Text; //记忆上一次查询的sql语句,准备回主查询窗口时刷新
for I:=0 to datamodule1.hzglquery.Fields.Count-1 do
if visible_flag_array[I]=1 then
datamodule1.hzglquery.Fields[I].Visible:=false;
end;
end;
TotalTable_Count('where '+condition);
end;
end;
ybjsl_count;
bjhgsl_count;
bjbhgsl_count;
cgslhs_count;
ReCord_Count;
TotalProduct_Count;
TotalMoney_Count;
end;
procedure TcghzbForm.N5Click(Sender: TObject);
var I:integer;
begin
with Datamodule1 do
begin
hzglbSelect:='select SQBID as 申请表单号,RWMC as 任务名称,YXNX as 有效年限,LSH as 流水号,JHY as 计划员,CPBH as 产品编号,CPMC as 产品名称,xHGG as 型号规格,SLDW as 计量单位,SBRQ as 申请日期,SBSL as 申报数量,KCSL as 库存数量,';
hzglbSelect:=hzglbSelect+'SXSL as 需采购数量,GJJE as 估计金额,sccj as 申请指定厂家,SJCGSCCJ as 实际采购厂家,YBJSL as 已报检数量,CGSLHS as 采购数量核实,BJHGSJ as 报检合格时间,YSBX1 as 用于何任务,SJYQ as 时间要求,YCDHSJ as 预测到货时间,BJSJ as 报检时间,';
hzglbSelect:=hzglbSelect+'BJHGSL as 报检合格数量,BJBHGSL as 报检不合格数量,XQDW as 申报部门,BZR as 申请表编制人,BZRQ as 编制日期,SHR as 申请表审核人,SHRQ as 审核时间,PZR as 申请表批准人,PZRQ as 批准时间,CGFS as 采购方式,HG_FLAG as 合格分承制方,'+'QT as 到货说明,BZ as 备注';
condition:='cgfs='+''''+'市场采购'+'''';
with hzglquery do
begin
close;
sql.Clear;
sql.Add(hzglbselect);
sql.Add('from dbo.a_cghzglb');
sql.Add('where cgfs='+''''+'市场采购'+'''');
sql.Text:=sql.Text+'order by 申请表单号 desc,计划员 asc';
select_condition:=sql.Text; //记忆上一次查询的sql语句,准备回主查询窗口时刷新
open;
for I:=0 to datamodule1.hzglquery.Fields.Count-1 do
if visible_flag_array[I]=1 then
datamodule1.hzglquery.Fields[I].Visible:=false;
end;
end;
ybjsl_count;
bjhgsl_count;
bjbhgsl_count;
cgslhs_count;
Record_Count;
TotalProduct_Count;
TotalMoney_Count;
TotalTable_Count('where '+condition);
end;
procedure TcghzbForm.N6Click(Sender: TObject);
var I:integer;
begin
with Datamodule1 do
begin
hzglbSelect:='select SQBID as 申请表单号,RWMC as 任务名称,YXNX as 有效年限,LSH as 流水号,JHY as 计划员,CPBH as 产品编号,CPMC as 产品名称,xHGG as 型号规格,SLDW as 计量单位,SBRQ as 申请日期,SBSL as 申报数量,KCSL as 库存数量,';
hzglbSelect:=hzglbSelect+'SXSL as 需采购数量,GJJE as 估计金额,sccj as 申请指定厂家,SJCGSCCJ as 实际采购厂家,YBJSL as 已报检数量,CGSLHS as 采购数量核实,BJHGSJ as 报检合格时间,YSBX1 as 用于何任务,SJYQ as 时间要求,YCDHSJ as 预测到货时间,BJSJ as 报检时间,';
hzglbSelect:=hzglbSelect+'BJHGSL as 报检合格数量,BJBHGSL as 报检不合格数量,XQDW as 申报部门,BZR as 申请表编制人,BZRQ as 编制日期,SHR as 申请表审核人,SHRQ as 审核时间,PZR as 申请表批准人,PZRQ as 批准时间,CGFS as 采购方式,HG_FLAG as 合格分承制方,'+'QT as 到货说明,BZ as 备注';
condition:='cgfs='+''''+'合同采购'+'''';
with hzglquery do
begin
close;
sql.Clear;
sql.Add(hzglbselect);
sql.Add('from dbo.a_cghzglb');
sql.Add('where cgfs='+''''+'合同采购'+'''');
sql.Text:=sql.Text+'order by 申请表单号 desc,计划员 asc';
select_condition:=sql.Text; //记忆上一次查询的sql语句,准备回主查询窗口时刷新
open;
for I:=0 to datamodule1.hzglquery.Fields.Count-1 do
if visible_flag_array[I]=1 then
datamodule1.hzglquery.Fields[I].Visible:=false;
end;
end;
ybjsl_count;
bjhgsl_count;
bjbhgsl_count;
cgslhs_count;
Record_COunt;
TotalProduct_Count;
TotalMoney_Count;
TotalTable_Count('where '+condition);
end;
procedure TcghzbForm.N9Click(Sender: TObject);
var I:integer;
begin
with Datamodule1 do
begin
hzglbSelect:='select SQBID as 申请表单号,RWMC as 任务名称,YXNX as 有效年限,LSH as 流水号,JHY as 计划员,CPBH as 产品编号,CPMC as 产品名称,xHGG as 型号规格,SLDW as 计量单位,SBRQ as 申请日期,SBSL as 申报数量,KCSL as 库存数量,';
hzglbSelect:=hzglbSelect+'SXSL as 需采购数量,GJJE as 估计金额,sccj as 申请指定厂家,SJCGSCCJ as 实际采购厂家,YBJSL as 已报检数量,CGSLHS as 采购数量核实,BJHGSJ as 报检合格时间,YSBX1 as 用于何任务,SJYQ as 时间要求,YCDHSJ as 预测到货时间,BJSJ as 报检时间,';
hzglbSelect:=hzglbSelect+'BJHGSL as 报检合格数量,BJBHGSL as 报检不合格数量,XQDW as 申报部门,BZR as 申请表编制人,BZRQ as 编制日期,SHR as 申请表审核人,SHRQ as 审核时间,PZR as 申请表批准人,PZRQ as 批准时间,CGFS as 采购方式,HG_FLAG as 合格分承制方,'+'QT as 到货说明,BZ as 备注';
condition:='hg_flag='+''''+'1'+'''';
with hzglquery do
begin
close;
sql.Clear;
sql.Add(hzglbselect);
sql.Add('from dbo.a_cghzglb');
sql.Add('where hg_flag='+''''+'1'+'''');
sql.Text:=sql.Text+'order by 申请表单号 desc,计划员 asc';
select_condition:=sql.Text; //记忆上一次查询的sql语句,准备回主查询窗口时刷新
open;
for I:=0 to datamodule1.hzglquery.Fields.Count-1 do
if visible_flag_array[I]=1 then
datamodule1.hzglquery.Fields[I].Visible:=false;
end;
end;
ybjsl_count;
bjhgsl_count;
bjbhgsl_count;
cgslhs_count;
Record_Count;
TotalProduct_Count;
TotalMoney_Count;
TotalTable_Count('where '+condition);
end;
procedure TcghzbForm.N15Click(Sender: TObject);
var I:integer;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?