動的リスト入力を使用した「行の追加」のスクリプトこんにちは、みんな、
ジャーナルにレポートテーブルとしてTableBoxがあります。 このテーブルに「行の追加」を入力できます。これは入力としてリストが必要です。 これは、関数にリスト値を直接書き込むときに機能します。 下記参照。 ただし、リストを事前に準備し、これを関数に解析すると、機能しなくなります。下の2番目の例を参照してください。 なんで? 目標は、この「行の追加」を毎回異なる情報でループに組み込むことです。
バウク
// possible and working
ob[TableBox(1)] << add row ({"1","2","3",4});
// not possible why?
rowContents2 = {"1","2","3",4};
ob[TableBox(1)] << add row (rowContents2);
スクリプティングRe:動的リスト入力を使用した「行の追加」のスクリプトそれが機能する理由は、コードが単純に実行していることであり、必要な正確なJSLを文字列に組み込み、Eval(Parse(……。))を使用してJMPに文字列値をJMPに送信するように指示します。
特定の例をとると、必要なことを実現するためのハードコードされた構文は次のとおりです。
ob[TableBox(1)] << add row ({"1", "2", "3", 4});
したがって、上記のコード行を文字列に組み込むことができれば、関数のEval(Parse())の組み合わせを使用して文字列をJMPに送信できます。これを明確にするためのスクリプトの簡単な拡張を次に示します。
rowContents2 = {"1","2","3",4};
// Create a character string variable with the required syntax
myString = "ob[TableBox(1)] << add row (" || char(rowContents2) || ");";
// Write the string to the log to show what it looks like
show( myString );
// Run the character string variable
Eval( Parse( myString ) );
Re:動的リスト入力を使用した「行の追加」のスクリプトどうもありがとう!
最初のものは機能しませんでした。 2番目の解決策は、最後に2つの欠落した角かっこを追加したときに機能しました。 なぜそれが機能するのかはまだわかりませんが、後でわかるかもしれません。
バウク
Re:動的リスト入力を使用した「行の追加」のスクリプト以下のスクリプトのオプションを試してください。(注:構文を正しくするために、末尾に2つの ")"が追加されました。 @バウク行方不明の文字の観察)
rowContents2 = {"1","2","3",4};
ob[TableBox(1)] << add row (eval(rowContents2));
// or if necessary this should force it to work
eval(parse("ob[TableBox(1)] << add row (" || char(rowContents2) || ");"));