送信は、「送信」のアクセスまたは評価でスクリプト可能オブジェクトを期待します別の jsl ファイルによって呼び出される次の関数があります。
ConfirmFiltering = Function({},
show(dtImp);
dtImp << Select Where(!Contains(parameterChoice, :Parameter));
);show コマンドの出力が次のようになる場合でも、
dtImp = DataTable("Details 2");次の行で次のエラーが発生します。
Send は、'Send' のアクセスまたは評価でスクリプト可能オブジェクトを期待します。dtImp << /*###*/Select Where( !Contains( paramChoice, :Parameter ) ) /*###*/
dtImp コマンドを DataTable として認識しているにもかかわらず、次の行でそれを「スクリプト可能オブジェクト」ではないと特徴付けているのは奇妙に思えます。
高度な統計モデリング自動化とスクリプト基本的なデータ分析とモデリングデータアクセスデータのブレンドとクリーンアップデータの探索と視覚化Re: Send は 'Send' のアクセスまたは評価でスクリプト可能オブジェクトを期待しますスコープの問題かもしれません。:Parameter列への参照を次のように変更することをお勧めします。
dtImp::Parameter
変数parameterChoiceの値は何ですか?
Re: Send は 'Send' のアクセスまたは評価でスクリプト可能オブジェクトを期待しますパラメーターChoice の値は、作成しようとしているアドインのエンド ユーザーによって選択されます。
問題は解決せず、ルートが Select Where コマンドに含まれていないと思います。以下を使用しても、
dtImp << show window(1);
同じエラーが発生します。DatatTble に << 演算子を使用することはできないようです。
しかし、より分析的に言えば、2 つのスクリプトがあります。
Main.jsl: ボタンを使用してデータセットを選択できる機能をエンドユーザーに提供するウィンドウを作成します。
bboxImp = button box( "Select data to import", importData())
where the importData() function reads the data:
importData = Function({},
// Function that is used to select which data to import for the analysis
// Prompt the user to select input file
importFile = Pick File( "Select Excel data to import" );
if(importFile == "",
// No file was selected - we skip the rest
New window("Message", modal,
Text Box("No file has been selected for import")
),
// A file was selected - we continue
// Import data
dtImp = Open( importFile,
Worksheets( "Details" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 31 ),
Data Starts on Row( 32 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
// Select rows where "Component" column is empty
dtImp << Select Where( Is Missing( :Name( "Component" ) ) );
// Delete the selected rows
dtImp << Delete Rows;
// Grey out import botton and make Reimport and analysis botton available
wait(1);
dtImp << show window(0);
bboxImp << enable(0);
bboxRe << enable(1);
bboxAn << enable(1);
);
);
ImportRedo = Function({},
// Function that is used to remove imported datasets and allow for another import
// Close imported datafile and ungrey import and analysis botton
Close(dtImp, NoSave);
bboxImp << enable(1);
bboxRe << enable(0);
bboxAn << enable(0);
);最後に、「分析を実行」ボタンを押すと、Analysis.jsl スクリプトが呼び出され、エンド ユーザーがさまざまな一意の値を選択してデータをフィルターするための選択を行うウィンドウが作成されます。このスクリプトでは、エンド ユーザーが選択を行った後、次のコードを使用しようとしています。
ConfirmFiltering = Function({},
show(dtImp);
dtImp << Select Where(!Contains(parameterChoice, :Parameter));
);DataTable dtImp をフィルター処理します。
Re: Send は 'Send' のアクセスまたは評価でスクリプト可能オブジェクトを期待しますパラメータ選択は「xxx」のようなスケーラー値ですか、それとも JMP リスト値 {「xxx」} ですか?
いずれの場合も、単一の値の場合は、Containsの順序を変更して、
</CODE></PRE>
<PRE><CODE class=" language-jsl">!Contains( :Parameter, parameterChoice )
Re: Send は 'Send' のアクセスまたは評価でスクリプト可能オブジェクトを期待します使用している JMP のバージョンはどれですか? アプリケーション ビルダーを使用していますか? スコープと名前空間をどのように処理していますか (完全なスクリプトが表示されないため、推測するしかありません)? .jsl ファイルから実行したとき、またはアドインに組み込んだ後に、これらの問題が発生していますか? JMP セッションを閉じてスクリプトを実行した場合、最初の実行時に同じ問題が発生しますか?
Re: Send は 'Send' のアクセスまたは評価でスクリプト可能オブジェクトを期待します完全なコードを提供するのは困難だったので、その一部を説明して提供しようとしました。ただし、完全なコードを見ることができない場合、誰かが助けを提供するのは難しいことを理解しています。
解決策を見つけました。問題は、上で示した Main.jsl スクリプトにありました。このスクリプトには、エンド ユーザーが [分析を実行] ボタンをクリックすると呼び出される次の関数がありました。
compatStudyEval = Function({},
// Function that is used to run the analysis script and handle landing page window
// Run the analysis script related to this add-in
Include( pathAddin || "\Analysis.jsl");
// Close landing page
win << close window;
);The problem is generated by the win << close window; command which I included to close the main window.
私は次の投稿からヒントを得て解決策を見つけました:
解決済み: 名前未解決: アクセスまたは評価のボタン JMP アラート メッセージ - JMP ユーザー コミュニティ