程式重新開啟發現資料庫無法正常更新 |
尚未結案
|
connection
一般會員 發表:5 回覆:8 積分:2 註冊:2005-07-19 發送簡訊給我 |
各位大大,
目前發現一個錯誤,因為程式明天就要上線,麻煩各位大大幫個忙
步驟一=>更新鈕:
procedure TForm_GS201_I.BitBtn_UpdateClick(Sender: TObject);
begin
StatusBar1.Panels[5].Text := '更新' ;
EditEnabledStatus;
qryOVRSPD.Edit ;
DBEdit_CARNO.SetFocus ;
BitBtn3.Enabled:=True ; //查詢影像圖檔(create form2)
end; 步驟二:查詢影像圖檔
procedure TForm_GS201_I.BitBtn3Click(Sender: TObject);
begin
frmCheckImg:= TfrmCheckImg.Create(self);
frmCheckImg.Tag:= 0 ;
frmCheckImg.ShowModal;
if (StatusBar1.Panels[5].Text = '更新') then
DBEdit_CARNO.SetFocus;
end;
end.
影像form2程式如下:
public
ImgN,ImgN1,ImgN2,ImgN3: string;
{ Public declarations }
end; var
frmCheckImg: TfrmCheckImg; implementation uses uDM_Package, uGS201; {$R *.dfm} procedure TfrmCheckImg.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action :=cafree ;
end; procedure TfrmCheckImg.Query2CalcFields(DataSet: TDataSet);
begin
Query2.FieldByName('Time').AsDateTime:=Query2.FieldByName('時間').AsDateTime;
Query2.FieldByName('Place').AsString:='高雄港碼頭';
end; procedure TfrmCheckImg.FormShow(Sender: TObject);
var
S1,S2,S3:TBlobStream;
JPEG1,JPEG2,JPEG3:TJpegImage;
begin
query2.Active:=True;
DM_Package.qryRBIMG_P.Close;
DM_Package.qryRBIMG_P.SQL.Clear;
DM_Package.qryRBIMG_P.SQL.Add('Select * from RBIMG_P ');
DM_Package.qryRBIMG_P.SQL.Add('where CARNO=:CARNO');
DM_Package.qryRBIMG_P.ParamByName('CARNO').AsString:=Form_GS201_I.DBEdit_CARNO.Text;
DM_Package.qryRBIMG_P.Open;
query2.Close;
query2.SQL.Clear;
query2.SQL.Add('Select * from 違規資料 ');
query2.SQL.Add('where 檔案名稱='''+DM_Package.qryRBIMG_P.FieldByName('FNAME').AsString +'''');
query2.Prepare;
query2.Open;
try
S1:=TBlobStream.Create(TBlobField(DM_Package.qryRBIMG_P.FieldByName('PIC1')),bmRead);
jpeg1:=TJpegImage.Create;
jpeg1.LoadFromStream(S1);
Image1.Picture.Assign(jpeg1); S2:=TBlobStream.Create(TBlobField(DM_Package.qryRBIMG_P.FieldByName('PIC2')),bmRead);
jpeg2:=TJpegImage.Create;
jpeg2.LoadFromStream(S2);
Image2.Picture.Assign(jpeg2);
S3:=TBlobStream.Create(TBlobField(DM_Package.qryRBIMG_P.FieldByName('PIC3')),bmRead);
jpeg3:=TJpegImage.Create;
jpeg3.LoadFromStream(S3);
Image3.Picture.Assign(jpeg3);
finally
S1.Free;
S2.Free;
S3.Free;
jpeg1.Free;
jpeg2.Free;
jpeg3.Free;
end;
end; procedure TfrmCheckImg.bnCloseClick(Sender: TObject);
begin
query2.Close;
close;
end;
end.
步驟三:回到form1,更正資料,例如更改車號後,按=>確定鈕
DM_Package.DB_Package.StartTransaction ;
systemdate := DM_Package.GetSystemDate ; //取得Database日期
if (StatusBar1.Panels[5].Text = '更新') then
begin
if qryOVRSPD.State in [dsEdit,dsInsert] then
begin
try
qryOVRSPD.Post ;
except
ShowMessage('OVRSPD更新檔案失敗, 請通知系統管理人員!!') ;
Exit ;
end;
end;
end;
old_idate := qryOVRSPD.FieldByName('IDATE').ASString ;
old_itime := qryOVRSPD.FieldByName('ITIME').ASString ;
old_cdkind := qryOVRSPD.FieldByName('CDKIND').ASString ;
old_spdlmt := qryOVRSPD.FieldByName('SPDLMT').ASString ;
old_pcode := qryOVRSPD.FieldByName('PCODE').ASString ;
old_pcodename := qryOVRSPD.FieldByName('PCODENAME').ASString ;
old_ircode := qryOVRSPD.FieldByName('IRCODe').ASString ;
old_irname := qryOVRSPD.FieldByName('IRNAME').ASString ;
old_rulef1 := qryOVRSPD.FieldByName('RULEF1').ASString ;
old_ruleg1 := qryOVRSPD.FieldByName('RULEG1').ASString ;
old_ruleg1name := qryOVRSPD.FieldByName('RULEG1NAME').ASString ;
old_rulef2 := qryOVRSPD.FieldByName('RULEF2').ASString ;
old_ruleg2 := qryOVRSPD.FieldByName('RULEG2').ASString ;
old_ruleg2name := qryOVRSPD.FieldByName('RULEG2NAME').ASString ;
old_projcode := qryOVRSPD.FieldByName('PROJCODE').ASString ;
old_rulei := qryOVRSPD.FieldByName('RULEI').ASString ;
old_ruleiname := qryOVRSPD.FieldByName('RULEINAME').ASString ;
DM_Package.DB_Package.Commit ; 步驟四:
這時候form1主畫面的資料會作更新動作,但是如果這時接著按"查詢影像圖檔",則錯誤訊息會出現"jpeg error#41"
而不管有沒有按"查詢影像圖檔"鈕,更新完後,畫面資料上表面上是有更新,但程式結束後重新再開啟就發現資料庫根本沒更新,請問各位大大,是否可幫忙解決這個問題?~~感激~~ < >< > 發表人 - cashxin2002 於 2005/10/31 14:07:01
|
cd109
一般會員 發表:23 回覆:33 積分:11 註冊:2003-12-22 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
connection
一般會員 發表:5 回覆:8 積分:2 註冊:2005-07-19 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |