2

マルチユーザー環境で使用されている Access 2007 に関するすべての情報/さまざまなオプションを整理するのに問題があります。ここで私の現在の状況を簡単に説明します。職場には「ビジネス LAN」があり、ログオンして、リモート デスクトップ経由で他の 2 台のサーバーを監視するために使用できます。ビジネス LAN は IT 部門によって厳重に管理されており、同意なしにソフトウェアやドライバーをインストールすることはできません。ただし、両方のサーバーで管理者権限を持っています。

私が RD を使用してログオンしている 2 台のサーバーは、基本的に同じタスクに使用されます。つまり、異なるプロセス ラインへの熱を監視および制御します。各サーバーは異なるプログラムを実行してこのタスクを実行しますが、どちらのプログラムも SQL Server をバックエンドとして使用します。

これらのプログラムのバックエンド SQL 側から情報を照会し、テーブルにまとめた関連情報と組み合わせて詳細を追加するために、2 つのアクセス データベースを作成しました (現在、これらのデータベースは個別のファイアウォールの背後にあるため、各サーバーに 1 つ)。プログラムが収集しているデータ。私のプログラムはまだデバッグ段階にありますが、最終的にはフィールド技術者や保守担当者がこの情報にアクセスして、作業を容易にすることができます。メンテナンス スタッフは、修理などのステータスに基づいて、さらに多くの情報を追加することもできます。最後に、自分のエリアの全体的なステータスを探しているマネージャー/エンジニアが実行できるレポートを作成しました。

バックエンドがフォームやクエリなどから分離されるように、両方のアクセス データベースが分割されています。ODBC データ ソースを使用して、SQL へのリンクをインポートします。ユーザー認証、ユーザー ログ レコードの更新、およびユーザー/グループ アクセス制御に vba を使用しています。サーバーにログオンするすべての人がフロントエンドの同じコピーを実行しようとするという事実を除いて、すべてが意図したとおりに機能します。たとえば、同僚に RD 経由でサーバーにログオンしてプログラムをテストしてもらい、自分のデスクからログオンしました。ログインすると、彼が開いていたフォームが表示されました。アクセスはすでに実行されていました。個々のワークステーションにアクセスをローカルに (または IT の制限により実行時にも) インストールすることができないため、これを解決するためにどのようなアプローチをとればよいかわかりません。

追加情報、サーバー 1 サーバーの 1 つは、多数のクライアント ステーション「スレーブ サーバー」がすべて通信する「マスター サーバー」と見なされます。マスター サーバー上のフォルダーにアクセスする唯一の方法は、クライアント ステーションにログオンして RD を実行することです。

サーバー 2 このサーバーは「ヒストリアン」と見なされます。これは、ユーザーが RD を使用してログオンし、ヒストリアンに常駐する SQL バックエンドを使用するアプリケーションを実行するターミナル サーバーと通信します。特定のフォルダがターミナル サーバーからヒストリアンに表示されるように、共有を設定できました。

私の最良の選択肢は何ですか?

前もって感謝します。

CTN

4

2 に答える 2

1

一部のIT部門が、仕事をうまく遂行するのを困難にするために可能な限りのことを行う方法は、本当にクレイジーです。

ターミナルサーバー経由でログオンしているユーザーをほのめかします。もしそうなら、おそらくあなたは彼らのターミナルサーバーログオンのユーザープロファイルにフロントエンドを保存することができますか?もちろん、これは、2つのデフォルトの管理ターミナルサーバーログオンを使用しているだけではないことを前提としています。

私にははっきりしないもう1つのことは、Access / Jet / ACEにバックエンドが必要な理由です。ODBC経由でSQLServerにリンクし、そのデータを直接使用しないのはなぜですか。そのシナリオでデータテーブルを含む独立したJet/ACEファイルを使用する唯一の理由は、SQLServerに保存されていないAccessアプリケーション用に保存しているデータがある場合です。一時テーブル(たとえば、複雑なレポートのステージングなど)もある場合がありますが、それらは共有バックエンドではなく、ユーザーごとに一時データベースに存在する必要があります。

于 2011-03-27T19:43:59.340 に答える
1

David Fenton が書いたものを実装する方法を次に示します。フロントエンドをインストール パスから %TEMP% (現在のユーザー セッションの一時フォルダ) にコピーし、そこからフロントエンドを実行する簡単なバッチ スクリプトを作成します。の線に沿った何か

 rem make sure current directory is where the script is
 cd /d %~d0%~p0
 rem assume frontend.mdb is in the same folder as the script
 copy /y frontend.mdb %temp%
 start %temp%\frontend.mdb

フロントエンドを直接実行するのではなく、バッチ スクリプトを介してのみ実行するようにユーザーに伝えてください。そうすれば、全員がフロントエンドの独自のコピーを取得する必要があります。または、インストール パスでフロントエンドに別のサフィックスを付け、%temp% にコピーするときに名前を「frontend.mdb」に変更します。

于 2011-03-27T20:52:37.273 に答える