PDA

View Full Version : خطا در recover کردن ارتباط در firedac



soft-c
جمعه 15 خرداد 1394, 12:08 عصر
من از تنظیمات firedac برای recover کردن ارتباط با sql server 2008 r2 زمانیکه اتصال قطع می شود استفاده می کنم و منتهی بعد از اینکه ارتباط برقرار می شود با این پیغام خطا روبرو می شوم :
131958

تنظیمات را هم به این صورت انجام داده ام :
1- استفاده از کامپوننت fdconnection با تنظیمات ذیل :
Server=AHMAD-PC
Database=DBOtomasion
Encrypt=No
OSAuthent=No
LoginTimeout=120
User_Name=sa
Password=*****
DriverID=MSSQL


FetchOptions.Mode (http://docwiki.embarcadero.com/Libraries/XE8/en/FireDAC.Stan.Option.TFDFetchOptions.Mode)

fmAll




FetchOptions.RowsetSize (http://docwiki.embarcadero.com/Libraries/XE8/en/FireDAC.Stan.Option.TFDFetchOptions.RowsetSize)

200 - 300




FetchOptions.AutoClose (http://docwiki.embarcadero.com/Libraries/XE8/en/FireDAC.Stan.Option.TFDFetchOptions.AutoClose)

True (the default)




TxOptions.AutoCommit (http://docwiki.embarcadero.com/Libraries/XE8/en/FireDAC.Stan.Option.TFDTxOptions.AutoCommit)

True




ResourceOptions.AutoReconnect (http://docwiki.embarcadero.com/Libraries/XE8/en/FireDAC.Stan.Option.TFDTopResourceOptions.AutoReco nnect)

True





2- استفاده از کامپوننت FDGUIxWaitCursor1
3- استفاده از کامپوننت FDPhysMSSQLDriverLink1 برای ارتباط با sql server
4- و در کامپوننت fdeconnection و در onrecover از کد زیر استفاده کردم :



var
iRes: Integer;
begin
iRes := MessageDlg('Connection is lost. Offline - yes, Retry - ok, Fail - Cancel',
mtConfirmation, [mbYes, mbOK, mbCancel], 0);
case iRes of
mrYes: AAction := faOfflineAbort;
mrOk: AAction := faRetry;
mrCancel: AAction := faFail;
end;
ShowMessage('Connection is recovering');

soft-c
چهارشنبه 20 خرداد 1394, 17:15 عصر
آقا من مشکل قبلی را حل کردم ولی بعد از اون به یک مشکل دیگه برخوردم .
در لحظه ای که یک sp اجرا میشه و ارتباط قطع میشه خروجی sp دچار مشکل میشه و خروجی اطلاعات را درست نمایش نمیده .
آیا برای لحظه ای که ارتباط وصل میشه باید تنظیمی انجام بدهیم که این اتفاق نیفتد ؟
لطفا کمک کنید ..................................