
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
ミドルウェアは?
ADO?RDO?
下記で取れませんか?
ADOの場合。
Dim WithEvents adocon As ADODB.Connection
Private Sub adocon_Disconnect(adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection)
'処理を記述
End Sub
RDOの場合。
Dim WithEvents rdocon As RDO.rdoConnection
Private Sub rdocon_Disconnect()
'処理を記述
End Sub
なんとなく、無理そうですが。
No.4
- 回答日時:
自分のDBアプリの作るときのやり方ですが
接続しっぱなしではなくて必要なときに接続して
必要なくなったらすぐに閉じます。
画面にDBの情報を出したいときに接続して
表示したら接続を切りデータをいじりたいときや
追加したいときに接続してその処理が終了したら
すぐに切ります。
ですからフォームを閉じる時って状態まで
接続しっぱなしにはしないですね。
No.3
- 回答日時:
>ある画面のフォームを閉じたときにDBのワークを削除する処理が
unloadイベントでその処理をやっていると言うことですか?
とりあえずのその処理周りをワンステップずつ確認しながら
実行してみるのは?
この回答への補足
unloadイベントでワークを削除しています。
ただ、(メタフレームを利用しているため)セッションが切れてしまうとUnloadイベントは処理されないのです。
なのでDBとの接続のセッションが切れるタイミングをなんとか取りたいと考えています。ただ、そのイベントを取得してワークを削除する処理を実行したらまたセッションが維持されますね。。。
No.2
- 回答日時:
>セッションが切れる瞬間のイベント
切れる時のイベントはないと思うのですが
例えば
Dim rcd As Long
On Local Error Resume Next
・・処理・・
rcd = Err
On Local Error GoTo 0
If rcd <> 0 Then
・・・
end
のようにエラーをトラップするとか
ADOのエラーコレクションを使ってado宣言名.errors.countでエラーの数を参照するとか。
この回答への補足
やはりセッションが切れるタイミングのイベントってないんですね・・・。
困りました…
状況としましては、プログラム的には問題なく動いていて、エラーとラップを利用して回避できるような状況ではないんです。
セッションが切れる瞬間にDBのワークを削除してからセッションが切れるというのが理想なんです。でも実現したとしても、DB削除が実行されたらセッションは持続されますね・・・仕様的に問題なのか疑問もありますが。

No.1
- 回答日時:
こんにちは。
どんな不具合か分かりませんが、エラーになるのなら
On Error Resumn Next や On Error Goto 等でエラー処理をすればいいのでは?
この回答への補足
記述が少なくてすみません。
システムエラーなどの不具合ではないんです。
これはシステムの構造的な問題なのですが、
ある画面のフォームを閉じたときにDBのワークを削除する処理が
実行されているのですが、その処理が実行されずに
セッションが切れてしまうと次回起動時にワークにデータが
残っているため起動できないという現象が発生してしまうんです。
ただ、起動時に削除するわけにはいかない仕様が盛り込まれているため、
セッションタイムアウト時のイベントがどうしても取得したいのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【C#/Java?】try-catchでcatch...
-
C++ Builder6.0 TNMFTPコンポー...
-
どう増強すべきか
-
【Vb.net】プリンタジョブの取得
-
vbaのエラー対応(実行時エラー...
-
“try/catch”と“if/else”
-
シグナル 6(SIGABRT)とは?
-
c# の try の入れ子
-
VBA マクロ 英語版WINDOWSで全...
-
EXCEL-VBAでキー入力で処理を分...
-
エクセル VBAで複数セル選択時...
-
ドリブン??
-
private subモジュールを他のモ...
-
Linux(CentOS)にでcronとシェル...
-
ExcelVBAのコントロールの種類...
-
VBA シートのボタン名を変更し...
-
Wordテキストコントロールが未...
-
クリックイベントなのに、2回ク...
-
実行時エラー 438になった時の...
-
worksheetFunctionクラスのVloo...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【C#/Java?】try-catchでcatch...
-
private subモジュールを他のモ...
-
どう増強すべきか
-
Excel VBA セルの名前があるか...
-
vbaのエラー対応(実行時エラー...
-
IF文に時間(何時から何時ま...
-
特定の名前のオートシェイプの...
-
シグナル 6(SIGABRT)とは?
-
マクロで、次のコードへ行く前...
-
どうやってもFor文を抜けてしま...
-
【Vb.net】プリンタジョブの取得
-
特定のファイルを他のプロセス...
-
VB6にてネットワーク上にある共...
-
シェルスクリプトでファイル内...
-
【VBA】エラー処理で別プロシー...
-
cobolのコントロールブレイク
-
Functionで戻り値を複数返す方法
-
エクセル VBAで複数セル選択時...
-
【C#】Page_Loadさせない方法に...
-
ExcelのVBAで、選択したファイ...
おすすめ情報