📄 bustradescaleeditunit.pas
字号:
if (DeviceDetect=0) then
begin
exit;
end;
if(PrnInfoFrm.ShowModal<>mrOK)then
begin
exit;
end;
OpenExcelApp;
ADOQPrintYear.Open;
ADOQPrintYear.first;
PrintInit(ExtractFilePath(Application.ExeName),'CityScale');
WriteCell(2,1,'填报单位: '+label3.caption);
WriteCell(2,3,ComboBox2.text + ' 年 ');
WriteCell(29,1,'统计负责人: '+PrnInfoFrm.StatMainPerson);
WriteCell(29,4,'统计人员: '+PrnInfoFrm.StatPerson);
WriteCell(29,6,'填报日期: '+DateToStr(PrnInfoFrm.StatDate));
for i:=0 to 48 do
begin
if(i>=1) and (i<=10)then
begin
iRows:=i+4;
iCols:=4;
WriteCell(iRows,iCols,Converter(ADOQPrintYear.fieldbyname('本年实际').asstring));
end;
if(i>=12) and (i<=23)then
begin
iRows:=i+4;
iCols:=4;
WriteCell(iRows,iCols,Converter(ADOQPrintYear.fieldbyname('本年实际').asstring));
end;
if(i>=24)and(i<=39)then
begin
iRows:=i-20;
iCols:=8;
WriteCell(iRows,iCols,Converter(ADOQPrintYear.fieldbyname('本年实际').asstring));
end;
if(i>=41)and(i<=48)then
begin
iRows:=i-20;
iCols:=8;
WriteCell(iRows,iCols,Converter(ADOQPrintYear.fieldbyname('本年实际').asstring));
end;
ADOQPrintYear.next;
end;
PrintExcelShow;
PrintPreview;
CloseActiveBook;
end;
procedure TBusTradeScaleEditFrm.BitBtn7Click(Sender: TObject);
begin
close;
end;
procedure TBusTradeScaleEditFrm.FillDataToZTable(SrcTable:TADOQuery;DesTable:TADOQuery);
var
i:integer;
begin
DesTable.Close;
DesTable.Open;
for i:=0 to SrcTable.FieldCount-1 do
begin
if(SrcTable.Fields[i].FieldName<>'统计年份') and
(SrcTable.Fields[i].FieldName<>'城市代码') and
(SrcTable.Fields[i].FieldName<>'备注') and
(SrcTable.Fields[i].FieldName<>'统计负责人')and
(SrcTable.Fields[i].FieldName<>'统计人员') and
(SrcTable.Fields[i].FieldName<>'填报日期')
then
begin
if(DesTable.Locate('统计年份;城市代码;指标代码',
VarArrayOf([StrToInt(ComboBox2.Text),
trim(Edit01.text),SrcTable.Fields[i].FieldName]),[]))then
DesTable.Edit else
DesTable.Append;
DesTable.FieldByName('本年实际').Value:=SrcTable.Fields[i].Value;
DesTable.FieldByName('统计年份').AsInteger:=StrToInt(ComboBox2.Text);
DesTable.FieldByName('城市代码').AsString:=trim(Edit01.text);
DesTable.FieldByName('指标代码').AsString:=SrcTable.Fields[i].FieldName;
DesTable.Post;
end;
end;
end;
function TBusTradeScaleEditFrm.CheckBalance():boolean;
var WrongMessage:string;
begin
WrongMessage:='';
if(ADOQuery1.FieldByName(DBEdit2.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit3.DataField).asfloat )then
WrongMessage:=WrongMessage+' TO02>=TO03 ';
if(ADOQuery1.FieldByName(DBEdit5.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit6.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO05>=TO06 ';
if(ADOQuery1.FieldByName(DBEdit6.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit7.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO06>=TO07 ';
if(ADOQuery1.FieldByName(DBEdit10.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit11.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO10>=TO11 ';
if(ADOQuery1.FieldByName(DBEdit13.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit14.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO13>=TO14 ';
if(ADOQuery1.FieldByName(DBEdit15.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit16.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO15>=TO16 ';
if(ADOQuery1.FieldByName(DBEdit17.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit18.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO17>=TO18 ';
if(ADOQuery1.FieldByName(DBEdit19.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit20.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO19>=TO20 ';
if(ADOQuery1.FieldByName(DBEdit23.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit24.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO23>=TO24 ';
if(ADOQuery1.FieldByName(DBEdit26.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit27.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO26>=TO27 ';
if(ADOQuery1.FieldByName(DBEdit28.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit29.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO28>=TO29 ';
if(ADOQuery1.FieldByName(DBEdit30.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit31.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO30>=TO31 ';
if(ADOQuery1.FieldByName(DBEdit32.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit33.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO32>=TO33 ';
if(ADOQuery1.FieldByName(DBEdit34.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit35.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO34>=TO35 ';
if(ADOQuery1.FieldByName(DBEdit36.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit37.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO36>=TO37 ';
if(ADOQuery1.FieldByName(DBEdit38.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit39.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO38>=TO39 ';
if(ADOQuery1.FieldByName(DBEdit40.DataField).AsFloat<ADOQuery1.FieldByName(DBEdit41.DataField).AsFloat)then
WrongMessage:=WrongMessage+' TO40>=TO41 ';
if(WrongMessage<>'')then
begin
showmessage('不满足'+WrongMessage+'指标之间的关系,请进行修改!');
CheckBalance:=true;
end else CheckBalance:=false;
end;
procedure TBusTradeScaleEditFrm.FormKeyPress(Sender: TObject;
var Key: Char);
begin
if(Key=Char(13))then
begin
key:=Char(0);
Selectnext(self.ActiveControl,true,true);
end;
end;
procedure TBusTradeScaleEditFrm.ADOQuery1BeforePost(DataSet: TDataSet);
var i:integer;
begin
for i:=0 to ADOQuery1.FieldCount-1 do
begin
if(trim(ADOQuery1.Fields[i].AsString)='')then
ADOQuery1.Fields[i].AsString:='0';
end;
end;
procedure TBusTradeScaleEditFrm.ADOQuery1AfterInsert(DataSet: TDataSet);
begin
ADOQuery1.FieldByName('统计年份').AsString:=ComboBox2.Text;
ADOQuery1.FieldByName('城市代码').AsString:=Edit01.Text;
end;
function TBusTradeScaleEditFrm.CheckYear:boolean;
var
YearValue:integer;
begin
try
YearValue:=StrToInt(ComboBox2.Text);
except
ShowMessage('年份不是数值!');
CheckYear:=false;
exit;
end;
if((YearValue<1990) or (YearValue>2030))then
begin
ShowMessage('输入年份不对!');
CheckYear:=false;
exit;
end;
CheckYear:=true;
end;
procedure TBusTradeScaleEditFrm.FormShow(Sender: TObject);
begin
BitBtn1.Enabled:=false;
BitBtn2.Enabled:=false;
BitBtn3.Enabled:=false;
BitBtn4.Enabled:=false;
BitBtn5.Enabled:=false;
BitBtn6.Enabled:=false;
Panel8.Enabled:=false;
Panel7.Enabled:=false;
end;
procedure TBusTradeScaleEditFrm.ButtonEnable(curButton:TButton);
begin
if(curButton=nil)then
begin
BitBtn1.Enabled:=True;
BitBtn2.Enabled:=True;
BitBtn3.Enabled:=True;
BitBtn4.Enabled:=false;
BitBtn5.Enabled:=false;
BitBtn7.Enabled:=true;
Panel8.Enabled:=false;
Panel7.Enabled:=false;
DBMemo1.Enabled:=false;
exit;
end;
if((curButton.Name='BitBtn1') or (curButton.Name='BitBtn2'))then
begin
BitBtn1.Enabled:=False;
BitBtn2.Enabled:=False;
BitBtn3.Enabled:=False;
BitBtn6.Enabled:=false;
BitBtn7.Enabled:=False;
BitBtn4.Enabled:=True;
BitBtn5.Enabled:=True;
Panel8.Enabled:=true;
Panel7.Enabled:=true;
DBMemo1.Enabled:=true;
end;
if((curButton.Name='BitBtn4') or (curButton.Name='BitBtn5'))then
begin
BitBtn1.Enabled:=True;
BitBtn2.Enabled:=True;
BitBtn7.Enabled:=True;
BitBtn3.Enabled:=True;
BitBtn4.Enabled:=False;
BitBtn5.Enabled:=False;
BitBtn6.Enabled:=true;
Panel8.Enabled:=false;
Panel7.Enabled:=false;
DBMemo1.Enabled:=false;
end;
IF(curButton.Name='BitBtn3')Then
begin
BitBtn1.Enabled:=true;
BitBtn2.Enabled:=true;
BitBtn4.Enabled:=false;
BitBtn5.Enabled:=false;
Panel8.Enabled:=false;
Panel7.Enabled:=false;
DBMemo1.Enabled:=false;
end;
end;
function TBusTradeScaleEditFrm.IsEmptyRep():boolean;
begin
if(ADOQuery1.RecordCount<=0) and (ADOQPrintYear.RecordCount<=0)then
begin
IsEmptyRep:=true;
exit;
end;
IsEmptyRep:=false;
end;
function TBusTradeScaleEditFrm.AddPrnQuery:boolean;
var sqlstr:string;
begin
if(not CheckYear)then
begin
AddPrnQuery:=false;
exit;
end;
sqlstr:='select * from 公交行业城市规模指标表_z where 统计年份='+ComboBox2.text+
' and 城市代码='+''''+Edit01.text+'''';
ADOQPrintYear.Close;
ADOQPrintYear.SQL.Clear;
ADOQPrintYear.SQL.Add(sqlstr);
try
ADOQPrintYear.Open;
AddPrnQuery:=true;
except
AddPrnQuery:=false;
end;
end;
procedure TBusTradeScaleEditFrm.OpenAllPage();
var sqlstr:string;
begin
sqlstr:='select * from 公交行业城市规模指标表 where 城市代码='+''''+Edit01.Text+''''+
' and 统计年份='+combobox2.text;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sqlstr);
ADOQuery1.Open;
end;
procedure TBusTradeScaleEditFrm.FormCreate(Sender: TObject);
begin
if(edit01.Text='')or(combobox2.Text='')then
exit;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -