對於第一部分,這可能會讓你開始
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(6),
Compress File When Saved(1),
New Column("ID",
Character,
"Nominal",
Set Values({"A001", "A002", "A003", "B001", "B002", "B003"})
)
);
nw = New Window("", << modal, << return result,
v list box(
teb = text edit box("A00*"),
h list box(
Button Box("OK"),
Button Box("Cancel"),
)
)
);
If(nw["Button"] != 1,
stop();
);
// no real idea behind the selection logic, so we will use very simple one
// user has to always provide *
user_input = nw["teb"];
If(!Contains(user_input, "*"),
Throw("No wild card provided!");
);
user_rows = dt << Get Rows Where(Starts With(:ID, Substitute(nw["teb"], "*", "")));
user_ids = dt[user_rows, "ID"];
通過讓 JMP 為它創建腳本,連接很容易完成。 然後只需添加引用並可能將其變成一個函數
我有一個數據表,第一列填充有part_ID(其他列有與每個零件相對應的其他信息)和一個工作函數,該函數從數據庫加載給定(單個)part_ID 的測試數據。我想通過模式窗口獲得以下功能。
1. 讓用戶使用通配符選擇數據表中的part_ID。 例如,part_ID 的形式為 A0012、A0013、A0014 等,然後是 B7001、B7002、B7003 等。 用戶只需指定 A00* 或 B70* 之類的內容,然後在數據表中選擇相應的part_ID,其中 * 是通配符。
2. 一旦選擇了part_ID,我想循環遍歷它們並通過我的函數獲取測試數據(該函數將part_ID作為輸入並在數據表中返回測試數據),然後連接下面的每個新數據表前面的得到最終的數據表(注意所有測試數據表都有相同的列名)
如何在 JSL 中實現這一點?