線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1962
推到 Plurk!
推到 Facebook!

pdate的type是datatime時如何如何取出年,月,日

答題得分者是:timhuang
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-06-11 08:56:54 IP:203.69.xxx.xxx 未訂閱
1:pdate的type是datatime時如何如何取出年,月,日 2:OR年 月 OR年 月 日
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-06-11 09:09:53 IP:147.8.xxx.xxx 未訂閱
var
    P: PDate;
    YY,MM,DD: word;
    {...}
    DecodeDate(P^,YY,MM,DD);
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-06-11 09:13:37 IP:203.95.xxx.xxx 未訂閱
你是要問從資料庫帶出欄位的資料嗎? 可以這樣作:    
var
  y, m, d: Word;
begin
  DecodeDate(Query1.FieldByName('pdate').AsDateTime, y, m, d);
  //其中 y, m, d 為年月日!!      //另外有 FormatDateTime 可以用如
  ShowMessage(FormatDateTime('yyyy/mm/dd', Query1.FieldByName('pdate').AsDateTime));
end;
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-06-11 10:50:07 IP:203.69.xxx.xxx 未訂閱
引言: 你是要問從資料庫帶出欄位的資料嗎? 可以這樣作:
var
  y, m, d: Word;
begin
  DecodeDate(Query1.FieldByName('pdate').AsDateTime, y, m, d);
  //其中 y, m, d 為年月日!!      //另外有 FormatDateTime 可以用如
  ShowMessage(FormatDateTime('yyyy/mm/dd', Query1.FieldByName('pdate').AsDateTime));
end;
APPRICE是:NUMERIC 如何將 floattostr(QRep1.DataSet.FieldByName('APPRICE').AsFloat)取出的金額前面補0,固定9位 例:結果是 .....1234是APPRICE的值,如何得到000001234 結果是 .....12345是APPRICE的值,如何得到000012345
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-06-11 11:15:11 IP:203.95.xxx.xxx 未訂閱
麻請配合一下規定. 本問題結束, 請先結案, 若有其他的問題, 請再開另外主題.    這次先回答你後面的問題, 下次要麻煩你配合哦!    RightStr('000000000'+floattostr(QRep1.DataSet.FieldByName('APPRICE').AsFloat), 9) 即可!    RightStr 在 StrUtils unit 中, 若使用 delphi 5 可以參考下面 RightStr 的定義:
function RightStr(const AText: AnsiString; const ACount: Integer): AnsiString; overload;
begin
  Result := Copy(WideString(AText), Length(WideString(AText))   1 - ACount, ACount);
end;
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-06-11 12:50:22 IP:203.69.xxx.xxx 未訂閱
引言: 麻請配合一下規定. 本問題結束, 請先結案, 若有其他的問題, 請再開另外主題. 這次先回答你後面的問題, 下次要麻煩你配合哦! RightStr('000000000' floattostr(QRep1.DataSet.FieldByName('APPRICE').AsFloat), 9) 即可! RightStr 在 StrUtils unit 中, 若使用 delphi 5 可以參考下面 RightStr 的定義:
function RightStr(const AText: AnsiString; const ACount: Integer): AnsiString; overload;
begin
  Result := Copy(WideString(AText), Length(WideString(AText))   1 - ACount, ACount);
end;
我下次會改進,我改成 sL811:=RightStr('000000000' floattostr(QRep1.DataSet.FieldByName('APPRICE').AsFloat), 9); 出現 Undeclared identifier ?
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-06-11 13:01:17 IP:203.69.xxx.xxx 未訂閱
引言: 麻請配合一下規定. 本問題結束, 請先結案, 若有其他的問題, 請再開另外主題. 這次先回答你後面的問題, 下次要麻煩你配合哦! RightStr('000000000' floattostr(QRep1.DataSet.FieldByName('APPRICE').AsFloat), 9) 即可! RightStr 在 StrUtils unit 中, 若使用 delphi 5 可以參考下面 RightStr 的定義:
function RightStr(const AText: AnsiString; const ACount: Integer): AnsiString; overload;
begin
  Result := Copy(WideString(AText), Length(WideString(AText))   1 - ACount, ACount);
end;
我下次會改進,謝謝妳的回答...問題已完成了,要use StrUtils ..^-^
系統時間:2024-06-27 1:47:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!