📄 returnlidfindinfo.~pas
字号:
unit returnLidFindInfo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ADODB, DB, StdCtrls, ComCtrls, Grids, PicButton, ExtCtrls;
type
TreturnLidFind = class(TForm)
Image1: TImage;
Label1: TLabel;
Image2: TImage;
Bevel1: TBevel;
Bevel2: TBevel;
PicButton4: TPicButton;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
PicButton5: TPicButton;
DBgrid: TStringGrid;
BeginDate: TDateTimePicker;
EndDate: TDateTimePicker;
ComboBox1: TComboBox;
Query1: TADOQuery;
ADOTable1: TADOTable;
Label5: TLabel;
ComboBox2: TComboBox;
procedure Image2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure PicButton4Click(Sender: TObject);
procedure DBgridDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
procedure PicButton5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
returnLidFind: TreturnLidFind;
implementation
{$R *.dfm}
uses common,PrinterRpt;
procedure TreturnLidFind.Image2Click(Sender: TObject);
begin
close;
end;
procedure TreturnLidFind.FormCreate(Sender: TObject);
begin
ShowPloyForm(image1.Picture.Bitmap,handle);
combobox1.Items.Add('辽阳');
combobox1.Items.Add('沈阳');
combobox1.Items.Add('本溪');
combobox1.Items.Add('大连');
combobox1.Items.Add('鞍山');
combobox1.Items.Add('抚顺');
combobox1.Items.Add('丹东');
combobox1.Items.Add('北京');
combobox1.text:='辽阳';
////设置Dbgrid列标题////
Dbgrid.Cells[0,0]:='编号';
Dbgrid.ColWidths[0]:=50;
dbgrid.Cells[1,0]:='返盖日期';
dbgrid.Cells[2,0]:='二级商名称';
Dbgrid.ColWidths[1]:=100;
Dbgrid.Cells[3,0]:='所属区域';
Dbgrid.Cells[4,0]:='返盖数量';
dbgrid.ColWidths[2]:=80;
dbgrid.Cells[5,0]:='单价';
dbgrid.Cells[6,0]:='返盖金额';
dbgrid.Cells[7,0]:='所属市';
FillValueToControl(query1,'select * from Trader','TraderName',combobox2);
end;
procedure TreturnLidFind.PicButton4Click(Sender: TObject);
var
strSql:string;
strdelete:string;
strInsert:string;
i:integer;
query2:TADOQuery;
tmpTotal:Array[0..1] of Double;
begin
if combobox2.text<>'' then
begin
strSql:='SELECT * FROM returnLid WHERE returnDate>="'+DateToStr(beginDate.Date)+'" and returnDate<="'+DateToStr(Enddate.Date)+'" and city="'+trim(combobox1.text)+'" and TraderName="'+trim(combobox2.Text)+'"';
end
else
begin
strSql:='SELECT * FROM returnLid WHERE returnDate>="'+DateToStr(beginDate.Date)+'" and returnDate<="'+DateToStr(Enddate.Date)+'" and city="'+trim(combobox1.text)+'"';
end;
FillValueToListview(query1,strSql,0,DBgrid);
////计算汇总//////
tmpTotal[0]:=0;
tmpTotal[1]:=0;
for i:=1 to DBgrid.RowCount-2 do
begin
tmpTotal[0]:=tmpTotal[0]+strToFloat(Dbgrid.cells[4,i]);
tmpTotal[1]:=tmpTotal[1]+strToFloat(Dbgrid.cells[6,i]);
end;
DBgrid.Cells[0,i]:='合计:';
DBgrid.Cells[4,i]:=FloatTostr(tmpTotal[0]);
DBgrid.Cells[6,i]:=FloatTostr(tmpTotal[1]);
///添加报表数据////////
strdelete:='DELETE * FROM ReportReturnLid';
RunNonSql(query1,strDelete);
for i:=1 to DBgrid.RowCount-1 do
begin
strInsert:='INSERT INTO ReportReturnLId(returnCode,returndate,traderName,areaName,returnNUm,price,returnSum,city) VALUES("'+DBgrid.Cells[0,i]+'","'+DBgrid.Cells[1,i]+'","'+DBgrid.Cells[2,i]+'","'+DBgrid.Cells[3,i]+'","'+DBgrid.Cells[4,i]+'","'+DBgrid.Cells[5,i]+'","'+DBgrid.Cells[6,i]+'","'+DBgrid.Cells[7,i]+'")';
RunNonSql(query1,strInsert);
end;
end;
procedure TreturnLidFind.DBgridDrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState);
begin
if (Arow=(Dbgrid.rowcount-1)) then
begin
DBgrid.Canvas.Brush.color:=rgb(255,255,206);
dbgrid.Canvas.Brush.Style:=bssolid;
dbgrid.Canvas.Font.Size:=11;
dbgrid.canvas.Font.Style:=[fsbold];
//dbgrid.Canvas.font.Color:=rgb(255,255,255);
dbgrid.Canvas.FillRect(Rect);
DBgrid.Canvas.TextOut(rect.left,rect.Top,dbgrid.Cells[Acol,Arow]);
end;
end;
procedure TreturnLidFind.PicButton5Click(Sender: TObject);
var
TitleName:TStringList;
ColWidth,ColumnWidth:Array of Integer;
i:integer;
LineWidth:integer;
begin
TitleName:=TStringList.Create;
//ColWidth:=TStringList.Create;
TitleName.Add('编号');
TitleName.Add('返盖日期');
TitleName.Add('二级商名称');
TitleName.Add('区域名称');
TitleName.Add('返盖数量');
TitleName.Add('单价');
TitleName.Add('返盖金额');
TitleName.Add('所属市');
//TitleName.Add('搭赠金额');
SetReportTitle('返盖查询情况报表');
SetTableName('ReportReturnLid'); ////设置报表的表名
SetColumnTitle(TitleName);////设置报表列的标题
/////设置动态数组的长度////
setlength(colwidth,GetFieldCount(AdoTable1));
setlength(columnwidth,GetFieldCount(AdoTable1)+1);
for i:=0 to GetFieldCount(AdoTable1)-1 do
begin
Colwidth[i]:=10;
//ColumnWidth[i]:=60;
end;
////设置输出内容的列宽度
ColumnWidth[1]:=40;
ColumnWidth[2]:=90;
ColumnWidth[3]:=80;
ColumnWidth[4]:=80;
ColumnWidth[5]:=70;
ColumnWidth[6]:=80;
ColumnWidth[7]:=80;
ColumnWidth[8]:=80;
//ColumnWidth[14]:=80;
////计算表格水平线的宽度
lineWidth:=0;
for i:=1 to GetFieldCount(AdoTable1) do
begin
LineWidth:=LineWidth+ColumnWidth[i];
end;
SetHorizontalLineWidth(LineWidth); ///设置表格水平线的宽度
SetIntegerCol(false);
CreateList(sender,AdoTable1,picbutton5,colwidth,columnWidth);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -