📄 partsell.pas
字号:
self.Query1.Active :=true;
end;
procedure Tform_partsell.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
Perform(WM_NEXTDLGCTL, 0, 0);
end;
end;
procedure Tform_partsell.DBEdit1Enter(Sender: TObject);
begin
DBEdit1.Text :=unit_wxp.SellStyle ;
end;
procedure Tform_partsell.DBEdit3Enter(Sender: TObject);
begin
dbedit3.Text :=datetostr(date) ;
end;
procedure Tform_partsell.EditDBEdit12Enter(Sender: TObject);
begin
editdbedit12.Text :=unit_wxp.myOffice ;
end;
procedure Tform_partsell.Query1AfterOpen(DataSet: TDataSet);
var
i:integer;
tempName:string;
begin
if NotFirst=false then
begin
StringGrid1.Cells [0,1]:='合计';
StringGrid1.Cells [0,0]:='统计数据';
j:=0;
for i:=0 to self.Query1 .FieldList.Count-1 do
begin
//list_fields.Items.Add (TransADO.Fields[i].FieldName );
//将每个字段的字段类型放在数组中
unit_wxp.FieldType[i]:= self.Query1.Fields[i].DataType;
tempName:= self.Query1 .Fields[i].FieldName;
if (tempName<>'已付款') and (tempName<>'单价') and (tempName<>'序号') then
begin
if (unit_wxp.GetFieldType(i)='number') or (unit_wxp.GetFieldType(i)='money') then
begin
j:=j+1;
StringGrid1.Cells [j,0]:= tempName ;
stringgrid1.ColCount := stringgrid1.ColCount +1;
myIndex[j]:=i;
end;
end;
end;
NotFirst:=true;
end;
if Query1.Recordset.eof then
begin
btn_delete.Enabled :=false;
btn_edit.Enabled :=false;
end;
label4.Caption :=inttostr(query1.Recordset.RecordCount) ;
while not Query1.Eof do
begin
for i:=1 to j do
begin
myValue[i]:=myValue[i]+Query1.Fields.Fields[myIndex[i]].AsFloat ;
end;
Query1.Next ;
end;
for i:=1 to j do
begin
stringgrid1.Cells[i,1]:=floattostr(myValue[i]);
myValue[i]:=0;
end;
end;
procedure Tform_partsell.EditDBEdit6Exit(Sender: TObject);
begin
if (EditDBEdit5.Text<>'') and (EditDBEdit6.Text<>'') then
EditDBEdit7.Text :=floattostr(strtofloat(EditDBEdit5.Text )*strtofloat(EditDBEdit6.Text ));
end;
procedure Tform_partsell.EditDBEdit5Exit(Sender: TObject);
begin
if (EditDBEdit5.Text<>'') and (EditDBEdit6.Text<>'') then
EditDBEdit7.Text :=floattostr(strtofloat(EditDBEdit5.Text )*strtofloat(EditDBEdit6.Text ));
end;
procedure Tform_partsell.FormShow(Sender: TObject);
begin
//if unit_wxp.sellstyle:='销售' then
//self.Query1.Active ;
NotFirst:=false;
//if Query1.Recordset.eof then
// btn_delete.Enabled :=false;
end;
procedure Tform_partsell.btn_filterrecordClick(Sender: TObject);
begin
if unit_wxp.sellstyle ='销售' then
begin
Application.CreateForm(TQReport1, QReport1);
QReport1.ADOQuery1 .Active :=false;
QReport1.ADOQuery1.SQL.Clear ;
QReport1.ADOQuery1.SQL.Add(unit_wxp.FinalSql );
QReport1.ADOQuery1.Active :=true;
QReport1.QRLabel1.Caption:=unit_wxp.myOffice ;
QReport1.Preview ;
QReport1.Free ;
end
else if unit_wxp.sellstyle='三包' then
begin
Application.CreateForm(TQReport_sell2, QReport_sell2);
QReport_sell2.ADOQuery1 .Active :=false;
QReport_sell2.ADOQuery1.SQL.Clear ;
QReport_sell2.ADOQuery1.SQL.Add(unit_wxp.FinalSql );
QReport_sell2.ADOQuery1.Active :=true;
QReport_sell2.QRLabel1.Caption:=unit_wxp.myOffice ;
QReport_sell2.Preview ;
QReport_sell2.Free ;
end
else
begin
Application.CreateForm(TQReport_sell3, QReport_sell3);
QReport_sell3.ADOQuery1 .Active :=false;
QReport_sell3.ADOQuery1.SQL.Clear ;
QReport_sell3.ADOQuery1.SQL.Add(unit_wxp.FinalSql );
QReport_sell3.ADOQuery1.Active :=true;
QReport_sell3.QRLabel1.Caption:=unit_wxp.myOffice ;
QReport_sell3.Preview ;
QReport_sell3.Free ;
end;
end;
procedure Tform_partsell.btn_deleteClick(Sender: TObject);
begin
if application.MessageBox(pchar('确信要删除这条记录嘛?'),
pchar('注意'),MB_OKCANCEL)=IDOK then
self.Query1.Delete ;
label4.Caption :=inttostr(query1.Recordset.RecordCount) ;
if self.Query1.Recordset.RecordCount =0 then
begin
btn_delete.Enabled :=false;
btn_edit.Enabled :=false;
end;
end;
procedure Tform_partsell.AddPartNum();
begin
dm_wxp.ADOQuery1.Close ;
dm_wxp.ADOQuery1.SQL.Clear ;
dm_wxp.ADOQuery1.SQL.Add('select 编号,名称 from pub_z_part' );
dm_wxp.ADOQuery1.Active :=true ;
while not dm_wxp.ADOQuery1.Eof do
begin
DBComboBox2.Items.Add(dm_wxp.ADOQuery1.Fields.Fields[0].asstring) ;
EditDBEdit3.Items.Add(dm_wxp.ADOQuery1.Fields.Fields[1].asstring) ;
dm_wxp.ADOQuery1.Next ;
end;
dm_wxp.ADOQuery1.Active :=false ;
end;
procedure Tform_partsell.FormCreate(Sender: TObject);
begin
AddPartNum
end;
procedure Tform_partsell.DBComboBox2Exit(Sender: TObject);
begin
if Dbcombobox2.Text <>'' then
begin
dm_wxp.ADOQuery1.Active :=false;
dm_wxp.ADOQuery1.SQL.Clear ;
//showmessage('select 名称,机型,型号 from pub_z_part where 编号='''
//+self.EditDBEdit2.Text +'''');
dm_wxp.ADOQuery1.SQL.Add('select 名称,机型,型号,单位 from pub_z_part where 编号='''
+trim(self.dbcombobox2.Text) +'''');
dm_wxp.ADOQuery1.Active :=true;
//showmessage(inttostr(dm_wxp.ADOQuery1.RecordCount ));
//dm_wxp.ADOQuery1.First ;
if dm_wxp.ADOQuery1.eof then
begin
showmessage('该零件不存在');
end;
end;
end;
procedure Tform_partsell.EditDBEdit3Exit(Sender: TObject);
begin
if EditDBEdit3.text<>'' then
begin
dm_wxp.ADOQuery1.Active :=false;
dm_wxp.ADOQuery1.SQL.Clear ;
//showmessage('select 名称,机型,型号 from pub_z_part where 编号='''
//+self.EditDBEdit2.Text +'''');
dm_wxp.ADOQuery1.SQL.Add('select 编号,机型,型号,单位 from pub_z_part where 名称='''
+trim(self.EditDBEdit3.Text) +'''');
dm_wxp.ADOQuery1.Active :=true;
//showmessage(inttostr(dm_wxp.ADOQuery1.RecordCount ));
//dm_wxp.ADOQuery1.First ;
if dm_wxp.ADOQuery1.eof then
begin
showmessage('该零件不存在');
end;
end;
end;
procedure Tform_partsell.FormDestroy(Sender: TObject);
begin
Form_partsell:=nil;
end;
procedure Tform_partsell.DBComboBox2Click(Sender: TObject);
begin
dm_wxp.ADOQuery1.Active :=false;
dm_wxp.ADOQuery1.SQL.Clear ;
//showmessage('select 名称,机型,型号 from pub_z_part where 编号='''
//+self.EditDBEdit2.Text +'''');
dm_wxp.ADOQuery1.SQL.Add('select 名称,机型,型号,单位 from pub_z_part where 编号='''
+trim(self.dbcombobox2.Text) +'''');
dm_wxp.ADOQuery1.Active :=true;
//showmessage(inttostr(dm_wxp.ADOQuery1.RecordCount ));
//dm_wxp.ADOQuery1.First ;
if not dm_wxp.ADOQuery1.eof then
begin
//self.EditDBEdit3.Text :=dm_wxp.ADOQuery1.Fields.Fields[0].AsString ;
self.Query1.FieldValues['名称']:= dm_wxp.ADOQuery1.Fields.Fields[0].AsString ;
self.DBEdit2.Text :=dm_wxp.ADOQuery1.Fields.Fields[1].AsString ;
self.EditDBEdit4.Text :=dm_wxp.ADOQuery1.Fields.Fields[2].AsString ;
self.DBEdit4.Text :=dm_wxp.ADOQuery1.Fields.Fields[3].AsString ;
end;
end;
procedure Tform_partsell.EditDBEdit3Click(Sender: TObject);
begin
dm_wxp.ADOQuery1.Active :=false;
dm_wxp.ADOQuery1.SQL.Clear ;
//showmessage('select 名称,机型,型号 from pub_z_part where 编号='''
//+self.EditDBEdit2.Text +'''');
dm_wxp.ADOQuery1.SQL.Add('select 编号,机型,型号,单位 from pub_z_part where 名称='''
+trim(self.EditDBEdit3.Text) +'''');
dm_wxp.ADOQuery1.Active :=true;
//showmessage(inttostr(dm_wxp.ADOQuery1.RecordCount ));
//dm_wxp.ADOQuery1.First ;
if not dm_wxp.ADOQuery1.eof then
begin
//self.EditDBEdit3.Text :=dm_wxp.ADOQuery1.Fields.Fields[0].AsString ;
self.Query1.FieldValues['编号']:= dm_wxp.ADOQuery1.Fields.Fields[0].AsString ;
self.DBEdit2.Text :=dm_wxp.ADOQuery1.Fields.Fields[1].AsString ;
self.EditDBEdit4.Text :=dm_wxp.ADOQuery1.Fields.Fields[2].AsString ;
self.DBEdit4.Text :=dm_wxp.ADOQuery1.Fields.Fields[3].AsString ;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -