⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bustradecszhyearrepunit.~pas

📁 公交行业的管理系统
💻 ~PAS
📖 第 1 页 / 共 3 页
字号:
        //添加GZ137指标值
        if(ADOQuery3.locate('指标代码','TO43',[]))then
                numstr1:=ADOQuery3.fieldbyname('本年实际').asfloat;

        if(numstr1=0)then
        begin
                ListView7.items[3].subitems[2]:='0';
        end else
                ListView7.items[3].subitems[2]:=Converter(floattostr(numstr1));

        //添加GZ138指标值
        if(ADOQuery3.locate('指标代码','TO44',[]))then
                numstr1:=ADOQuery3.fieldbyname('本年实际').asfloat;

        if(numstr1=0)then
        begin
                ListView7.items[4].subitems[2]:='0';
        end else
                ListView7.items[4].subitems[2]:=converter(floattostr(numstr1));

        //添加GZ139指标值
        if(ADOQuery3.locate('指标代码','TO45',[]))then
                numstr1:=ADOQuery3.fieldbyname('本年实际').asfloat;

        if(numstr1=0)then
        begin
                ListView7.items[5].subitems[2]:='0';
        end else
                ListView7.items[5].subitems[2]:=converter(floattostr(numstr1));
        //添加GZ134指标值

        if(ADOQuery3.locate('指标代码','TO48',[]))then
                numstr1:=ADOQuery3.fieldbyname('本年实际').asfloat;

        if(numstr1=0)then
        begin
                ListView7.items[0].subitems[2]:='0';
        end else
                ListView7.items[0].subitems[2]:=converter(floattostr(numstr1));

        //添加GZ135指标值
        if(ADOQuery3.locate('指标代码','TO49',[]))then
                numstr1:=ADOQuery3.fieldbyname('本年实际').asfloat;

        if(numstr1=0)then
        begin
                ListView7.items[1].subitems[2]:='0';
        end else
                ListView7.items[1].subitems[2]:=converter(floattostr(numstr1));

        //添加GZ136指标值
        if(ADOQuery3.locate('指标代码','TO50',[]))then
                numstr1:=ADOQuery3.fieldbyname('本年实际').asfloat;

        if(numstr1=0)then
        begin
                ListView7.items[2].subitems[2]:='0';
        end else
                ListView7.items[2].subitems[2]:=converter(floattostr(numstr1));

end;

procedure TBusTradeCSZHYearRepFrm.BitBtn3Click(Sender: TObject);
begin
        BusTradeCSZHYearRepFrm.close;
end;


procedure TBusTradeCSZHYearRepFrm.FillDatatoZTable();
var i:integer;
begin
        ADOQuery2.close;
        ADOQuery2.sql.clear;
        ADOQuery2.sql.add('select 指标代码,测算值 from 公交行业综合年报_z where 统计年份='+combobox1.text );
        ADOQuery2.open;
                                                            
        ADOQuery1.close;
        ADOQuery1.SQL.Clear;
        ADOQuery1.SQL.Add('select * from 公交行业综合年报表 where 统计年份='+ComboBox1.Text);
        ADOQuery1.Open;
        
        if(ADOQuery1.RecordCount<=0)then
        ADOQuery1.Append else
        ADOQuery1.Edit;
        ADOQuery1.FieldByName('统计年份').AsInteger:=StrToInt(ComboBox1.Text);
        ADOQuery1.Fieldbyname('生成方式').asstring:='录入';
        ADOQuery2.First;

        while not ADOQuery2.Eof do
        begin
                for i:=0 to 100 do
                begin
                        if((ADOQuery1.Fields[i].FieldName<>'统计年份') and
                           (ADOQuery1.Fields[i].FieldName<>'城市代码')and
                           (ADOQuery1.fields[i].fieldname<>'生成方式')and
                           (ADOQuery1.fields[i].fieldname<>'备注'))then
                        begin
                                if(ADOQuery2.FieldByName('指标代码').AsString=ADOQuery1.Fields[i].FieldName)then
                                begin
                                        if(ADOQuery2.FieldByName('测算值').AsString<>'')then
                                        ADOQuery1.Fields[i].Value:=ADOQuery2.FieldByName('测算值').Value else
                                        ADOQuery1.Fields[i].Value:=0;
                                end;
                        end;
                        ADOQuery2.Next;
                end;

                for i:=101 to ADOQuery1.FieldCount-1 do
                begin
                        if((ADOQuery1.Fields[i].FieldName<>'统计年份') and
                           (ADOQuery1.Fields[i].FieldName<>'城市代码')and
                           (ADOQuery1.fields[i].fieldname<>'生成方式')and
                           (ADOQuery1.fields[i].fieldname<>'备注'))then
                        begin
                                if(ADOQuery2.FieldByName('指标代码').AsString=ADOQuery1.Fields[i].FieldName)then
                                begin
                                        if(ADOQuery2.FieldByName('测算值').AsString<>'')then
                                        ADOQuery1.Fields[i].Value:=ADOQuery2.FieldByName('测算值').Value else
                                        ADOQuery1.Fields[i].Value:=0;
                                end;
                        end;
                        ADOQuery2.Next;
                end;
        end;
        ADOQuery1.post;
end;

procedure TBusTradeCSZHYearRepFrm.ComboBox1Change(Sender: TObject);
begin
                initialcolumn(ListView1);
                initialcolumn(ListView2);
                initialcolumn(ListView3);
                initialcolumn(ListView4);
                initialcolumn(ListView5);
                initialcolumn(ListView6);
                initialcolumn(ListView7);
                initialcolumn(ListView8);
end;

procedure TBusTradeCSZHYearRepFrm.BitBtn4Click(Sender: TObject);
var iRow,iCol,iRecNum,i:integer;
begin
        if (DeviceDetect=0) then
        begin
                exit;
        end;

        if(PrnInfoFrm.ShowModal<>mrOK)then
        begin
                exit;
        end;

        PrintInit(ExtractFilePath(Application.ExeName),'BusTradeCSZHSHCHYearTab');
        iRow := 1 ;
        iRecNum := 1 ;

        iCol := 4;
        for iRecNum := 0 to 111 do
        begin
                if (iRecNum>=0) and (iRecNum<=21) then
                begin
                        iRow:=iRecNum+7;
                        OutputDataToE(ListView1,iRow,iRecNum,iCol);
                        OutputDataToE(ListView2,iRow,iRecNum,iCol+4);
                end
                else if (iRecNum>=22) and (iRecNum<=43) then
                begin
                        iRow:=iRecNum+14;
                        OutputDataToE(ListView3,iRow,iRecNum-22,iCol);
                        OutputDataToE(ListView4,iRow,iRecNum-22,iCol+4)
                end
                else if (iRecNum>=44) and (iRecNum<=65) then
                begin
                        iRow:=iRecNum+20;
                        OutputDataToE(ListView5,iRow,iRecNum-44,iCol);
                end
                else if (iRecNum>=66) and (iRecNum<=88) then
                begin
                        iRow:=iRecNum-2;
                        OutputDataToE(ListView6,iRow,iRecNum-66,iCol+4);
                end
                else if(iRecNum>=89)and (iRecNum<=111)then
                begin
                        iRow:=iRecNum+4;
                        OutputDataToE(ListView7,iRow,iRecNum-89,iCol);
                        OutputDataToE(ListView8,iRow,iRecNum-89,iCol+4);
                end;

        end;

        for i:=0 to 3 do
        begin
                WriteCell(3+i*29,1,'汇总单位:'+label3.Caption);
                WriteCell(2+i*29,4,combobox1.text+'年');
                WriteCell(29+i*29,1,'统计负责人:' + PrnInfoFrm.StatMainPerson);
                WriteCell(29+i*29,4,'统计人员:' + PrnInfoFrm.StatPerson);
                WriteCell(29+i*29,6,'填报日期:' + DateToStr(PrnInfoFrm.StatDate));
        end;
        PrintExcelShow;
        PrintPreview;
        CloseActiveBook;

end;

procedure TBusTradeCSZHYearRepFrm.OutputDataToE(iSouList:TListView;iCellRows:Integer;iRowsCou:Integer;iCellCols:Integer);
var
        //iRowNum:Integer;
        iColNum:Integer;
begin
        WriteCell(iCellRows,iCellCols,iSouList.Items[iRowsCou].SubItems[2]);
end;


procedure TBusTradeCSZHYearRepFrm.FillMonDataToList();
var i,j:integer;
sqlstr2:string;
begin
        sqlstr2:='select 指标代码,测算值 from 公交行业统计月报_z where 统计年份='
                 +combobox1.text+' and 统计月份=12'+' and 城市代码='+''''+'022'+'''';
        ADOQuery2.Close;
        ADOQuery2.SQL.Clear;
        ADOQuery2.SQL.Add(sqlstr2);
        ADOQuery2.open;
        for i:=1 to 25 do
        begin
                if(i>=3)and (i<=5)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView1.Items[i-1].SubItems[2]:='0';
                        end else
                                ListView1.Items[i-1].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                if(i>=7)and (i<=9)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView1.Items[i+8].SubItems[2]:='0';
                        end else
                                ListView1.Items[i+8].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                if(i>=10)and (i<=18)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView3.Items[i+2].SubItems[2]:='0';
                        end else
                                ListView3.Items[i+2].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                if(i>=19)and (i<=25)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView4.Items[i-11].SubItems[2]:='0';
                        end else
                                ListView4.Items[i-11].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;
                ADOQuery2.next;

        end;

        sqlstr2:='select 指标代码, sum(测算值) as 测算值,max(本月实际) from 公交行业统计月报_z '
                  +' where 统计年份='+ combobox1.Text +' and 城市代码='+''''+'022'+''''+' group by 指标代码';
        ADOQuery2.Close;
        ADOQuery2.SQL.Clear;
        ADOQuery2.SQL.Add(sqlstr2);
        ADOQuery2.Open;
        //从行业月报中添加企业综合年报数据
        for j:=1 to ADOQuery2.recordcount do
        begin
                if(j>=26)and (j<=28)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView4.Items[j-7].SubItems[2]:='0';
                        end else
                                ListView4.Items[j-7].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').AsString);

                end;

                //添加第五页数据
                if(j>=29)and (j<=40)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView5.Items[j-29].SubItems[2]:='0';
                        end else
                                ListView5.Items[j-29].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                if(j>=41)and (j<=49)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView5.Items[j-28].SubItems[2]:='0';
                        end else
                                ListView5.Items[j-28].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;


                //添加第六页数据
                if(j>=50)and (j<=62)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView6.Items[j-50].SubItems[2]:='0';
                        end else
                                ListView6.Items[j-50].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                //添加第七页数据
                if(j>=64)and (j<=65)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView7.Items[j-57].SubItems[2]:='0';
                        end else
                                ListView7.Items[j-57].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                if (j>=67)and (j<=68)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView7.Items[j-57].SubItems[2]:='0';
                        end else
                                ListView7.Items[j-57].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                if (j>=70)and (j<=71)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView7.Items[j-57].SubItems[2]:='0';
                        end else
                                ListView7.Items[j-57].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').AsString);
                end;

                if(j>=73)and (j<=75)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView7.Items[j-57].SubItems[2]:='0';
                        end else
                                ListView7.Items[j-57].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                if(j>=77)and(j<=79)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView7.Items[j-57].SubItems[2]:='0';
                        end else
                                ListView7.Items[j-57].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                //添加第八页数据
                if(j>=80)and (j<=81)then
                begin
                        if(ADOQuery2.Fieldbyname('测算值').asstring='')then
                        begin
                                ListView8.Items[j-80].SubItems[2]:='0';
                        end else
                                ListView8.Items[j-80].SubItems[2]:=Converter(ADOQuery2.Fieldbyname('测算值').asstring);
                end;

                ADOQuery2.Next;
        end;

end;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -