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

📄 mainunitbak.pas

📁 工商收费系统,主要是管理非税收收入的费用的管理
💻 PAS
字号:
unit MainUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, dxsbar, ComCtrls, ImgList, dxCntner, dxTL, dxDBCtrl,
  dxDBGrid, ToolWin, Buttons, DB, ADODB,iniFiles, ConEdtUnit;

type
  TAddCheque=function(StrCon:WideString;EdtFlag:Integer;
                   strTableName:string;strSqlWhere:String;
                   strOperaterCode:string):Widestring;
type
  TMainFrm = class(TForm)
    pgc1: TPageControl;
    stat1: TStatusBar;
    ts1: TTabSheet;
    ts3: TTabSheet;
    ts4: TTabSheet;
    img1: TImage;
    dxSideBar1: TdxSideBar;
    ImageList1: TImageList;
    pnl1: TPanel;
    dxdbgrd1: TdxDBGrid;
    clbr1: TCoolBar;
    SBAppend: TSpeedButton;
    SBEdit: TSpeedButton;
    SBQuery: TSpeedButton;
    SBDelete: TSpeedButton;
    SBListPrint: TSpeedButton;
    SBExit: TSpeedButton;
    qryView: TADOQuery;
    dsView: TDataSource;
    SBUpdate: TSpeedButton;
    ts2: TTabSheet;
    Panel2: TPanel;
    dxDBGrid2: TdxDBGrid;
    CoolBar2: TCoolBar;
    //SpeedButton7: TSpeedButton;
    //SpeedButton8: TSpeedButton;
    //SpeedButton9: TSpeedButton;
    //SpeedButton10: TSpeedButton;
    //SpeedButton11: TSpeedButton;
   // SpeedButton12: TSpeedButton;
   // SpeedButton19: TSpeedButton;
    dxSideBar2: TdxSideBar;
    Panel3: TPanel;
    dxDBGrid3: TdxDBGrid;
    CoolBar3: TCoolBar;
    //SpeedButton13: TSpeedButton;
    //SpeedButton14: TSpeedButton;
    //SpeedButton15: TSpeedButton;
    //SpeedButton16: TSpeedButton;
    //SpeedButton17: TSpeedButton;
    //SpeedButton18: TSpeedButton;
    //SpeedButton20: TSpeedButton;
    dxSideBar3: TdxSideBar;
    Panel1: TPanel;
    dxDBGrid1: TdxDBGrid;
    CoolBar1: TCoolBar;
   // SpeedButton1: TSpeedButton;
   // SpeedButton2: TSpeedButton;
   // SpeedButton3: TSpeedButton;
   // SpeedButton4: TSpeedButton;
   // SpeedButton5: TSpeedButton;
   // SpeedButton6: TSpeedButton;
   // SpeedButton21: TSpeedButton;
    dxSideBar4: TdxSideBar;
    ADOQuery1: TADOQuery;
    qryviewbill: TADOQuery;
    dsViewBill: TDataSource;
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure dxSideBar1ItemClick(Sender: TObject; Item: TdxSideBarItem);
    procedure dxSideBar2ItemClick(Sender: TObject; Item: TdxSideBarItem);
    //procedure dxSideBar3ItemClick(Sender: TObject; Item: TdxSideBarItem);
   // procedure dxSideBar4ItemClick(Sender: TObject; Item: TdxSideBarItem);
    procedure SBListPrintClick(Sender: TObject);
    procedure SBExitClick(Sender: TObject);
    procedure SBAppendClick(Sender: TObject);
    procedure SBUpdateClick(Sender: TObject);
    procedure SBEditClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure SpeedButton7Click(Sender: TObject);
  private
    { Private declarations }
    currfunction:Integer;
    procedure Calldll(dllname:string;iFlag:Integer;
                   sTableName:string;sSqlWhere:String;
                   sOperaterCode:string);
  public
    { Public declarations }
  end;

var
  MainFrm: TMainFrm;

implementation

uses DataLinkUnit, GeneralLibUnit;

{$R *.dfm}

procedure TMainFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if   application.MessageBox('确认退出系统吗?','退出系统',mb_yesno)=id_no   then
       canclose:=false;
end;

procedure TMainFrm.dxSideBar1ItemClick(Sender: TObject;
  Item: TdxSideBarItem);
begin
  if Trim(item.Caption)='使用单位设置' then
  begin
    currfunction:=10;
    DM.AdoQueryOpen('select * from unit',qryView,'0','');
    LoadGrid('ini\baseset.ini','unit',qryView,dxdbgrd1);
  end;

  if Trim(item.Caption)='部门设置' then
  begin
    currfunction:=11;
    DM.AdoQueryOpen('select * from department',qryView,'0','');
    LoadGrid('ini\baseset.ini','department',qryView,dxdbgrd1);
  end;
   if Trim(item.Caption)='收款人' then
  begin
    currfunction:=12;
    DM.AdoQueryOpen('select * from Payee',qryView,'0','');
    LoadGrid('ini\baseset.ini','Payee',qryView,dxdbgrd1);
  end;

  if Trim(item.Caption)='收费项目设置' then
  begin
    currfunction:=13;
    DM.AdoQueryOpen('select * from item',qryView,'0','');
    LoadGrid('ini\baseset.ini','item',qryView,dxdbgrd1);
  end;

  if Trim(item.Caption)='个体工商户档案' then
  begin
    currfunction:=14;
    DM.AdoQueryOpen('select * from archives',qryView,'0','');
    LoadGrid('ini\baseset.ini','archives',qryView,dxdbgrd1);
  end;

  stat1.Panels[3].Text:='当前功能:'+Item.Caption;
end;

procedure TMainFrm.dxSideBar2ItemClick(Sender: TObject;
  Item: TdxSideBarItem);
begin

  if Trim(item.Caption)='工商收费' then
  begin
    currfunction:=20;
    DM.AdoQueryOpen('select * from bill',qryViewBill,'0','');
    LoadGrid('ini\baseset.ini','bill',qryViewBill,dxDBGrid2);
  end;

  stat1.Panels[3].Text:='当前功能:'+Item.Caption;
end;


procedure TMainFrm.SBListPrintClick(Sender: TObject);
begin
  SaveGrid('ini\baseset.ini','unit',qryView,dxdbgrd1);
end;

procedure TMainFrm.SBExitClick(Sender: TObject);
begin
  if qryView.Active=True then
    qryView.Close;
end;

procedure TMainFrm.SBAppendClick(Sender: TObject);
var
  strbookmark:TBookmark;
begin
  if qryView.Active=True then
  begin
     strbookmark:=qryView.GetBookmark;
     case currfunction of
     10:
        Calldll('EdtUnit',1,'Unit',' and 编码='+qryView.FieldByName('编码').AsString,'');
     11:
        Calldll('EdtDepartment',1,'department',' and 编码='+qryView.FieldByName('编码').AsString,'');
     12:
        Calldll('EdtPayee',1,'Payee',' and 编码='+qryView.FieldByName('编码').AsString,'');
     13:
        Calldll('EdtItem',1,'Item',' and 项目编码='+qryView.FieldByName('项目编码').AsString,'');
     14:
        Calldll('Edtarchives',1,'archives',' and 工商户代码='+qryView.FieldByName('工商户代码').AsString,'');
     20:
        Calldll('EdtBill',1,'Bill',' and 业主代码='+qryView.FieldByName('业主代码').AsString,'');
     end;
     SBUpdate.Click;
     qryView.GotoBookmark(strbookmark);
   end;
end;
{procedure TMainFrm.SpeedButton7AppendClick(Sender: TObject);
var
  strbookmark:TBookmark;
begin
  if dsViewBill.Active=True then
  begin
     strbookmark:=dsViewBill.GetBookmark;
     case currfunction of

     20:
        Calldll('EdtBill',1,'Bill',' and 业主代码='+dsViewBill.FieldByName('业主代码').AsString,'');
     end;
     SBUpdate.Click;
     dsViewBill.GotoBookmark(strbookmark);
   end;
end;}
procedure TMainFrm.SBUpdateClick(Sender: TObject);
begin
  qryView.Requery();
end;

procedure TMainFrm.SBEditClick(Sender: TObject);
var
  strbookmark:TBookmark;
begin
  if (qryView.Active=True) and (qryView.RecordCount>0) then
  begin
     strbookmark:=qryView.GetBookmark;
     case currfunction of
     10:
        Calldll('EdtUnit',0,'Unit',' and 编码='+qryView.FieldByName('编码').AsString,'');
     11:
        Calldll('EdtDepartment',0,'department',' and 编码='+qryView.FieldByName('编码').AsString,'');
     12:
        Calldll('EdtPayee',0,'Payee',' and 编码='+qryView.FieldByName('编码').AsString,'');
     13:
        Calldll('EdtItem',0,'Item',' and 项目编码='+qryView.FieldByName('项目编码').AsString,'');
     14:
        Calldll('EdtBill',0,'archives',' and 工商户代码='+qryView.FieldByName('工商户代码').AsString,'');
     20:
        Calldll('EdtItem',0,'Bill',' and 业主代码='+qryView.FieldByName('业主代码').AsString,'');
     end;
     SBUpdate.Click;
     qryView.GotoBookmark(strbookmark);
   end;
end;


procedure TMainFrm.Calldll(dllname: string; iFlag: Integer; sTableName,
  sSqlWhere, sOperaterCode: string);
var
  handle:THandle;
  AddCheque:TAddCheque;
  STrSqlfind:WideString;
begin
  try
    handle:=LoadLibrary(Pchar(ExtractFilePath(Application.ExeName)+'\Dll\'+dllname));
    @AddCheque:=GetProcAddress(Handle,'AddCheque');
    STrSqlfind:=AddCheque(gstrConnectionString,iFlag,sTableName,sSqlWhere,sOperaterCode);
  except
    Application.MessageBox('调用窗体出现问题!','警告',MB_ICONStop);
    freelibrary(handle);
    Exit;
  end;

  freelibrary(handle);
end;

procedure TMainFrm.FormShow(Sender: TObject);
begin
  gstrConnectionString:=DM.conMain.ConnectionString;
  stat1.Panels[0].Text:='操作员:'+gstrOperaterCode; // 这里的'operater'是全局变量,不能改为
  stat1.Panels[1].Text:='服务器:server';            //Operater
  stat1.Panels[2].Text:='当前日期:'+DateToStr(Now);
  stat1.Panels[3].Text:='当前功能:';
  stat1.Panels[4].Text:='使用单位:';
end;

procedure TMainFrm.SpeedButton7Click(Sender: TObject);
var
  strbookmark:TBookmark;
begin
  if qryViewBill.Active=True then
  begin
     strbookmark:=qryView.GetBookmark;
     case currfunction of
     20:
        Calldll('EdtBill',1,'Bill',' and 业主代码='+qryViewBill.FieldByName('业主代码').AsString,'');
     end;
     SBUpdate.Click;
     qryViewBill.GotoBookmark(strbookmark);
   end;
end;

end.

⌨️ 快捷键说明

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