データベースからデータを再インポートしてグラフを更新する


概要

このチュートリアルで使用するデータベースはMicrosoft Azure上に設定されています。

このチュートリアルは、前のチュートリアルデータベースからのインポートをLabTalk置換で更新するの続きです。LabTalkスクリプトを実行するボタンをグラフに追加する方法を示します。このボタンによって、GetNダイアログを開いてcompany名を入力し、新しいcompany名に基づいてデータベースを再インポートし、更新されたグラフを取得します。

手順はOrigin 2023bに基づいています。

学習する項目

このチュートリアルでは、以下の項目について解説します。

  • スクリプトを実行するボタンをグラフに追加。
  • 新しい入力データを取得するための簡単なダイアログの作成方法。

手順

LabTalkスクリプトを実行するボタンを追加する

  1. 前のチュートリアルデータベースからのインポートをLabTalk置換で更新するで作成したGraph1の右下隅を右クリックします。 テキストの追加...を選択します。テキストラベルとしてModify...と入力します。
  2. テキスト上で右クリックしてプロパティ...コンテキストメニューを選択します。テキストオブジェクトダイアログが開きます。プログラミングタブを開きます。Note: Origin 2017より前のバージョンでは、プログラミング制御...メニューからプログラミング制御ダイアログを開きます。
  3. のあとでスクリプトを実行の前にあるドロップダウンでボタンアップを選択し、下にあるテキストボックスに次のスクリプトを入力します。OKをクリックします。
    string thecompany$="Professional Sales and Service"; //最初のcompany名を設定
    //次の3行は新しい thecompany$ 文字列値を割り当てるダイアログを生成
    getN
    (Company Name) thecompany$ //(Company Name) はダイアログ内の編集ボックスラベル
    (Which Company to Analyze); //これはダイアログタイトル
    dbimport iw:=[book1]sheet1!; //新しいcompanyのデータをデータベースからBook1のSheet1に際インポート
    	
    Modify button script.png

    テキストオブジェクトがボタンに変わります。

    Modify button graph1.png

ボタンを使用してインポートデータを変更する

  1. Modify...ボタンをクリックして、新しいcompany名Riding Cyclesを入力します。
    GetN company.png
  2. OKをクリックします。データはBook1のSheet1に再インポートされ、グラフは自動更新されます。
    ImportDB for LT sub colum graph2.png
  3. すべてのcompany名と注文の総数を表示してみましょう。Sheet1タブを右クリックし、データなしで複製を選択してSheet2を作成します。
    Sheet2上のDBConnector.pngをクリックし、SQLエディタを選択します。
    クエリを次のように修正します。
    SELECT SalesLT.Customer.CompanyName, SUM(SalesLT.SalesOrderDetail.OrderQty ) AS OrderCounts
    FROM SalesLT.Customer
    INNER JOIN SalesLT.SalesOrderHeader 
    ON SalesLT.SalesOrderHeader.CustomerID =SalesLT.Customer.CustomerID 
    INNER JOIN SalesLT.SalesOrderDetail
    ON SalesLT.SalesOrderHeader.SalesOrderID =SalesLT.SalesOrderDetail.SalesOrderID 
    GROUP BY SalesLT.Customer.CompanyName
    ORDER BY SUM(SalesLT.SalesOrderDetail.OrderQty ) DESC
    	
  4. OKをクリックします。すべてのcompany名と注文の総数が表示されるため、再インポートするために別のcompany名に変更するときに、このシートを簡単に参照できます。
    Db import company names.png