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

📄 floor.pas

📁 一个实用的房地产行业收费管理软件
💻 PAS
📖 第 1 页 / 共 5 页
字号:
unit floor;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, Menus, ComCtrls, ExtCtrls, Grids, DBGridEh,
  comobj,Mask, DBCtrlsEh, PrnDbgeh, FR_DSet, FR_DBSet, FR_Class;

type
  TForm1 = class(TForm)
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    Bevel2: TBevel;
    Bevel3: TBevel;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    N8: TMenuItem;
    N9: TMenuItem;
    Label18: TLabel;
    DBComboBoxEh2: TDBComboBoxEh;
    Label19: TLabel;
    DBComboBoxEh3: TDBComboBoxEh;
    Label20: TLabel;
    DBComboBoxEh4: TDBComboBoxEh;
    DBGridEh1: TDBGridEh;
    DBGridEh2: TDBGridEh;
    BitBtn9: TBitBtn;
    BitBtn10: TBitBtn;
    BitBtn11: TBitBtn;
    BitBtn12: TBitBtn;
    Bevel1: TBevel;
    DBGridEh3: TDBGridEh;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    BitBtn8: TBitBtn;
    BitBtn13: TBitBtn;
    Bevel4: TBevel;
    Label7: TLabel;
    DBComboBoxEh1: TDBComboBoxEh;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn14: TBitBtn;
    BitBtn16: TBitBtn;
    BitBtn17: TBitBtn;
    Bevel5: TBevel;
    Bevel7: TBevel;
    BitBtn18: TBitBtn;
    BitBtn19: TBitBtn;
    Label35: TLabel;
    BitBtn20: TBitBtn;
    PrintDBGridEh1: TPrintDBGridEh;
    BitBtn15: TBitBtn;
    BitBtn21: TBitBtn;
    DBComboBoxEh7: TDBComboBoxEh;
    BitBtn22: TBitBtn;
    BitBtn23: TBitBtn;
    frReport1: TfrReport;
    frDBDataSet1: TfrDBDataSet;
    frReport2: TfrReport;
    frDBDataSet2: TfrDBDataSet;
    Label1: TLabel;
    Edit1: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    Edit3: TEdit;
    Label5: TLabel;
    DBNumberEditEh1: TDBNumberEditEh;
    Label6: TLabel;
    DBNumberEditEh2: TDBNumberEditEh;
    Label8: TLabel;
    DBNumberEditEh3: TDBNumberEditEh;
    Label11: TLabel;
    DBNumberEditEh4: TDBNumberEditEh;
    Label12: TLabel;
    Label13: TLabel;
    DBNumberEditEh5: TDBNumberEditEh;
    Label14: TLabel;
    Label15: TLabel;
    DBNumberEditEh6: TDBNumberEditEh;
    Label16: TLabel;
    Label17: TLabel;
    DBNumberEditEh7: TDBNumberEditEh;
    DBNumberEditEh8: TDBNumberEditEh;
    DBNumberEditEh9: TDBNumberEditEh;
    Label21: TLabel;
    Label22: TLabel;
    Label23: TLabel;
    DBNumberEditEh10: TDBNumberEditEh;
    DBNumberEditEh11: TDBNumberEditEh;
    DBNumberEditEh12: TDBNumberEditEh;
    Label24: TLabel;
    DBNumberEditEh13: TDBNumberEditEh;
    Label25: TLabel;
    DBNumberEditEh14: TDBNumberEditEh;
    Label26: TLabel;
    Label27: TLabel;
    DBNumberEditEh15: TDBNumberEditEh;
    Label28: TLabel;
    Edit4: TEdit;
    Label29: TLabel;
    Label30: TLabel;
    DBNumberEditEh16: TDBNumberEditEh;
    DBNumberEditEh17: TDBNumberEditEh;
    DBNumberEditEh18: TDBNumberEditEh;
    DBNumberEditEh19: TDBNumberEditEh;
    BitBtn24: TBitBtn;
    Label9: TLabel;
    Label10: TLabel;
    DBDateTimeEditEh1: TDBDateTimeEditEh;
    DBDateTimeEditEh2: TDBDateTimeEditEh;
    Label31: TLabel;
    Label32: TLabel;
    Edit5: TEdit;
    Edit6: TEdit;
    ListBox1: TListBox;
    BitBtn25: TBitBtn;
    BitBtn26: TBitBtn;
    ListBox2: TListBox;
    ListBox3: TListBox;
    ListBox4: TListBox;
    BitBtn27: TBitBtn;
    BitBtn28: TBitBtn;
    BitBtn29: TBitBtn;
    BitBtn30: TBitBtn;
    Label2: TLabel;
    Label33: TLabel;
    Label34: TLabel;
    Label36: TLabel;
    Label37: TLabel;
    Label38: TLabel;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Edit10: TEdit;
    Edit11: TEdit;
    Edit12: TEdit;
    Edit13: TEdit;
    Edit2: TEdit;
    Label39: TLabel;
    DBNumberEditEh20: TDBNumberEditEh;
    DBComboBoxEh5: TDBComboBoxEh;
    Label40: TLabel;
    procedure N9Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure FormDestroy(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn13Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure BitBtn16Click(Sender: TObject);
    procedure BitBtn18Click(Sender: TObject);
    procedure Edit10Exit(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn17Click(Sender: TObject);
    procedure DBGridEh3TitleBtnClick(Sender: TObject; ACol: Integer;
      Column: TColumnEh);
    procedure DBGridEh1TitleBtnClick(Sender: TObject; ACol: Integer;
      Column: TColumnEh);
    procedure BitBtn8Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure BitBtn20Click(Sender: TObject);
    procedure BitBtn19Click(Sender: TObject);
    procedure DBGridEh3KeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn15Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure DBGridEh1KeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn21Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn14Click(Sender: TObject);
    procedure BitBtn12Click(Sender: TObject);
    procedure BitBtn9Click(Sender: TObject);
    procedure BitBtn11Click(Sender: TObject);
    procedure BitBtn10Click(Sender: TObject);
    procedure BitBtn23Click(Sender: TObject);
    procedure BitBtn22Click(Sender: TObject);
    procedure BitBtn24Click(Sender: TObject);
    procedure Edit2Exit(Sender: TObject);
    procedure DBGridEh2CellClick(Column: TColumnEh);
    procedure DBGridEh2ColExit(Sender: TObject);
    procedure Edit4KeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn25Click(Sender: TObject);
    procedure BitBtn26Click(Sender: TObject);
    procedure BitBtn27Click(Sender: TObject);
    procedure BitBtn29Click(Sender: TObject);
    procedure BitBtn28Click(Sender: TObject);
    procedure BitBtn30Click(Sender: TObject);
    procedure DBNumberEditEh20Exit(Sender: TObject);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure DBGridEh2GetCellParams(Sender: TObject; Column: TColumnEh;
      AFont: TFont; var Background: TColor; State: TGridDrawState);
//    function num2str(ls: Extended): String;    

  private
    { Private declarations }
    edit_state:integer;

  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
uses maindata, custom, ufloor, sd;
{$R *.dfm}

function num2str(ls: Extended): String;
var  
  dx_sz,dx_dw,str_int,str_dec,dx_str,fu:string;  
  a,b,b2,c,d:string;  
  num_int,num_dec,len_int,a_int,pp:Int64;  
  i: Integer;  
//dx_str为返回字符串  
begin  
  dx_sz:='零壹贰叁肆伍陆柒捌玖';  
  dx_dw:='万仟佰拾万仟佰拾亿仟佰拾万仟佰拾元';  
  //处理金额小于零情况  
  if ls<0then 
begin 
ls:=ls*(-1); 
fu:='负'; 
end 
else 
fu:=''; 
//取得整数值及整数串 
dx_str := FloatToStrF(ls,ffGeneral,20,0); 

if(ls>0)and(ls<1)then 
dx_str:='0'+dx_str; 
pp:=pos('.',dx_str); 
if pp>0 then  
    str_int:=copy(dx_str,1,pos('.',dx_str)-1)  
  else  
    str_int:=dx_str;  
  num_int:=strtoint64(str_int);  
  //取得小数值及小数串  
  if(ls>0)and(ls<1)then 
num_dec := StrToInt64(FloatToStr(100 * ls)) 
else 
//数字太大并且有小数时这一行会有错误. 
num_dec:=StrToInt64(FloatToStr(100 * (ls-num_int))); 
if num_dec=100 then //产生了进位 
begin 
num_dec := 0; 
num_int := num_int + 1; 
str_int := IntToStr(num_int); 
end; 
str_dec:=inttostr(num_dec); 

len_int:=Length(str_int); 
dx_str:=''; 
//转换整数部分 
for i:=1 to len_int do 
begin 
//a为小写数字字符,b为对应的大写字符 
//c为对应大写单位,d为当前大写字符串的最后一个汉字 
a:=copy(str_int,i,1); 
a_int:=strtoint64(a); 
b:=copy(dx_sz,(a_int*2+1),2); 
c:=copy(dx_dw,((17-len_int+i-1)*2+1),2); 

if dx_str<>''then  
      d:=copy(dx_str,Length(dx_str)-1,2)  
    else d:='';  

    if(b='零')and((d='零')or(b=b2)or(c='元')or(c='万')or(c='亿'))then b:='';  
    if(a='0')and(c<>'元')and(c<>'万')and(c<>'亿')then c:='';  
    if((c='元')or(c='万')or(c='亿'))and(d='零')and(a='0')then  
    begin  
      dx_str:=copy(dx_str,1,Length(dx_str)-2);  
      d:=copy(dx_str,Length(dx_str)-1,2);  
      if((c='元')and(d='万'))or((c='万')and(d='亿'))then c:='';  
    end;  
    dx_str:=dx_str+b+c;  
    b2:=b;  
  end;  
  //处理金额小于1的情况  
  if Length(dx_str)<=2 then dx_str:=''; 
//转换小数部分 
if(num_dec<10)and(ls>0)then  
  begin  
    a_int:=strtoint64(str_dec);  
    b:=copy(dx_sz,(a_int*2+1),2);  
    if num_dec=0 then dx_str:=dx_str;//+'整';  
    if num_dec>0 then dx_str:=dx_str+'零'+b+'分';  
  end;  
  if num_dec>=10 then  
  begin  
    a_int:=strtoint64(copy(str_dec,1,1));  
    a:=copy(dx_sz,(a_int*2+1),2);  
    a_int:=strtoint64(copy(str_dec,2,1));  
    b:=copy(dx_sz,(a_int*2+1),2);  

    if a<>'零'then a:= a+'角';  

    if b<>'零'then b:=b+'分'  
    else b:='';  

    dx_str:=dx_str+a+b;  
  end;  

  if ls=0 then dx_str:='零元/;//整';  
  dx_str:=fu+dx_str;

  //函数返回字符串  
  Result:=dx_str + '整';  
end;  

procedure TForm1.N9Click(Sender: TObject);
begin
  form3:=tform3.Create(self); 
  form3.showmodal;
end;

procedure TForm1.FormShow(Sender: TObject);
var

years,months,days:word;
begin
with datamodule1.searchq do
begin
 sql.clear;
 sql.Add('select * from company');
 open;
end;
with datamodule1.htQ do
begin
 sql.clear;
 sql.Add('select * from ht');
 open;
end;
with datamodule1.sdq do
begin
 sql.clear;
 sql.Add('select * from sd');
 open;
end;
with  datamodule1.floorQ do
begin
 sql.clear;
 sql.add('select * from floor');
 open;
 first;
end;
//for nn:=1 to dbcomboboxeh1.Items.Count do
//  dbcomboboxeh1.Items.Delete(nn-1);
while not datamodule1.floorQ.Eof do
begin
dbcomboboxeh1.Items.Add(datamodule1.floorQ.fieldbyname('floorname').asstring);
dbcomboboxeh2.Items.Add(datamodule1.floorQ.fieldbyname('floorname').asstring);
dbcomboboxeh7.Items.Add(datamodule1.floorQ.fieldbyname('floorname').asstring);
datamodule1.floorQ.Next;
end;
decodedate(date,years,months,days);
dbcomboboxeh3.Text:=inttostr(years);

⌨️ 快捷键说明

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