tradeoutputunit.~pas

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

~PAS
1,570
字号
unit TradeOutputUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ComCtrls, Grids, DBGrids, DB, ADODB,IdGlobal,
  ExtCtrls, DBClient;

type
  TTradeOutputFrm = class(TForm)
    Panel1: TPanel;
    Panel4: TPanel;
    Label1: TLabel;
    SpeedButton1: TSpeedButton;
    Edit1: TEdit;
    SaveDialog1: TSaveDialog;
    ADOConnection1: TADOConnection;
    Panel2: TPanel;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    GroupBox1: TGroupBox;
    Label3: TLabel;
    Label2: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label10: TLabel;
    Label32: TLabel;
    SpeedButton2: TSpeedButton;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    ComboBox3: TComboBox;
    ComboBox4: TComboBox;
    Edit2: TEdit;
    BitBtn9: TBitBtn;
    BitBtn7: TBitBtn;
    TabSheet2: TTabSheet;
    GroupBox2: TGroupBox;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label33: TLabel;
    SpeedButton4: TSpeedButton;
    ComboBox5: TComboBox;
    ComboBox6: TComboBox;
    Edit3: TEdit;
    BitBtn10: TBitBtn;
    BitBtn8: TBitBtn;
    TabSheet4: TTabSheet;
    BitBtn17: TBitBtn;
    BitBtn4: TBitBtn;
    GroupBox3: TGroupBox;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label34: TLabel;
    SpeedButton5: TSpeedButton;
    ComboBox7: TComboBox;
    ComboBox8: TComboBox;
    Edit4: TEdit;
    BitBtn6: TBitBtn;
    TabSheet3: TTabSheet;
    GroupBox5: TGroupBox;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    Label22: TLabel;
    ComboBox11: TComboBox;
    ComboBox12: TComboBox;
    ComboBox13: TComboBox;
    ComboBox14: TComboBox;
    BitBtn16: TBitBtn;
    BitBtn19: TBitBtn;
    TabSheet5: TTabSheet;
    GroupBox4: TGroupBox;
    Label11: TLabel;
    Label12: TLabel;
    Label16: TLabel;
    ComboBox9: TComboBox;
    ComboBox10: TComboBox;
    BitBtn20: TBitBtn;
    BitBtn21: TBitBtn;
    TabSheet6: TTabSheet;
    GroupBox6: TGroupBox;
    Label23: TLabel;
    Label24: TLabel;
    Label25: TLabel;
    ComboBox15: TComboBox;
    ComboBox16: TComboBox;
    BitBtn22: TBitBtn;
    BitBtn23: TBitBtn;
    TabSheet7: TTabSheet;
    GroupBox7: TGroupBox;
    Label26: TLabel;
    Label27: TLabel;
    Label28: TLabel;
    ComboBox17: TComboBox;
    ComboBox18: TComboBox;
    BitBtn24: TBitBtn;
    BitBtn25: TBitBtn;
    TabSheet8: TTabSheet;
    GroupBox8: TGroupBox;
    Label29: TLabel;
    Label30: TLabel;
    Label31: TLabel;
    ComboBox19: TComboBox;
    ComboBox20: TComboBox;
    BitBtn26: TBitBtn;
    BitBtn27: TBitBtn;
    TabSheet9: TTabSheet;
    RichEdit1: TRichEdit;
    BitBtn18: TBitBtn;
    ClientDataSet1: TClientDataSet;
    procedure SpeedButton1Click(Sender: TObject);
    procedure BitBtn9Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure BitBtn8Click(Sender: TObject);
    procedure BitBtn10Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BitBtn16Click(Sender: TObject);
    procedure BitBtn19Click(Sender: TObject);
    procedure BitBtn20Click(Sender: TObject);
    procedure BitBtn21Click(Sender: TObject);
    procedure BitBtn23Click(Sender: TObject);
    procedure BitBtn22Click(Sender: TObject);
    procedure BitBtn24Click(Sender: TObject);
    procedure BitBtn25Click(Sender: TObject);
    procedure BitBtn27Click(Sender: TObject);
    procedure BitBtn26Click(Sender: TObject);
    procedure BitBtn11Click(Sender: TObject);
    procedure BitBtn12Click(Sender: TObject);
    procedure BitBtn13Click(Sender: TObject);
    procedure BitBtn14Click(Sender: TObject);
    procedure BitBtn15Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    procedure SpeedButton5Click(Sender: TObject);
    procedure BitBtn18Click(Sender: TObject);
  private
    judge:boolean;
    temp:integer;
    { Private declarations }
  public
    procedure TradeTableToTableYear(src:string;srcdata:string);
    procedure TableToTableMonth(src:string;srcdata:string);
    procedure TableToTableEpr(src:string;srcdata:string);
    procedure TradeTableToTableMonth(src:string;srcdata:string);
    function  CheckFileSuc:boolean;
  end;

var
  TradeOutputFrm: TTradeOutputFrm;

implementation

uses {BusDataModuleUnit, LookImportDataUnit3,
  LookImportDataUnit, LookImportDataUnit2, TradeDataModule,
  LookImportDataUnit, LookImportDataUnit2, LookImportDataUnit3,}
  BusTradeDataModuleUnit, LookImportData4Unit, LookImportData5Unit,
  Epr_SelectUnit, SelectDirectoryUnit;
  {ZHYDataFrm6Unit, JLYDataFrm7Unit, ScaleDataFrm8Unit, EprSelectUnit;}

{$R *.dfm}

procedure TTradeOutputFrm.SpeedButton1Click(Sender: TObject);
var
        tmpstr:string;
        Dfilename:String;
begin
           if(SelectDirectoryForm.showmodal<>mrok)then exit;
           Edit1.Text:=SelectDirectoryForm.ShellTreeView1.SelectedFolder.PathName;
          
           
         { if(not savedialog1.Execute)then exit;
          ADOConnection1.Connected:=false;
          try
                setcurrentdirectory(pchar(ExtractFilepath(Application.ExeName)+'database\'));
                tmpstr:='ImportOutput.mdb';
                Dfilename:='InOut.mdb';
                 if(FileExists(savedialog1.FileName))then
                begin
                       if(MessageBox(self.Handle,' 文件已存在,是否覆盖?','警告',MB_OKCANCEL)<>IDOK)then
                       begin
                              exit;
                       end;
                       deletefile(savedialog1.FileName);
                end;
                copyfile(pchar(tmpstr),pchar(Dfilename),false);
                ADOConnection1.ConnectionString:=
                        'Provider=Microsoft.Jet.OLEDB.4.0;'+
                        'Data Source='+Dfilename+';'+
                        'Persist Security Info=False';
                ADOConnection1.Connected:=true;
          except
                showmessage('不能连接到导出文件');
          end;
          Edit1.Text:=savedialog1.FileName;
          RichEdit1.Lines.Clear;      }

end;

procedure TTradeOutputFrm.BitBtn9Click(Sender: TObject);
begin
        if ComboBox1.Text='' then
        begin
                showmessage('对不起!"起始年份"不能为空!请重新选择条件!');
                exit;
        end;
        if ComboBox2.Text='' then
        begin
                showmessage('对不起!"终止年份"不能为空!请重新选择条件!');
                exit;
        end;
        if (Length(ComboBox1.Text)<>4) or ((Length(ComboBox2.Text)<>4)) then
        begin
                showmessage('对不起!您选择的年份非法!请重新选择!');
                exit;
        end;
        try
                temp:=StrToInt(ComboBox1.Text);
        except
                showmessage('起始年份非法!请重新选择!');
                exit;
        end;
        try
                temp:=StrToInt(ComboBox2.Text);
        except
                showmessage('终止年份非法!请重新选择!');
                exit;
        end;
        if (StrToInt(ComboBox1.Text)<1900) or (StrToInt(ComboBox1.Text)>3000) then
        begin
                showmessage('对不起!您选择的"起始年份"非法!请重新选择!');
                exit;
        end;
        if (StrToInt(ComboBox2.Text)<1900) or (StrToInt(ComboBox2.Text)>3000) then
        begin
                showmessage('对不起!您选择的"终止年份"非法!请重新选择!');
                exit;
        end;
        if StrToInt(ComboBox1.Text)>StrToInt(ComboBox2.Text) then
        begin
                showmessage('对不起!"起始年份"不能大于"终止年份"!请重新选择条件!');
                exit;
        end;
        if ComboBox3.Text='' then
        begin
                showmessage('对不起!"起始月份"不能为空!请重新选择条件!');
                exit;
        end;
        if ComboBox4.Text='' then
        begin
                showmessage('对不起!"终止月份"不能为空!请重新选择条件!');
                exit;
        end;
        if StrToInt(ComboBox3.Text)>StrToInt(ComboBox4.Text) then
        begin
                showmessage('对不起!"起始月份"不能大于"终止月份"!请重新选择条件!');
                exit;
        end;
        Application.CreateForm(TLookImportData4, LookImportData4);

        LookImportData4.Label1.Caption:='公交企业月报导出数据浏览';
        LookImportData4.Edit1.Text:=ComboBox1.Text;
        LookImportData4.Edit2.Text:=ComboBox2.Text;
        LookImportData4.Edit3.Text:=ComboBox3.Text;
        LookImportData4.Edit4.Text:=ComboBox4.Text;
        LookImportData4.ADOQuery1.Connection:=BusTradeDataModule.ADOConnection1;
        LookImportData4.ADOQuery1.SQL.Clear;
        if Edit2.Text<>'' then
                LookImportData4.ADOQuery1.SQL.Add('select a.企业代码 as 企业代码, a.统计年份 AS 统计年份, a.统计月份 AS 统计月份,'
                             +' b.指标名称 AS 指标名称, b.指标代码 AS 指标代码, b.单位 AS 单位, a.本月实际 AS 本月实际'
                             +' from 公交企业统计月报表_z AS a, 公交企业统计月报指标定义表 AS b'
                             +' where a.统计年份>='+ComboBox1.Text+' and a.统计年份<='+ComboBox2.Text+' and a.统计月份>='+ComboBox3.Text
                             +' and a.统计月份<='+ComboBox4.Text
                             +' and a.指标代码=b.指标代码 '
                             +' and 企业代码 in'+Epr_Select.TotalEpr
                             +' ORDER BY a.企业代码,a.统计年份,a.统计月份,b.指标代码')
        else
                LookImportData4.ADOQuery1.SQL.Add('select a.企业代码 as 企业代码, a.统计年份 AS 统计年份, a.统计月份 AS 统计月份,'
                             +' b.指标名称 AS 指标名称, b.指标代码 AS 指标代码, b.单位 AS 单位, a.本月实际 AS 本月实际'
                             +' from 公交企业统计月报表_z AS a, 公交企业统计月报指标定义表 AS b'
                             +' where a.统计年份>='+ComboBox1.Text+' and a.统计年份<='+ComboBox2.Text+' and a.统计月份>='+ComboBox3.Text
                             +' and a.统计月份<='+ComboBox4.Text
                             +' and a.指标代码=b.指标代码 '
                             +' ORDER BY a.企业代码, a.统计年份,a.统计月份,b.指标代码');
        LookImportData4.ADOQuery1.Open;
        LookImportData4.ShowModal;
end;

function TTradeOutputFrm.CheckFileSuc:boolean;
begin
         if(ADOConnection1.Connected)then
         CheckFileSuc:=True else
         CheckFileSuc:=False;
end;
procedure TTradeOutputFrm.BitBtn7Click(Sender: TObject);
begin
        judge:=true;
        if ComboBox1.Text='' then
        begin
                showmessage('对不起!"起始年份"不能为空!请重新选择条件!');
                exit;
        end;

⌨️ 快捷键说明

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