改寫某段del語法請教 |
|
jiannrong
一般會員 發表:58 回覆:36 積分:18 註冊:2002-05-09 發送簡訊給我 |
我這裡有段語法 之前的人是用table元件寫的
若我想要改成Query元件 請教一下
1. SavePlace :=DM.DSFday.DataSet.GetBookmark;
若是使用Query 要如何寫呢
2. DM.DSFday.DataSet.GotoBookmark(SavePlace);
若是使用Query 要如何寫呢
3. DM.DSFday.DataSet.Next;
若是Query 是不是 DM.Query.Next呢
4. DM.DSFday.DataSet.First;
若是Query 是不是 DM.Query.First呢 除了這些 我有哪些要注意的地方呢
謝謝 procedure TFormfday.BitBtnFDel1Click(Sender: TObject);
var SavePlace: TBookmark;
Year, Month, Day, w: Word;
Date1,Date2,Date:TDateTime;
isdel,needbm:Boolean;
begin
DecodeDate(Now, Year, Month, Day);
Date1:=StrToDate(format('%0.4d/%0.2d/01',[Year,Month]));
Date2:=StrToDate(format('%0.4d/%0.2d/01',[Year 1,Month]))-1; //is need bookmark or not
needbm:=true;
Date:=DM.DSFday.DataSet.FieldByName('FDAY').AsDatetime;
w:=DayOfWeek(Date);
if (Date>=Date1) and (Date<=Date2) and
(((CheckBox1.checked=true) and (w=7)) or
((CheckBox2.checked=true) and (w=1))) then needbm:=false; DM.DSFday.DataSet.DisableControls;
if (needbm=true) then
SavePlace :=DM.DSFday.DataSet.GetBookmark; try
DM.DSFday.DataSet.First;
while DM.DSFday.DataSet.Eof <> true do begin
isdel:=false;
Date:=DM.DSFday.DataSet.FieldByName('FDAY').AsDatetime;
if (Date>=Date1) and (Date<=Date2) then begin
w:=DayOfWeek(Date);
if ((CheckBox1.checked=true) and (w=7)) or
((CheckBox2.checked=true) and (w=1)) then begin
DM.DSFday.DataSet.Delete;
isdel:=true;
end;
end;
if isdel=false then DM.DSFday.DataSet.Next;
end;
finally
if (needbm=true) then begin
DM.DSFday.DataSet.GotoBookmark(SavePlace);
DM.DSFday.DataSet.FreeBookmark(SavePlace);
end;
DM.DSFday.DataSet.EnableControls;
end;
end;
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
paul
初階會員 發表:8 回覆:82 積分:28 註冊:2002-04-14 發送簡訊給我 |
|
jiannrong
一般會員 發表:58 回覆:36 積分:18 註冊:2002-05-09 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |