AFSDKにてGUIのあるアプリケーションを開発する(基礎)

Document created by Kenji Hashimoto on Mar 10, 2017
Version 1Show Document
  • View in full screen mode

PI AF SDKはクライアントサイドで共通に使用できるインターフェイスが用意されています。開発を始める段階では非常に優位なものです。

以下の手順でシンプルなクライアントアプリケーションを開発してみましょう。AF Serverに接続し、エレメントの階層を表示するアプリケーションです。

  1. Visual Studioを開きます
  2. 新規でプロジェクトを作成します。Visual C# > Windowsフォームアプリケーション  プロジェクト名は“PIAFApplet”とします
  3. PI AF SDKの参照をプロジェクトに追加します。
    • プロジェクト参照の追加...
    • アセンブリ拡張
    • OSIsoft.AFSDKOSIsoft.AF.UIにチェックを付けます。バージョン4.0AFSDKにチェックをつけるようにしてください
    • OKをクリックします
  4. PI AF SDKのオブジェクトをプロジェクトに追加します
    • “Form1.cs”のデザインペーンで左にあるツールボックスを開きます。
    • 「ツールボックス」内にある「すべてのWindowsフォーム」を右クリックし、「アイテムの選択」をクリックします。アイテムがロードされるのを待ちます。
    • 以下のアイテムにチェックします。フィルターを使用すると早く見つけることができます。
      • PISystemPicker
      • AFDatabasePicker
      • AFTreeView
      • インポートが完了したら、それらをツールボックスに追加されます。
  5. フォームにこれらをドラッグアンドドロップします。以下のようなGUIにします。
  6.   
  7. それぞれのツールを使いやすくするため、以下を設定します。
    • PISystemPicker」を選択し、右下に現れる「プロパティ」ペーンを確認します。
    • Scroll down to the properties starting with ShowBegin」で始まるプロパティまでスクロールダウンし、 True, Falseを以下のように設定します。

  

  • Connect Automatically」プロパティまでスクロールアップし、Trueに変更します。この設定により、PI System Pickerは自動でPI AF Serverに接続します。
  • AFDatabasePicker」を選択します。 Showから始まるプロパティのうち「ShowComboBoxShowNoEntriesShowImages」のみがTrueになるようにします[AD2]

フォームにはこれらのツールが追加されました。しかし、これらのツールはそれぞれ連携していません。これらのツールを連携させるため、コードを書く必要があります。フォーム自体をダブルクリックし、以下のコードをpublic Form1()に追加します。

InitializeComponent();
afDatabasePicker1.SystemPicker = piSystemPicker1;

コードの上部には以下usingを追加する必要があります。

using OSIsoft.AF;
using OSIsoft.AF.Asset;
using OSIsoft.AF.Time;
using OSIsoft.AF.UnitsOfMeasure;

8. Form1.cs の「デザイン」タブに戻ります。「AFDatabasePicker」を選択し、プロパティペーンの雷マークの「イベント」をクリックします。

9. SelectionChange」までスクロールダウンしてその隣にある空白スペースをダブルクリックします。デフォルトイベントハンドラーにコードを追加することができるようになります。

10. SelectionChange event handlerメソッドに以下を追加します。

AFDatabase db = afDatabasePicker1.AFDatabase;

//Clear the treeview
afTreeView1.AFRoot = null;

if (db != null)
{
//Set the root of the Treeview
afTreeView1.AFRoot = db.Elements;
}

11. デバッグを開始します。PI AF serverに接続し、データベースを選択し、エレメント階層を操作してみます。

 

12. デバッグを停止し、プロジェクトを保存します。

このようにフォームアプリケーションでツリーを表示することができます。このツリーを使用してGUIを含むアプリケーションを簡単に開発することができます。

 


 

Attachments

    Outcomes