スクリプトを使用してデータをロードするときにデータを除外する<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />こんにちはコミュニティ、
次のスクリプトをデータテーブルに保存した状態でデータベースを使ってテーブルを開くと、正常に動作します。 アドインのメニュー項目にスクリプトを保存すると、データを取得するだけで除外されません。 どうしたの?
データベースを開く(
"DSN = PI SQL接続ラボ;説明= PI SQL接続ラボ; UID =; Trusted_Connection =はい; APP = JMP; WSID = SFX-5GCN2M1; DATABASE = LabData"、
"SELECT * FROM dbo.NSI_Discovered_Factors_Lab_Data"、
"NSI_Discovered_Factors_Lab_Data"、
「NSIデータベース」
;
dt = CurrentDataTable();
dt <<場所を選択(Exclude == "Exclude")<< hide << Exclude;
再:スクリプトを使用してデータをロードするときにデータを除外するスクリプトエディタから実行されたがアドインとして実行されなかった場合の動作の手がかりをありがとう。
これは通常、JSL内の変数参照のスコープ問題を示しています。既定では、アドインは "Names Default Here Here(1)"オプションを使用して実行されるため、スコープ指定のない参照は "Here"名前空間に移動します。
きみの場所を選択() スコープのない変数がその中にあります。除外する 。
データテーブルの列にスコープするために:の前に:を含めると、どちらの場合も機能します(スクリプトエディタとアドイン)。
dt<<Select Where(:Exclude=="Exclude")<<hide<<Exclude;
- ジェフ
再:スクリプトを使用してデータをロードするときにデータを除外するこんにちはバイロン、
クエリをコピーして次のスクリプトに貼り付けます。
dt = CurrentDataTable();
dt <<場所を選択(Exclude == "Exclude")<< hide << Exclude;
できます。 しかし、私がスクリプトをjslアドインに保存するとき、それは奇妙にはそうではありません。 列名、大文字と小文字、スペースが一致します。 行についても同様です。 非アドインのjslでは動作しますがアドインでは動作しないという非常に奇妙なことです。 データフィルターからこのjslを生成しませんでした。
再:スクリプトを使用してデータをロードするときにデータを除外する他にもチェックすべきことがいくつかあるかもしれませんが、基本的なことを事前にお詫び申し上げます。
インポートされたデータテーブルには、"Exclude"という名前の列があります
- 実際の列名の先頭にスペースがありますか。
- 実際の列名は一致しますか?例タイトルケースとつづり
"Exclude"という名前の列でフィルタリングする値
- 列の値の前後にスペースがありますか。
- スペルとタイトルの大文字と小文字の区別は「除外」レベルに完全ですか。
データテーブルのスクリプトは機能しますが、データフィルタから来たのでしょうか。
再:スクリプトを使用してデータをロードするときにデータを除外するそれはオプションPMrozですが、私はすべてのデータを引き出すことを好み、人々は除外しないというオプションを残します。
再:スクリプトを使用してデータをロードするときにデータを除外するこれは考えです。 SQLでデータを引っ張っているので、なぜSQLの行を除外しないのですか?また、Open Database(NSI Database)に追加のパラメータがあると思います。
dt = データベースを開く (
"DSN = PI SQL接続ラボ;説明= PI SQL接続ラボ; UID =; Trusted_Connection =はい; APP = JMP; WSID = SFX-5GCN2M1; DATABASE = LabData" 、
"SELECT * FROM dbo.NSI_Discovered_Factors_Lab_Data WHERE exclude!= 'Exclude'" 、
"NSI_Discovered_Factors_Lab_Data" 、
「NSIデータベース」 ) ;
再:スクリプトを使用してデータをロードするときにデータを除外する同じ問題PMroz。 奇妙なことに、まだうまくいきません。
再:スクリプトを使用してデータをロードするときにデータを除外する実行式の代わりにwait(0)を使用してみてください。 私はByronに同意します - dt =現在のデータテーブルを削除し、dt =をオープンデータベースの結果に設定します。 このような:
dt = データベースを開く (
"DSN = PI SQL接続ラボ;説明= PI SQL接続ラボ; UID =; Trusted_Connection =はい; APP = JMP; WSID = SFX-5GCN2M1; DATABASE = LabData" 、
"SELECT * FROM dbo.NSI_Discovered_Factors_Lab_Data" 、
"NSI_Discovered_Factors_Lab_Data" 、
「NSIデータベース」 ) ;
待つ ( 0 ) ;
dt << 場所を選択 ( 除外する == 「除外」 ) << 隠す << 除外する ;
再:スクリプトを使用してデータをロードするときにデータを除外するこんにちはバイロン、
それでも直らなかった。 私があなたが言ったことが本当であるということを前提として働くべきである別のアドインも作りました。
dt = CurrentDataTable();
dt <<場所を選択(Exclude == "Exclude")<< hide << Exclude;
これは奇妙にも機能しません。
再:スクリプトを使用してデータをロードするときにデータを除外するSelectが実行されたときにOpenが完了していない可能性はありますか?
私はこの正確な問題を見たことはありませんが、たくさんの行を持つテーブルを使っているときのようなものです。
2つの提案
まず、データテーブルを開いたときに変数にデータテーブルを割り当てます。このようにdt = current data table();データベーステーブルが開いている間に、誤って現在のテーブルをポイントしてしまうことはありません。
dt =データベースを開く( "DNS ....
dt = current data table()を省略します。
次に、行を選択する前にdtが評価されるようにします。開けるまで評価できません
dt <<数式を実行します。//これを最初に含める
dt <<場所を選択(Exclude == "Exclude")<< hide << Exclude;