| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1497 人关注过本帖
标题:请教关于简化程序的问题(encodedate)????
只看楼主 加入收藏
liuqiang_sy
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-3-13
收藏
 问题点数:0 回复次数:3 
请教关于简化程序的问题(encodedate)????

var
Form1: TForm1;
year,month,day:word;
date:tdate;
s1,s2:string;
implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);

begin
begin
date:=now;
decodedate(date,year,month,day);
edit1.Text:=inttostr(year);
edit2.Text:=inttostr(month);
edit3.Text:=inttostr(day);

 {if month<10 then
   s1:=inttostr(year)+'0'+inttostr(month)
  else
   s1:=inttostr(year)+inttostr(month);
  if day<10 then
   s2:=s1+'0'+inttostr(day)
  else
   s2:=s1+inttostr(day);
edit4.Text:=s2;}
end;
end;
end.

带括号部分怎么样才可以简化一样用encodedate是不是可以完成输出当前日期.

搜索更多相关主题的帖子: encodedate inttostr month year 
2007-03-13 18:17
stars_chen
Rank: 1
等 级:新手上路
威 望:1
帖 子:45
专家分:0
注 册:2006-11-15
收藏
得分:0 
DateUtils :要添加到uses列中.

我覺得,用這些函數做的話更簡單.
DateOf : 將指定DateTime格式中的日期格式取出
TimeOf : 將指定DateTime格式中的時間格式取出
WeeksInYear : 判斷一年中有幾周
YearOf : 將指定DateTime格式中的年份格式取出
MonthOf : 將指定DateTime格式中的月份格式取出
WeekOf : 返回指定日期為該年第幾周
DayOf : 將指定DateTime格式中的日期格式取出
HourOf : 取得DateTime格式中的小時數
MinuteOf : 取得DateTime格式中的分鍾數
SecondOf : 取得DateTime格式中的秒數
StartOfTheYear : 取出該年起始的日期
EndOfTheYear : 取出該年結束的日期
StartOFtheMonth(Date) : 判斷是否為月初第一天
EndOfTheMonth(Date) : 判斷是否為月末最後一天

2007-03-14 17:24
liuqiang_sy
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-3-13
收藏
得分:0 
DATAOf这些函数我用了不好用啊!出错所以我就用这个了.

2007-03-14 18:51
liuqiang_sy
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-3-13
收藏
得分:0 

private
{ Private declarations }
public
{ Public declarations }
// procedure initiate;
procedure savetoordertable;
procedure makebooknumber;
// procedure printbook;
procedure savetoflighttable;
end;

var
Book: TBook;
booknumber:string;

implementation
uses mainview,
flightquery,
cityflightquery;

{$R *.dfm}
//************订票子窗口*****************
procedure TBook.QueryButtonClick(Sender: TObject);
begin
CityQuery.ShowModal;
end;

//************关闭子窗口*****************
procedure TBook.ExitButtonClick(Sender: TObject);
begin
close;
end;
//*************点确定键后执行更新动作****************
procedure TBook.OkButtonClick(Sender: TObject);
begin
makebooknumber; //生成订单号
// booknumber:='00010000100020003';
savetoordertable; //更新订单数据库
savetoflighttable; //更新航班数据库
end;
*********生成订单号****************
procedure TBook.makebooknumber;
var
oldnumber:string;
s1,s2,s3:string;
year,month,day,t:integer;
begin
year:=yearof(now);
month:=monthof(now);
day:=dayof(now);
s1:=inttostr(year);
if month<10 then
s1:=s1+'0'+inttostr(month)
else
s1:=s1+inttostr(month);
if day<10 then
s1:=s1+'0'+inttostr(day)
else
s1:=s1+inttostr(day);
query1.close;
query1.sql.clear;
query1.sql.Add('select * from bookorder');
query1.open;

if not query1.eof then
begin
query1.Last;
oldnumber:=query1.fieldByname('OrdNo').asstring;
s2:=copy(oldnumber,1,8);
if s1=s2 then
begin
s2:=copy(oldnumber,9,12);
t:=strtoint(s2);
t:=t+1;
if t<10 then
s3:='000'+inttostr(t)
else if t<100 then
s3:='00'+inttostr(t)
else if t<1000 then
s3:='0'+inttostr(t)
else
s3:=inttostr(t);
end
else
s3:='0001';
end
else
s3:='0001';
query1.Close;
booknumber:=s1+s3;
这里有procedure savetoordertable;
procedure makebooknumber;
procedure savetoflighttable;
前面声名的后面是怎么调用的.
makebooknumber; //生成订单号
// booknumber:='00010000100020003';
savetoordertable; //更新订单数据库
savetoflighttable; //更新航班数据库
end;这几条是怎么调用的啊1


2007-03-14 18:54
快速回复:请教关于简化程序的问题(encodedate)????
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023589 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved