📄 buscityjlrepunit.pas
字号:
unit BusCityJLRepUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ExtCtrls, Buttons, DB, ADODB;
type
TBusCityJLRepFrm = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Label1: TLabel;
Panel3: TPanel;
Panel4: TPanel;
Panel5: TPanel;
ListView1: TListView;
Label2: TLabel;
Label3: TLabel;
ComboBox1: TComboBox;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
BitBtn4: TBitBtn;
ADOCommand1: TADOCommand;
ADOCommand2: TADOCommand;
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
procedure initialcolumn(List:TListView);
procedure Insertnum1();
{procedure Insertnum2(); }
procedure FillDatatoTable();
procedure ToZTable();
procedure ClearZero();
public
{ Public declarations }
end;
var
BusCityJLRepFrm: TBusCityJLRepFrm;
implementation
uses PrintProc, BusTradeDataModuleUnit;
{$R *.dfm}
procedure TBusCityJLRepFrm.FormShow(Sender: TObject);
begin
BitBtn2.Enabled:=false;
end;
procedure TBusCityJLRepFrm.BitBtn1Click(Sender: TObject);
var sqlstr,sqlstr1,sqlstr2:string;
i,iRow,iExistFlag:integer;
begin
iExistFlag:=0;
if(combobox1.Text='')then
begin
showmessage('请选择年份!');
BitBtn2.Enabled:=false;
initialcolumn(ListView1);
exit;
end;
sqlstr:='select 指标代码,本年实际 from 公交行业城市交流指标表_z where 城市代码='
+''''+'022'+''''+' and 统计年份='+combobox1.Text;
ADOQuery2.close;
ADOQuery2.SQL.clear;
ADOQuery2.SQL.Add(sqlstr);
ADOQuery2.open;
if(ADOQuery2.recordcount>0)then
begin
if(MessageDlg('数据库中已经存在该年交流表,是否覆盖?',mtConfirmation,[mbYes, mbNo],0) = mrNo)then
begin
BitBtn4Click(nil);
exit;
end else
begin
BusTradeDataModule.ADOConnection1.BeginTrans;
sqlstr1:='delete from 公交行业城市交流指标表_z where 城市代码='+
''''+'022'+''''+' and 统计年份='+Combobox1.Text;
ADOCommand1.CommandText:=sqlstr1;
sqlstr2:='delete from 公交行业城市交流指标表 where 城市代码='+
''''+'022'+''''+' and 统计年份='+Combobox1.Text;
ADOCommand2.Commandtext:=sqlstr2;
ADOCommand1.Execute;
ADOCommand2.Execute;
BusTradeDataModule.ADOConnection1.CommitTrans;
end;
end;
sqlstr1:='select 指标代码,本年实际 from 公交行业城市规模指标表_z where 城市代码='
+''''+'022'+''''+' and 统计年份='+combobox1.text;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sqlstr1);
ADOQuery1.Open;
if(ADOQuery1.RecordCount<=0)then
begin
showmessage('对不起,不存在'+combobox1.Text+'年规模数据,无法生成交流数据!');
BitBtn2.Enabled:=false;
initialcolumn(ListView1);
exit;
end;
sqlstr2:='select 指标代码,全年实际 from 公交行业综合年报_z where 统计年份='+combobox1.Text;
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add(sqlstr2);
ADOQuery2.Open;
if(ADOQuery2.RecordCount<=0)then
begin
showmessage('对不起,不存在'+combobox1.Text+'年综合年报,无法生成交流数据!');
BitBtn2.Enabled:=false;
initialcolumn(ListView1);
exit;
end else
begin
for iRow:=0 to ADOQuery2.recordcount-1 do
begin
if(ADOQuery2.fieldbyname('全年实际').asstring<>'')then
begin
iExistFlag:=1;
break;
end;
ADOQuery2.next;
end;
end;
if(iExistFlag=0)then
begin
showmessage('对不起,不存在'+combobox1.text+'年综合年报,无法生成交流数据!');
BitBtn2.Enabled:=false;
initialcolumn(ListView1);
exit;
end;
iExistFlag:=0;
//添加规模指标值
initialcolumn(ListView1);
BitBtn2.Enabled:=true;
ADOQuery1.First;
for i:=1 to 10 do
begin
if(i>=2)and (i<=6)then
ListView1.Items[i-1].SubItems[2]:=Converter(ADOQuery1.fieldbyname('本年实际').asstring);
if(i>=9)and(i<=10)then
ListView1.Items[i-3].SubItems[2]:=Converter(ADOQuery1.fieldbyname('本年实际').asstring);
ADOQuery1.Next;
end;
//添加综合年报数据
Insertnum1();
{Insertnum2();}
//将没有值的地方清零
ClearZero();
FillDatatoTable();
ToZTable();
end;
procedure TBusCityJLRepFrm.Insertnum1();
var sqlstr2:string;
begin
sqlstr2:='select 指标代码,全年实际 from 公交行业综合年报_z where 统计年份='+combobox1.Text;
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add(sqlstr2);
ADOQuery2.Open;
if(ADOQuery2.locate('指标代码','GZ001',[]))then
ListView1.items[16].subitems[2]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ037',[]))then
ListView1.items[21].subitems[2]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ056',[]))then
ListView1.items[11].subitems[2]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ083',[]))then
ListView1.items[22].subitems[2]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ086',[]))then
ListView1.items[24].subitems[2]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ045',[]))then
ListView1.items[0].subitems[6]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ102',[]))then
ListView1.items[2].subitems[6]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ173',[]))then
ListView1.items[3].subitems[6]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ174',[]))then
ListView1.items[4].subitems[6]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
if(ADOQuery2.locate('指标代码','GZ176',[]))then
ListView1.items[5].subitems[6]:=Converter(ADOQuery2.fieldbyname('全年实际').asstring);
end;
{procedure TBusCityJLRepFrm.Insertnum2();
var numstr,numstr1,numstr2:string;
begin
//添加JG10
numstr1:=ListView1.items[4].subitems[2];
numstr2:=ListView1.items[1].subitems[2];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -