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

📄 ujd_s1.pas

📁 一个地方税务征收管理系统
💻 PAS
字号:
unit ujd_s1;

interface

uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
  Buttons, DBGridEhImpExp, ExtCtrls, dialogs, Grids, DBGridEh, Menus, ComCtrls,
  DB, ADODB;

type
  Tjd_s1 = class(TForm)
    DBGridEh1: TDBGridEh;
    Panel1: TPanel;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn5: TBitBtn;
    SaveDialog1: TSaveDialog;
    GroupBox1: TGroupBox;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    procedure CancelBtnClick(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DBGridEh1GetCellParams(Sender: TObject; Column: TColumnEh;
      AFont: TFont; var Background: TColor; State: TGridDrawState);
    procedure FormActivate(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
  private
    FF_exp: string;
    FF_xm: string;
    FF_values: string;
    FF_backcolor: TColor;
    FF_font: TFont;
    procedure SetF_exp(const Value: string);
    procedure SetF_xm(const Value: string);
    procedure SetF_values(const Value: string);
    procedure SetF_backcolor(const Value: TColor);
    procedure SetF_font(const Value: TFont);
    { Private declarations }
  public
    { Public declarations }
  published
    property F_xm: string read FF_xm write SetF_xm;
    property F_exp: string read FF_exp write SetF_exp;
    property F_values: string read FF_values write SetF_values;
    property F_font: TFont read FF_font write SetF_font;
    property F_backcolor: TColor read FF_backcolor write SetF_backcolor;
  end;

var
  jd_s1: Tjd_s1;

implementation

uses u_dm, u_main, FRM_SELECTFIELDS, frm_dbgrideh_print_set, ucount_bold,
  Math;

{$R *.dfm}

procedure Tjd_s1.CancelBtnClick(Sender: TObject);
begin
  close;
end;

procedure Tjd_s1.BitBtn1Click(Sender: TObject);
var
  s: string;
begin
  if RadioButton1.Checked then
    s := 'select * from uf_jd_s1' +
      '(' + main.ACOUNT_YEAR + ')';

  if RadioButton2.Checked then
    s := 'select * from uf_jd_s2' +
      '(' + main.ACOUNT_YEAR + ')';
  if RadioButton3.Checked then
    s := 'select * from uf_jd_sum' +
      '(' + main.ACOUNT_YEAR + ')';
  with dm1.A_jd_s1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add(s);
    Open;
  end;
  DBGridEh1.DataSource := dm1.D_jd_s1;
end;

procedure Tjd_s1.FormCreate(Sender: TObject);
var
  s: string;
begin
  BitBtn1.Click;
  if main.Load_grid_enable then
    if FileExists(main.dat_path + 'jd_s1.dat') then
      DBGridEh1.Columns.LoadFromFile(main.dat_path + 'count.dat');
end;

procedure Tjd_s1.BitBtn2Click(Sender: TObject);
begin
  with TSELECTFIELDS.Create(self) do
  begin
    Dbgrideh := DBGridEh1;
    ShowModal;
  end;
end;

procedure Tjd_s1.BitBtn3Click(Sender: TObject);
var
  s: string;
begin
  s := main.dw + main.ACOUNT_YEAR + '入库进度年报表';
  with Tdbgrideh_print.Create(self) do
  begin
    PrintDBGridEh1.DBGridEh := DBGridEh1;
    L_TITLE_CENTER.Caption := s;

    s := '报表时间:' + DateToStr(Date);
    L_GRIDE_BEFOR.Caption := s;
    ShowModal;
  end;
end;

procedure Tjd_s1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action := caFree;
end;

procedure Tjd_s1.SetF_exp(const Value: string);
begin
  FF_exp := Value;
end;

procedure Tjd_s1.SetF_xm(const Value: string);
begin
  FF_xm := Value;
end;

procedure Tjd_s1.SetF_values(const Value: string);
begin
  FF_values := Value;
end;

procedure Tjd_s1.DBGridEh1GetCellParams(Sender: TObject; Column: TColumnEh;
  AFont: TFont; var Background: TColor; State: TGridDrawState);
begin
  with dm1.A_jd_she do
  begin
    if F_exp = '=' then
    begin
      if FieldByName(F_xm).AsCurrency = StrToCurr(F_values) then
      begin
        AFont.Assign(F_font);
        Background := F_backcolor;
        exit;
      end;
    end;

    if F_exp = '>' then
    begin
      if FieldByName(F_xm).AsCurrency > StrToCurr(F_values) then
      begin
        AFont.Assign(F_font);
        Background := F_backcolor;
        exit;
      end;
    end;
    if F_exp = '<' then
    begin
      if FieldByName(F_xm).AsCurrency < StrToCurr(F_values) then
      begin
        AFont.Assign(F_font);
        Background := F_backcolor;
        exit;
      end;
    end;
    if F_exp = '>=' then
    begin
      if FieldByName(F_xm).AsCurrency >= StrToCurr(F_values) then
      begin
        AFont.Assign(F_font);
        Background := F_backcolor;
        exit;
      end;
    end;

    if F_exp = '<=' then
    begin
      if FieldByName(F_xm).AsCurrency <= StrToCurr(F_values) then
      begin
        AFont.Assign(F_font);
        Background := F_backcolor;
        exit;
      end;
    end;

    if F_exp = '<>' then
    begin
      if FieldByName(F_xm).AsCurrency <> StrToCurr(F_values) then
      begin
        AFont.Assign(F_font);
        Background := F_backcolor;
        exit;
      end;
    end;
  end;
end;

procedure Tjd_s1.SetF_backcolor(const Value: TColor);
begin
  FF_backcolor := Value;
end;

procedure Tjd_s1.SetF_font(const Value: TFont);
begin
  FF_font := Value;
end;

procedure Tjd_s1.FormActivate(Sender: TObject);
begin
  F_font := TFont.Create;
  F_font.Assign(Self.Font);
  F_backcolor := clWhite;
end;

procedure Tjd_s1.BitBtn4Click(Sender: TObject);
var
  xm: string;
begin
  with Tcount_bold.Create(self) do
  begin
    if F_xm <> '' then
    begin
      ListBox1.ItemIndex := ListBox1.Items.IndexOf(F_xm);
      ListBox2.ItemIndex := ListBox2.Items.IndexOf(F_exp);
      Edit1.Text := F_values;
      l_example.Font.Assign(F_font);
      Panel1.Color := F_backcolor;
    end;

    if ShowModal = mrok then
    begin
      case ListBox1.ItemIndex of
        0: xm := 'r_s1';
        1: xm := 's1';
        2: xm := 'x_s1';
        3: xm := 'b_s1';
        4: xm := 'r_s2';
        5: xm := 's2';
        6: xm := 'x_s2';
        7: xm := 'b_s2';
        8: xm := 'r_sum';
        9: xm := 'y_sum';
        10: xm := 'x_sum';
        11: xm := 'b_sum';
      end;
      if trim(edit1.Text) <> '' then
      begin
        F_xm := xm;
        F_exp := ListBox2.Items[ListBox2.itemindex];
        F_values := Edit1.Text;

        F_font.Assign(l_example.Font);
        F_backcolor := Panel1.Color;
        DBGridEh1.Invalidate;
      end;
    end;
  end;
end;

procedure Tjd_s1.Button1Click(Sender: TObject);
begin
  F_xm := 'b_s1';
  F_exp := '=';
  F_values := '0';

end;

procedure Tjd_s1.BitBtn5Click(Sender: TObject);
begin
  if SaveDialog1.Execute then
  begin
    if SaveDialog1.FileName <> '' then
    begin
      if UpperCase(Copy(SaveDialog1.FileName, Length(SaveDialog1.FileName) -
        2, 3)) <> 'XLS' then
        SaveDialog1.FileName := SaveDialog1.FileName + '.XLS';
      SaveDBGridEhToExportFile(TDBGridEhExportAsXLS, DBGridEh1,
        SaveDialog1.FileName, true);
      MessageDlg('网格数据已成功导出到文件!', mtWarning, [mbok], 0);
    end;
  end;
end;

procedure Tjd_s1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if main.Load_grid_enable then
    DBGridEh1.Columns.SaveToFile(main.dat_path + 'jd_s1.dat');
end;

end.

⌨️ 快捷键说明

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