専門家さん、こんにちは。
JSLの数式列の参照を削除したい。
手動で削除する列を選択した後、JMP Alert のプロンプトが表示されたら「式を削除」をクリックします。
しかし、ワークフロースクリプトをコピーしてスクリプトに追加しても、数式列の参照はまだ削除されません。

移動方法について何か提案はありますか? JMP17を使用しています
前もって感謝します
ワークフロービルダーを使用していると仮定します。 ワークフロー ビルダーで数式を削除する自分の様子を記録してみましたか? これにより、依存関係がすべて削除されるはずです。 以下の例を使用して、JSL 経由で実行することもできます。

はい。 ワークフロービルダーを使用しました。
1)しかし、ワークフロービルダーは「式の削除」を記録しませんでした。 JMP アラートのプロンプトが表示されたときに「式の削除」を選択したにもかかわらず、代わりに「列の削除」が記録されただけです。

2) スクリプトで「数式の削除」も試しましたが、うまくいきませんでした。
以下は私のスクリプトです。
//Add new column formula to change Wirebond, 2nd Wirebond, Diebond and 2nd Diebond to correct date format
Names Default To Here( 1 );
dt4 = Data Table( "DB.WB(Datasheet)" );
dt4 << New Column("Wirebond.End Date", Numeric, Formula(
(As Date( In Days( :Wirebond End Date) + Informat ("1/1/1900", "<MM><D><YYYY><HH><:><MM><:><SS><AMPM>")) - In Days( 2 ))));
dt4 << New Column("Diebond.End Date", Numeric, Formula(
(As Date( In Days( :Diebond End Date) + Informat ("1/1/1900", "<MM><D><YYYY><HH><:><MM><:><SS><AMPM>")) - In Days( 2 ))));
dt4 << New Column("2nd Wirebond.End Date", Numeric, Formula(
(As Date( In Days( :"2nd Wirebond End Date"n) + Informat ("1/1/1900", "<MM><D><YYYY><HH><:><MM><:><SS><AMPM>")) - In Days( 2 ))));
dt4 << New Column("2nd Diebond.End Date", Numeric, Formula(
(As Date( In Days( :"2nd Diebond End Date"n) + Informat ("1/1/1900", "<MM><D><YYYY><HH><:><MM><:><SS><AMPM>")) - In Days( 2 ))));
//Change column info: Wirebond.End Date
Data Table( "DB.WB(Datasheet)" ):Wirebond.End Date <<
Input Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 0 )
<< Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 20, 0 );
//Change column info: Diebond.End Date
Data Table( "DB.WB(Datasheet)" ):Diebond.End Date <<
Input Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 0 )
<< Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 20, 0 );
//Change column info: 2nd Wirebond.End Date
Data Table( "DB.WB(Datasheet)" ):"2nd Wirebond.End Date"n <<
Input Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 0 )
<< Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 20, 0 );
//Change column info: 2nd Diebond.End Date
Data Table( "DB.WB(Datasheet)" ):"2nd Diebond.End Date"n <<
Input Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 0 )
<< Format( "Format Pattern", "<D><MM><YYYY><HH><:><MM><:><SS><AMPM>", 20, 0 );
//Remove data with End lot time < Today - 30 days (not required for analysis)
Current Data Table() << Select where( :End Lot Time < (today () - in days(30)) ) << Delete Rows;
//set Label for Machine No, Lot No, Base Part (Device), Recipe, Diebond & Wirebond MC
dt4 << set label columns( :Machine No, :Lot No, :Device, :Recipe, :Diebond MC ID, :Diebond End Date, :Wirebond MC ID, :Wirebond End Date, :Package, :Package Platform );
//Delete columns<BR />Current Data Table() << Data Table( "DB.WB(Datasheet)" )<BR /><< Delete Formula (:Diebond End Date, :"2nd Diebond End Date"n, :Wirebond End Date,:"2nd Wirebond End Date"n);<BR /></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></MM></D></AMPM></SS></MM></HH></YYYY></D></MM></AMPM></SS></MM></HH></YYYY></D></MM></AMPM></SS></MM></HH></YYYY></D></MM></AMPM></SS></MM></HH></YYYY></D></MM>ログは以下の通り

数式の削除を探しているかもしれません。
スクリプトインデックスから:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Bank Loan.jmp" );
:Time << Delete Formula;
「数式の削除」のスクリプトが機能しませんでした。
変。 スクリプトの実行時に列に数式がないと表示されます。
しかし、削除する列を手動で選択すると、「他の列の式によって参照されている間は列を削除できません」と表示されます。


"Diebond.End Date"
を参照する数式が含まれる列です。
In Days( :Diebond End Date)
名前にピリオドが含まれる列から数式を削除してみてください。
@Jed_Campbell - 一番最初のダイアログ「...の間、選択された列を削除できません」のような内容を追加する必要があります。
Diebond End Date は Diebond.End Date などの式で使用されているため削除できません。
ありがとう@Craige_Hales 。
できます。 この件に関するワークフローのウィッシュリストを作成します。
//Delete columns
dt4 << Data Table( "DB.WB(Datasheet)" );
Wait(0);
dt4:Diebond.End Date << Delete Formula;
dt4:"2nd Diebond.End Date"n << Delete Formula;
dt4:Wirebond.End Date << Delete Formula;
dt4:"2nd Wirebond.End Date"n << Delete Formula;
Wait(0);
dt4 << Delete Columns (:Diebond End Date, :"2nd Diebond End Date"n, :Wirebond End Date, :"2nd Wirebond End Date"n);