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

📄 main.~pas

📁 安徽省货物销售统一发票管理系统 操作说明 1、开票 F7或双击可 查询
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:
unit main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, Menus, ActnMan, ActnCtrls, ActnMenus, ToolWin,
  XPStyleActnCtrls, ActnList, ImgList, jpeg, ExtCtrls,db, XPMan, XPMenu,
  StdStyleActnCtrls;

type
{  TCPxx=class
    dm:string;
    cp:string;
    gg:string;
    dw:string;
    sl:real;
    dj:real;
  end;}

  TCurXX=class
    Cur_TaxNo:string;
    Cur_Dwmc:string;
    Cur_Bank:string;
    Cur_BankNo:string;
    Cur_address:string;
    Cur_TelNo:string;
    Cur_skRen:string;
    Cur_kpRen:string;
    printer_name:string;
    sl_dec:integer;
    sl_fjh:boolean;
    dj_dec:integer;
    dj_fjh:boolean;
    je_dec:integer;
    je_fjh:boolean;
    print_x : integer;
    print_y : integer;
    printNO : boolean; //是否对号打印
    b01:boolean;
    b02:boolean;
    b03:boolean;
    b04:boolean;
    b05:boolean;
    b06:boolean;
    b07:boolean;
    constructor Create;
  end;

  Tfrm_main = class(TForm)
    StatusBar1: TStatusBar;
    ActionManager1: TActionManager;
    CoolBar1: TCoolBar;
    ActionMainMenuBar1: TActionMainMenuBar;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    ImageList1: TImageList;
    Image1: TImage;
    ImageList2: TImageList;
    Action1: TAction;
    Action2: TAction;
    Action3: TAction;
    Action4: TAction;
    Action5: TAction;
    Action6: TAction;
    Action7: TAction;
    Action8: TAction;
    Action9: TAction;
    Action10: TAction;
    Action11: TAction;
    Action12: TAction;
    Action13: TAction;
    Action14: TAction;
    XPManifest1: TXPManifest;
    Action15: TAction;
    Action16: TAction;
    Action17: TAction;
    Action18: TAction;
    Action19: TAction;
    Action20: TAction;
    Action21: TAction;
    Action22: TAction;
    Action23: TAction;
    Action24: TAction;
    procedure ToolButton6Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure Action1Execute(Sender: TObject);
    procedure Action2Execute(Sender: TObject);
    procedure Action3Execute(Sender: TObject);
    procedure Action6Execute(Sender: TObject);
    procedure Action7Execute(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Action5Execute(Sender: TObject);
    procedure Action4Execute(Sender: TObject);
    procedure Action8Execute(Sender: TObject);
    procedure Action9Execute(Sender: TObject);
    procedure Action10Execute(Sender: TObject);
    procedure Action11Execute(Sender: TObject);
    procedure Action12Execute(Sender: TObject);
    procedure Action13Execute(Sender: TObject);
    procedure Action14Execute(Sender: TObject);
    procedure Action15Execute(Sender: TObject);
    procedure Action16Execute(Sender: TObject);
    procedure Action17Execute(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure Action18Execute(Sender: TObject);
    procedure Action19Execute(Sender: TObject);
    procedure Action20Execute(Sender: TObject);
    procedure Action21Execute(Sender: TObject);
    procedure Action23Execute(Sender: TObject);
    procedure Action22Execute(Sender: TObject);
    procedure Action24Execute(Sender: TObject);
  private
    { Private declarations }
  public
    procedure showkpxx;   //显示开票单位信息
    function GetRen(AXM:string):string;   //获取开票人或收款人姓名
    function GetKhmc(AKHMC:string):string;
//    function GetCpxx(var cpxx:TCPxx):boolean;
    function getjldw(AJLDW:string):string; //获取计量单位
    { Public declarations }
  end;

var
  frm_main: Tfrm_main;
  KPXX: TCurXX;
implementation
uses UDataM, UMission, UnewDW, uKp, umissgl, uRen, about, ukhgl, Ujldw, Uabout1,
      UCPGL, Ufpgl, Unewfp, Ukpset, Ufpfilter, Rtlb, Uoption, RHwqd ;
{$R *.dfm}

constructor TCurXX.Create;
begin
  Cur_Taxno:='';
  Cur_Dwmc:='';
  Cur_Bank:='';
  Cur_BankNo:='';
  Cur_address:='';
  Cur_telNo:='';
  Cur_skRen:='';
  Cur_kpRen:='';
  sl_dec:=3;
  dj_dec:=2;
  je_dec:=2;
  sl_fjh:=true;
  dj_fjh:=true;
  je_fjh:=true;
  printer_name:='';
  print_x:=0;
  print_y:=0;
  printNo:=true;
  b01:=false;
  b02:=false;
  b03:=false;
  b04:=false;
  b05:=false;
  b06:=false;
  b07:=false;
end;

//----------------------------------------------------------------------------
function Tfrm_main.GetRen(AXM:string):string;
begin
  frm_Ren.DBLookupComboBox1.Enabled:=false;
  frm_Ren.BitBtn3.Visible:=true;
  frm_Ren.Caption:='选择开票人或收款人';
  if frm_ren.ShowModal=mrOk then
  begin
    Result:=frm_ren.DBText3.Field.AsString;
  end else
  begin
    Result:=AXM;
  end;
  frm_Ren.DBLookupListBox1.Enabled:=True;
end;

function TFrm_main.getjldw(AJldw:string):string;
begin
  if frm_jldw.ShowModal=mrOk then
  begin
    if datam.jldwSet.State in [dsEdit,dsInsert] then
      datam.jldwSet.Post;
    result:=datam.jldwSetJLDW.AsString;
  end else
    Result:=AJLDW;
end;

function TFrm_main.GetKhmc(AKHMC:string):string;
begin
  frm_khgl.BitBtn7.Visible:=true;
  if frm_khgl.ShowModal=mrOk then
  begin
    Result:=datam.KHMXSetKHMC.AsString;
  end else
  begin
    Result:=AKHMC;
  end;
  datam.setcurMiss;
end;

{function TFrm_main.GetCpxx(var Cpxx:TCpxx):boolean;
begin
  frm_cpgl.BitBtn7.Visible:=true;
  if frm_cpgl.ShowModal=mrOk then
  begin
    cpxx.dm:=datam.CPMXSetCPDM.AsString;
    cpxx.cp:=datam.CPMXSetCPMC.AsString;
    cpxx.gg:=datam.CPMXSetCPGG.AsString;
    cpxx.dw:=datam.CPMXSetCPDW.AsString;
    cpxx.sl:=datam.CPMXSetdefaSL.AsFloat;
    cpxx.dj:=datam.CPMXSetdefaDJ.AsFloat;
    result:=true;
  end
  else begin
    result:=false;
  end;
  datam.setcurMiss;
end;  }


procedure Tfrm_main.showkpxx;
begin
  caption:='安徽省货物销售统一发票管理  ['+kpxx.Cur_Dwmc+']';
  statusbar1.Panels[1].Text:='日期:'+formatdatetime('yyyy年mm月dd日',now);
  statusbar1.Panels[2].Text:='税务登记证号:'+kpxx.Cur_TaxNo;
  statusbar1.Panels[3].Text:=' 开票单位名称:'+kpxx.Cur_Dwmc;
  frm_missgl.StatusBar1.Panels[0].Text:='当前开票单位名称:'+kpxx.Cur_Dwmc;
end;


procedure Tfrm_main.ToolButton6Click(Sender: TObject);
begin
  close;
end;

procedure Tfrm_main.FormActivate(Sender: TObject);
begin
{  if tag=0 then
  begin
    tag:=tag+1;
    
    datam.loadkpxxfj;
    
    if frm_Mission.ShowModal=mrOK then
    begin
      datam.loadkpxx;
      showkpxx;
    end else
    begin
      tag:=-1; //首次运行程序登录时取消,结束程序运行标志
      close;
    end;

  end;  }
end;

procedure Tfrm_main.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if tag=-1 then
    Canclose:=true
  else
  begin
    if Application.MessageBox('你真的要退出发票管理系统吗?', '询问', 
      MB_OKCANCEL + MB_ICONQUESTION + MB_TOPMOST) = IDOK then
      CanClose:=true
    else
      CanClose:=False;
  end;
end;

procedure Tfrm_main.Action1Execute(Sender: TObject);
begin
  close;
end;

procedure Tfrm_main.Action2Execute(Sender: TObject);
begin
  if frm_Mission.ShowModal=mrOk then
  begin
    datam.loadkpxx;  //读取开票单位信息
    showkpxx;
  end;
end;

procedure Tfrm_main.Action3Execute(Sender: TObject);
var bz:Boolean;
    ATaxNo:string;
label abc;
begin
  //新增开票单位
  frm_newDW.Edit1.Clear;
  frm_newDw.Edit2.Clear;
  frm_newDW.Edit3.Clear;
  frm_newDw.Edit4.Clear;
  frm_newDW.Edit5.Clear;
  frm_newDw.Edit6.Clear;
  frm_newDW.Edit7.Clear;
  frm_newDw.Edit8.Clear;
  abc:
  bz:=true;
  if frm_newDw.ShowModal=mrOk then
  begin
    bz:=bz and (length(trim(frm_newdw.Edit1.Text))=15);
    bz:=bz and (length(trim(frm_newdw.Edit2.Text))>=8);
    bz:=bz and (length(trim(frm_newdw.Edit3.Text))>=6);
    bz:=bz and (length(trim(frm_newdw.Edit4.Text))>=4);
    if bz then
    begin
       //
       ATaxNo:=frm_newdw.Edit1.Text;
       if Datam.MissionSet.Locate('TaxNo',ATaxNo,[]) then
       begin
         datam.MissionSet.Edit;
       end else
       begin
         datam.MissionSet.Append;
         datam.MissionSet.FieldByName('taxno').AsString:=ATaxNo;
       end;
       datam.MissionSet.FieldByName('DWMC').AsString:=frm_newDW.Edit2.Text;
       datam.MissionSet.FieldByName('bank').AsString:=frm_newDW.Edit3.Text;
       datam.MissionSet.FieldByName('bankno').AsString:=frm_newDW.Edit4.Text;
       datam.MissionSet.FieldByName('address').AsString:=frm_newDW.Edit5.Text;
       datam.MissionSet.FieldByName('photoNo').AsString:=frm_newDW.Edit6.Text;
       datam.MissionSet.FieldByName('sk_Ren').AsString:=frm_newDW.Edit7.Text;
       datam.MissionSet.FieldByName('kp_Ren').AsString:=frm_newDW.Edit8.Text;

       datam.MissionSet.Post;
       datam.MissionSet.UpdateBatch();
       Application.MessageBox('新增开票单位信息已经保存!', '提示', MB_OK +
         MB_ICONINFORMATION + MB_TOPMOST);
    end else
    begin
       Application.MessageBox('信息填写不完整或长度不正确,无法保存!' + 
         #13#10 + '请重新录入完成!', '提示', MB_OK + MB_ICONINFORMATION +
         MB_TOPMOST);
       goto abc;
    end;
  end;
  datam.setcurMiss;
end;

procedure Tfrm_main.Action6Execute(Sender: TObject);
begin
  //修改当开票单位信息
  frm_Mission.GroupBox1.Enabled:=true;
  frm_mission.Caption:='修改当前开票单位信息';
  frm_mission.DBLookupComboBox1.Enabled:=true;
  frm_mission.BitBtn1.Visible:=false;
  frm_Mission.BitBtn2.Caption:='保存';
  frm_mission.Label1.Caption:='请修改当前开票单位信息';
  if frm_mission.ShowModal=mrOk then
  begin
    update;
    //保存信息
    datam.MissionSet.UpdateBatch();
    datam.reloadkpxx;
    showkpxx;
  end else
  begin
    update;
    datam.MissionSet.CancelBatch();
    //恢复原来的信息
  end;
  frm_Mission.GroupBox1.Enabled:=false;
  frm_mission.Caption:='选择开票单位';
  frm_mission.DBLookupComboBox1.Enabled:=true;
  frm_mission.BitBtn1.Visible:=true;
  frm_Mission.BitBtn2.Caption:='确定';
  frm_mission.Label1.Caption:='请选择纳税人登记号:';
  datam.setcurMiss;
end;

procedure Tfrm_main.Action7Execute(Sender: TObject);
begin
  frm_kp.StatusBar1.Panels[0].Text:='新增';
  //开票
  if kpxx.Cur_TaxNo='' then
  begin
    Application.MessageBox('请选择开票单位!', '提示', MB_OK +
      MB_ICONINFORMATION + MB_TOPMOST);
    exit;
  end;
  if not frm_kp.newfp then
  begin
    Application.MessageBox(PChar('本单位发票已经全部用完了!' + #13#10 +
      '请重新购买发票后,并在发票管理中增加发票!'), PChar('提示'), MB_OK +
      MB_ICONINFORMATION + MB_TOPMOST);
    exit;
  end;

  //隐藏设置信息
  frm_kp.panel3.Visible:=false;
  frm_kp.panel4.Visible:=true;
  frm_kp.Panel5.Visible:=false;
  frm_kp.Panel5.Enabled:=false;
  frm_kp.clientheight:=386;
//  frm_kp.StatusBar1.Panels[0].Text:='新增';
  frm_kp.ShowModal;
end;

procedure Tfrm_main.FormCreate(Sender: TObject);
begin
  KPXX:=TCurXX.Create;

end;

procedure Tfrm_main.FormDestroy(Sender: TObject);
begin
  KPXX.Free;
end;

procedure Tfrm_main.Action5Execute(Sender: TObject);
begin
  //删除开票单位
  frm_mission.Caption:='删除开票单位';
  frm_mission.BitBtn1.Visible:=false;
  frm_Mission.BitBtn2.Caption:='删除';
  frm_mission.Label1.Caption:='请选择你要删除的开票单位';
  if frm_mission.ShowModal=mrOk then
  begin
    //开始删除
    if frm_mission.DBLookupComboBox1.Text=kpxx.Cur_TaxNo then
    begin
      Application.MessageBox('对不起,你不能删除正在使用的单位!', '提示', 
        MB_OK + MB_ICONINFORMATION + MB_TOPMOST);
    end else
    begin
       if Application.MessageBox(pchar('你真的要删除该开票单位及与该单位相关的资料吗?'
         + #13#10 + '单位:'+ frm_mission.DBEdit1.text
         + #13#10 + '税号:'+frm_mission.DBLookupComboBox1.text), '询问', MB_OKCANCEL +
         MB_ICONQUESTION + MB_DEFBUTTON2 + MB_TOPMOST) = IDOK then
       begin
         // 真的删除了
         update;
         datam.MissionSet.Delete;
         datam.MissionSet.UpdateBatch();

⌨️ 快捷键说明

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