tradeoutputunit.~pas

来自「公交行业的管理系统」· ~PAS 代码 · 共 1,570 行 · 第 1/5 页

~PAS
1,570
字号

procedure TTradeOutputFrm.FormShow(Sender: TObject);
begin
//        BusTradeDataModule.ADOConnection1.BeginTrans;
end;

procedure TTradeOutputFrm.BitBtn4Click(Sender: TObject);
begin
        judge:=true;
        {if(not CheckFileSuc) or (Edit1.Text='')then
        begin
                showmessage('请选择导出文件!');
                exit;
        end;}
        if ComboBox7.Text='' then
        begin
                showmessage('对不起!"起始年份"不能为空!请重新选择条件!');
                exit;
        end;
        if ComboBox8.Text='' then
        begin
                showmessage('对不起!"终止年份"不能为空!请重新选择条件!');
                exit;
        end;
        if (Length(ComboBox7.Text)<>4) or (Length(ComboBox8.Text)<>4) then
        begin
                showmessage('对不起!您选择的年份非法!请重新选择!');
                exit;
        end;
        try
                temp:=StrToInt(ComboBox7.Text);
        except
                showmessage('起始年份非法!请重新选择!');
                exit;
        end;
        try
                temp:=StrToInt(ComboBox8.Text);
        except
                showmessage('终止年份非法!请重新选择!');
                exit;
        end;
        if (StrToInt(ComboBox7.Text)<1900) or (StrToInt(ComboBox7.Text)>3000) then
        begin
                showmessage('对不起!您选择的"起始年份"非法!请重新选择!');
                exit;
        end;
        if (StrToInt(ComboBox8.Text)<1900) or (StrToInt(ComboBox8.Text)>3000) then
        begin
                showmessage('对不起!您选择的"终止年份"非法!请重新选择!');
                exit;
        end;
        if StrToInt(ComboBox7.Text)>StrToInt(ComboBox8.Text) then
        begin
                showmessage('对不起!"起始年份"不能大于"终止年份"!请重新选择条件!');
                exit;
        end;
        try
          Screen.Cursor:=crHourGlass;
          TableToTableEpr('name.data','公用事业单位基本情况表');
          if(judge=false)then StrToInt('fs');
          TradeTableToTableYear('mainservice.data','主要业务活动表');
          if judge=false then exit;

          showmessage('公用事业单位基本情况表导出成功!');
          RichEdit1.Lines.Add('公用事业单位基本情况表导出成功');
        except
          showmessage('数据导出失败!');
          RichEdit1.Lines.Add('公用事业单位基本情况表导出失败');
        end;
        Screen.Cursor:=crDefault;
end;

procedure TTradeOutputFrm.BitBtn1Click(Sender: TObject);
begin
        TabSheet1.TabVisible:=True;
        TabSheet2.TabVisible:=False;
        TabSheet3.TabVisible:=False;
        TabSheet4.TabVisible:=False;
        TabSheet5.TabVisible:=False;
        TabSheet6.TabVisible:=False;
        TabSheet7.TabVisible:=False;
        TabSheet8.TabVisible:=False;
        TabSheet9.TabVisible:=True;
        PageControl1.ActivePage:=TabSheet1;
end;

procedure TTradeOutputFrm.BitBtn2Click(Sender: TObject);
begin
        TabSheet1.TabVisible:=False;
        TabSheet2.TabVisible:=True;
        TabSheet3.TabVisible:=False;
        TabSheet4.TabVisible:=False;
        TabSheet5.TabVisible:=False;
        TabSheet6.TabVisible:=False;
        TabSheet7.TabVisible:=False;
        TabSheet8.TabVisible:=False;
        TabSheet9.TabVisible:=True;
        PageControl1.ActivePage:=TabSheet2;
end;

procedure TTradeOutputFrm.BitBtn3Click(Sender: TObject);
begin
        TabSheet1.TabVisible:=False;
        TabSheet2.TabVisible:=False;
        TabSheet3.TabVisible:=False;
        TabSheet4.TabVisible:=True;
        TabSheet5.TabVisible:=False;
        TabSheet6.TabVisible:=False;
        TabSheet7.TabVisible:=False;
        TabSheet8.TabVisible:=False;
        TabSheet9.TabVisible:=True;
        PageControl1.ActivePage:=TabSheet4;
end;

procedure TTradeOutputFrm.BitBtn5Click(Sender: TObject);
begin
        if(MessageBox(self.Handle,' 是否存盘退出?','警告',MB_OKCANCEL)=IDOK)then
        begin
                BusTradeDataModule.ADOConnection1.CommitTrans;
                TradeOutputFrm.Close;
        end;
end;

procedure TTradeOutputFrm.BitBtn6Click(Sender: TObject);
var sqlstr:string;
begin
        if ComboBox7.Text='' then
        begin
                showmessage('对不起!"起始年份"不能为空!请重新选择条件!');
                exit;
        end;
        if ComboBox8.Text='' then
        begin
                showmessage('对不起!"终止年份"不能为空!请重新选择条件!');
                exit;
        end;
        if (Length(ComboBox7.Text)<>4) or (Length(ComboBox8.Text)<>4) then
        begin
                showmessage('对不起!您选择的年份非法!请重新选择!');
                exit;
        end;
        try
                temp:=StrToInt(ComboBox7.Text);
        except
                showmessage('起始年份非法!请重新选择!');
                exit;
        end;
        try
                temp:=StrToInt(ComboBox8.Text);
        except
                showmessage('终止年份非法!请重新选择!');
                exit;
        end;
        if (StrToInt(ComboBox7.Text)<1900) or (StrToInt(ComboBox7.Text)>3000) then
        begin
                showmessage('对不起!您选择的"起始年份"非法!请重新选择!');
                exit;
        end;
        if (StrToInt(ComboBox8.Text)<1900) or (StrToInt(ComboBox8.Text)>3000) then
        begin
                showmessage('对不起!您选择的"终止年份"非法!请重新选择!');
                exit;
        end;
        if StrToInt(ComboBox7.Text)>StrToInt(ComboBox8.Text) then
        begin
                showmessage('对不起!"起始年份"不能大于"终止年份"!请重新选择条件!');
                exit;
        end;
        Application.CreateForm(TLookImportData5, LookImportData5);

        LookImportData5.Label1.Caption:='公用事业单位基本情况表';
        LookImportData5.Edit1.Text:=ComboBox7.Text;
        LookImportData5.Edit2.Text:=ComboBox8.Text;
        LookImportData5.ADOQuery1.Connection:=BusTradeDataModule.ADOConnection1;
        LookImportData5.ADOQuery1.SQL.Clear;
        if Edit4.Text<>'' then
                sqlstr:='select * from 公用事业单位基本情况表'
                             +' where 单位代码 in '+Epr_Select.TotalEpr+' and 统计年份>='
                             + ComboBox7.Text+' and 统计年份<='+ComboBox8.Text
                             +' ORDER BY 统计年份,单位代码'
        else
                sqlstr:='select * from 公用事业单位基本情况表'
                             +' where 统计年份>='+ ComboBox7.Text+' and 统计年份<='
                             +ComboBox8.Text+' ORDER BY 统计年份,单位代码';
        LookImportData5.ADOQuery1.SQL.Add(sqlstr);
        LookImportData5.ADOQuery1.Open;

        LookImportData5.ShowModal;
end;

procedure TTradeOutputFrm.FormCreate(Sender: TObject);
begin
        PageControl1.ActivePage:=TabSheet1;
end;

procedure TTradeOutputFrm.TradeTableToTableMonth(src:string;srcdata:string);
var
SrcQuery:TADOQuery;
i,j:integer;
curPath:string;
begin
       if(copy(edit1.text,Length(edit1.text),1)='\')then
       curPath:=pchar(edit1.text+src) else
       curPath:=pchar(edit1.text+'\'+src);
       CopyFile(pchar(extractFilePath(application.ExeName)+'ImOutDir\'+src),pchar(curPath),false);
       ClientDataSet1.Close;
       ClientDataSet1.LoadFromFile(curPath);
       try
           ClientDataSet1.Open;
       except
           MessageBox(self.Handle,PCHAR(srcdata+'不能被导入,请检查导入文件'+src+'是否存在或格式是否正确。'),pchar('消息'),MB_OK);
           exit;
       end;
        SrcQuery:=TADOQuery.create(self);
        SrcQuery.Connection:=BusTradeDataModule.ADOConnection1;
        SrcQuery.SQL.Add('select * from '+srcdata+' where 城市代码='+''''+'022'+''''+' and 统计年份>='
                     +ComboBox11.text+ ' and 统计年份<='+ComboBox12.Text+
                     ' and 统计月份>='+ComboBox13.text+' and 统计月份<='+ComboBox14.text);
        SrcQuery.Open;
        if (SrcQuery.RecordCount=0) then
        begin
                showmessage('导出的源数据库没有所需数据!');
                judge:=false;
                exit;
        end;
        SrcQuery.First;
        while not SrcQuery.Eof do
        begin
                ClientDataSet1.Append;
                for i:=0 to ClientDataSet1.FieldCount-1 do
                        for j:=0 to SrcQuery.FieldCount-1 do
                        if(ClientDataSet1.Fields[i].FieldName=SrcQuery.Fields[j].FieldName)then
                        begin
                                        if(ClientDataSet1.Fields[i].FieldName<>'ID')then
                                        begin
                                                ClientDataSet1.Fields[i].Value:=SrcQuery.Fields[j].Value;
                                                break;
                                        end;
                        end;
                ClientDataSet1.Post;
                SrcQuery.Next;
       end;
       ClientDataSet1.SaveToFile(curPath);
        judge:=true;

end;

procedure TTradeOutputFrm.TradeTableToTableYear(src:string;srcdata:string);
var
SrcQuery:TADOQuery;
i,j:integer;
Srcsqlstr,Dessqlstr:string;
curPath:string;
begin
       if(copy(edit1.text,Length(edit1.text),1)='\')then
       curPath:=pchar(edit1.text+src) else
       curPath:=pchar(edit1.text+'\'+src);
       CopyFile(pchar(extractFilePath(application.ExeName)+'ImOutDir\'+src),pchar(curPath),false);
       ClientDataSet1.Close;
       ClientDataSet1.LoadFromFile(curPath);
       try
           ClientDataSet1.Open;
       except
           MessageBox(self.Handle,PCHAR(srcdata+'不能被导入,请检查导入文件'+src+'是否存在或格式是否正确。'),pchar('消息'),MB_OK);
           exit;
       end;
       if(srcdata='公交企业统计年报表')or(srcdata='公交企业统计年报表_z')then
       begin
                if Edit3.Text<>'' then
                begin
                        Srcsqlstr:='select * from '+srcdata+' where 企业代码 in '+Epr_Select.TotalEpr
                                +' and 统计年份>='+combobox5.Text+' and 统计年份<='+combobox6.Text;
                end else begin
                        Srcsqlstr:='select * from '+srcdata+' where 统计年份>='+combobox5.Text
                                +' and 统计年份<='+combobox6.Text;
                end;
       end;

        IF(srcdata='公交行业统计年报表') or(srcdata='公交行业统计年报_z') then
        begin
                Srcsqlstr:='select * from '+srcdata+' where 城市代码='+''''+'022'+''''+
                        ' and 统计年份>='+ComboBox9.text+' and 统计年份<='+ComboBox10.text;
        end;
    //导出公交行业综合年报
        if(srcdata='公交行业综合年报表') or (srcdata='公交行业综合年报_z')then
        begin
                Srcsqlstr:='select * from '+srcdata+' where '+
                        ' 统计年份>='+ComboBox15.text+' and 统计年份<='+ComboBox16.text;
        end;
    //导出公交行业城市交流指标表
        if(srcdata='公交行业城市交流指标表_z')or(srcdata='公交行业城市交流指标表')then
        begin
                Srcsqlstr:='select * from '+srcdata+' where 城市代码='+''''+'022'+''''+' and 统计年份>='
                        +combobox17.Text+' and 统计年份<='+combobox18.Text;
        end;

    //导出公交行业城市规模指标表
        if(srcdata='公交行业城市规模指标表_z')or(srcdata='公交行业城市规模指标表')then
        begin
                Srcsqlstr:='select * from '+srcdata+' where 城市代码='+''''+'022'+''''+' and 统计年份>='
                        +combobox19.Text+' and 统计年份<='+combobox20.Text;
        end;
    //主要业务活动表
        if(srcdata='主要业务活动表')then
        begin
                Srcsqlstr:='select * from '+srcdata+' where  统计年份>='
                        +combobox7.Text+' and 统计年份<='+combobox8.Text;
        end;
        SrcQuery:=TADOQuery.create(self);
        SrcQuery.Connection:=BusTradeDataModule.ADOConnection1;
        SrcQuery.SQL.Add(Srcsqlstr);
        SrcQuery.Open;
        if (SrcQuery.RecordCount=0) then
        begin

⌨️ 快捷键说明

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