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

📄 u_zjkgl_hzcz.~pas

📁 这是一个非常使用的DELPHI源码的例子,用的是SQL数据库和DELPHI企业版
💻 ~PAS
字号:
unit U_zjkgl_Hzcz;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ActnList, XPStyleActnCtrls, ActnMan,
  Buttons, ComCtrls,StrUtils,u_public_define;

type
  TFrm_Zjkgl_hzcz = class(TForm)
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Dtp1: TDateTimePicker;
    Dtp2: TDateTimePicker;
    Cmx_Bm: TComboBox;
    Edt_bh: TEdit;
    Cmx_LB: TComboBox;
    Edt_je: TEdit;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    ActionManager1: TActionManager;
    Action1: TAction;
    Action2: TAction;
    Action3: TAction;
    RadioGroup1: TRadioGroup;
    Action4: TAction;
    procedure Action3Execute(Sender: TObject);
    procedure Action2Execute(Sender: TObject);
    procedure Action1Execute(Sender: TObject);
    procedure Action4Execute(Sender: TObject);
    procedure  kh_xx();
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frm_Zjkgl_hzcz: TFrm_Zjkgl_hzcz;

implementation

uses U_Data,u_zjkgl_hz,u_card;

{$R *.dfm}

procedure TFrm_Zjkgl_hzcz.Action3Execute(Sender: TObject);
begin
   close;
end;

procedure TFrm_Zjkgl_hzcz.Action2Execute(Sender: TObject);
var
    P_Str_lj:String;
   aa:array[1..12] of String;
   BB:array[1..12] of real;
   i, J, K, L:Integer;
{0}begin

       For L := 1 To 12 do
           begin
                BB[L] := 0;
           end;
  aa[1]:= '现金交费';
  aa[2]:= '单位补贴';
  aa[3]:= '因错退还';
  aa[4]:= '开户押金';
  aa[5]:= '换卡交费';
  aa[6]:= '餐费补扣';
  aa[7]:= '补贴扣除';
  aa[8]:= '现金提取';
  aa[9]:= '退还余额';
  aa[10]:= '退还押金';
  aa[11]:= '增款';
  aa[12]:= '减款';

      i:= strtoint(floattostr(DTP2.date - DTP1.date ));
      data.G_Con.Open();
     J := 0;
     K := 1;

      If (Cmx_bm.Text  ='') Or (Cmx_bm.Text ='全部') Then
      {1}    begin
            If Cmx_lb.Text <> '' Then
         {2}       begin
                    For J := 0 To i do
               {3}    begin
                         For K := 1 To 12   do
                        {4}   begin
                                 P_Str_lj := 'select zjje,sj,zjfs from mr_zjb where sj=' + quotedstr(Formatdatetime('yyyy年mm月dd日',DTP1.date + J )) + ' and zjfs=' +quotedstr(aa[K]) + ' and zjje'+ Trim(Cmx_lb.text) + quotedstr(edt_je.Text);
                                 data.G_Cj.SQL.Clear;
                                 data.G_Cj.SQL.Add(p_str_lj);
                                 data.G_Cj.ExecSQL;
                                  data.G_Cj.Open;
                                  While Not data.G_Cj.EOF do
                               {5}   begin
                                        BB[K]:= BB[K] + data.G_Cj.FieldValues ['zjje'];
                                        data.G_Cj.Next;
                               {/5}  end;
                                    data.G_Cj.Close;


                               with frm_zjkgl_hz.Lvw_lb.Items.Add do
                               {6}  begin
                                       caption:= Formatdatetime('yyyy年mm月dd日',DTP1.Date + J);

                                      For L := 1 To 12 do
                                    {7}  begin
                                          SubItems.Add(floattostr(BB[L]));
                                    {/7}  end;
                               {/6}    end;

                                 For L := 1 To 12 do
                                {8}   begin
                                     BB[L] := 0;
                                 {/8}  end;
                      {/4}  end;
                      {/3}end;

          {/2} end
         Else
           {9} begin
                For J := 0 To i do
         {10}     begin
                       For K := 1 To 12 do
              {11}        begin
                               P_Str_lj := 'select zjje,sj,zjfs from mr_zjb where sj=' +quotedstr( Formatdatetime('yyyy年mm月dd日',DTP1.date + J )) + ' and zjfs=' +quotedstr(aa[K]);

                                data.G_Cj.SQL.Clear;
                                 data.G_Cj.SQL.Add(p_str_lj);
                                 data.G_Cj.ExecSQL;
                                  data.G_Cj.Open;
                                  While Not data.G_Cj.EOF do
                         {12}        begin
                                       BB[K]:= BB[K] + data.G_Cj.FieldValues ['zjje'];
                                        data.G_Cj.Next;
                         {/12}       end;
                                    data.G_Cj.Close;


                     {/11}   end;
                                    with frm_zjkgl_hz.Lvw_lb.Items.Add do
                 {13}               begin
                                       caption:= Formatdatetime('yyyy年mm月dd日',DTP1.Date + J);

                                        For L := 1 To 12 do
                   {14}                   begin
                                            SubItems.Add(floattostr(BB[L]));
                   {/14}                 end;
                {/13}                end;

                          For L := 1 To 12 do
                 {15}       begin
                               BB[L] := 0;
                 {/15}      end;

           {/10}  end;
      {/9}end;
    {/1} end
   Else //有单位的
           {1}    begin
            If Cmx_lb.Text <> '' Then
         {2}       begin
                    For J := 0 To i do
               {3}    begin
                         For K := 1 To 12   do
                        {4}   begin
                                 P_Str_lj := 'select zjje,sj,zjfs from mr_zjb where sj=' + quotedstr(Formatdatetime('yyyy年mm月dd日',DTP1.date + J )) + ' and zjfs=' +quotedstr(aa[K]) + ' and zjje'+ Trim(Cmx_lb.text) + quotedstr(edt_je.Text);
                                 data.G_Cj.SQL.Clear;
                                 data.G_Cj.SQL.Add(p_str_lj);
                                 data.G_Cj.ExecSQL;
                                  data.G_Cj.Open;
                                  While Not data.G_Cj.EOF do
                               {5}   begin
                                        BB[K]:= BB[K] + data.G_Cj.FieldValues ['zjje'];
                                        data.G_Cj.Next;
                               {/5}  end;
                                    data.G_Cj.Close;


                               with frm_zjkgl_hz.Lvw_lb.Items.Add do
                               {6}  begin
                                       caption:= Formatdatetime('yyyy年mm月dd日',DTP1.Date + J);

                                      For L := 1 To 12 do
                                    {7}  begin
                                          SubItems.Add(floattostr(BB[L]));
                                    {/7}  end;
                               {/6}    end;

                                 For L := 1 To 12 do
                                {8}   begin
                                     BB[L] := 0;
                                 {/8}  end;
                      {/4}  end;
                      {/3}end;

          {/2} end
         Else
           {9} begin
                For J := 0 To i do
         {10}     begin
                       For K := 1 To 12 do
              {11}        begin
                               P_Str_lj := 'select zjje,sj,zjfs from mr_zjb where sj=' + quotedstr(Formatdatetime('yyyy年mm月dd日',DTP1.date + J )) + ' and zjfs=' +quotedstr(aa[K]);

                                data.G_Cj.SQL.Clear;
                                 data.G_Cj.SQL.Add(p_str_lj);
                                 data.G_Cj.ExecSQL;
                                  data.G_Cj.Open;
                                  While Not data.G_Cj.EOF do
                         {12}        begin
                                       BB[K]:= BB[K] + data.G_Cj.FieldValues ['zjje'];
                                        data.G_Cj.Next;
                         {/12}       end;
                                    data.G_Cj.Close;


                     {/11}   end;
                                    with frm_zjkgl_hz.Lvw_lb.Items.Add do
                 {13}               begin
                                       caption:= Formatdatetime('yyyy年mm月dd日',DTP1.Date + J);

                                        For L := 1 To 12 do
                   {14}                   begin
                                            SubItems.Add(floattostr(BB[L]));
                   {/14}                 end;
                {/13}                end;

                          For L := 1 To 12 do
                 {15}       begin
                               BB[L] := 0;
                 {/15}      end;

           {/10}  end;
      {/9}end;
    {/1} end;
//        }
    close;

{/0}end;

procedure TFrm_Zjkgl_hzcz.Action1Execute(Sender: TObject);
begin
If OPen_Card Then
    begin
    edt_bh.Text:= Read_Card;
    g_str_selectkh:=edt_bh.text;
     If Close_card Then
        begin
          kh_xx ;
        //  Action5Execute(Sender);
          Exit;
        end;
    end;
//
end;
procedure Tfrm_zjkgl_hzcz.kh_xx();
  var dd:string;
  begin
      dd:=trim(g_str_selectkh);
       with data do
         begin
            g_con.Open();
            g_Rst7.SQL.Clear;
            dd:='select * from mr_people where kh='+quotedstr(dd);
            g_rst7.SQL.Add(dd);
            g_rst7.ExecSQL;
            g_rst7.Open;
            if not g_rst7.Eof then
               begin
                 edt_bh.Text :=g_Rst7.FieldValues['bh'];
               end;
            //.Active:=true;
         end;
     end;
procedure TFrm_Zjkgl_hzcz.Action4Execute(Sender: TObject);
begin
  data.G_Rst.SQL.Clear;
   data.G_Rst.SQL.Add('select * from mr_jbb where m_lbbh=1');
   data.G_Rst.ExecSQL;
   data.G_Rst.Open;
   while not data.G_Rst.Eof do
      begin
         cmx_bm.Items.Add(data.G_Rst.FieldValues['m_name']);
         data.G_Rst.Next;
      end;
    data.G_Rst.Close;
     cmx_bm.Items.Add('全部');
      cmx_lb.Items.Add('=');
      cmx_lb.Items.Add('>');
      cmx_lb.Items.Add('>=');
      cmx_lb.Items.Add('<');
      cmx_lb.Items.Add('<=');
      cmx_lb.Items.Add('<>');
      dtp1.Date:=now;
      dtp2.Date:=now;
end;

end.

⌨️ 快捷键说明

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