我不確定我是否完全理解您想要看到的內容,但這是根據上面所示的查詢產生的 JSL。
注意Where() 部分。 這是純粹的 JSL。 您無法在自訂 SQL 中新增任何變數。
看來您的努力選擇是:
- 編寫 JSL 來建立提示並弄清楚如何將回應插入 SQL 中;或者,
- 將查詢轉換為查詢產生器並讓它提示您。
我不確定哪一個對您來說更費力,但轉換為查詢產生器似乎更靈活,從長遠來看將為您提供更多選擇。
New SQL Query(
Version( 130 ),
Connection(
connection_string
),
QueryName( "inventory" ),
Select(
Column( "warehouseid", "t1" ),
Column( "sku", "t1" ),
Column( "sku_description", "t1" ),
Column( "quantityonhand", "t1" ),
Column( "quantityonorder", "t1" )
),
From(
Table( "inventory", Schema( "Sporting Goods By Stan" ), Alias( "t1" ) ),
Table(
"warehouse",
Schema( "Sporting Goods By Stan" ),
Alias( "t9" ),
Join(
Type( Left Outer ),
EQ( Column( "warehouseid", "t9" ), Column( "warehouseid", "t1" ) )
)
),
Table(
"order_item",
Schema( "Sporting Goods By Stan" ),
Alias( "t6" ),
Join(
Type( Left Outer ),
EQ( Column( "sku", "t6" ), Column( "sku", "t1" ) )
)
),
Table(
"sku_data",
Schema( "Sporting Goods By Stan" ),
Alias( "t8" ),
Join(
Type( Left Outer ),
EQ( Column( "sku", "t8" ), Column( "sku", "t1" ) )
)
),
Table(
"retail_order",
Schema( "Sporting Goods By Stan" ),
Alias( "t7" ),
Join(
Type( Left Outer ),
EQ( Column( "ordernumber", "t7" ), Column( "ordernumber", "t6" ) )
)
)
),
Where(
In List(
Column( "department", "t8" ),
{"Water Sports"},
UI(
SelectListFilter(
ListBox,
Base(
"Categorical",
Prompt(
"Select a department:",
Character,
PromptName( "t8.department_1" ),
ValueSource(
Column(
"department",
Alias( "department" ),
Table(
"sku_data",
Schema( "Sporting Goods By Stan" )
)
)
)
)
)
)
)
)
)
) << Run;
是的。當我直接在 JMP 中建立查詢時,我可以獲得提示。 我遇到的問題是,當我將現有查詢放入自訂 sql 查詢中時,我的提示不可用。 對於簡單的查詢,JMP 中的查詢建立器可以工作,但我有一些相當冗長且複雜的連接,我試圖不必重建它們。
如果您使用查詢產生器,它將使用篩選器區域中的「執行時間提示」選項自動為您建立提示。

當您執行查詢時,系統將提示使用者。 沒有理由自己建造它。

你好@喬伊斯特林格,
以下是您可以在啟動查詢之前執行的範例:
dlg = New Window("Parameter Specification", << Modal,
V List Box(
Text Box("Please specify the value of lineID."),
H List Box(
Text Box("LineID: "),
neb = Number Edit Box();
),
Button Box("OK", LineID = neb << Get);
)
);
Show(LineID);這個視窗只是要求使用者在數位編輯框中輸入一個數字。“確定”按鈕取得框中的值並將其儲存為“lineID”,您可以在查詢中使用它。「<< Modal」選項使視窗成為模態窗口,這表示在使用者按「OK」之前,JMP 不會執行視窗後面的腳本的其餘部分。
如果您想做任何更複雜的事情,我強烈建議您查看腳本指南(幫助>書籍>腳本指南)以了解如何編寫對話框腳本
我經常使用 ssrs,並且習慣使用 @Sitename 或 @Date 等參數。 我有幾個在其他平台中使用的查詢,但我希望能夠將它們放入 JMP 中。我遇到的問題是,當我執行自訂sql時,我不知道如何使用參數提示框。 例如,我該如何編寫此內容以便出現一個詢問“Lineid”的方塊?他們將能夠響應,並且查詢將運行。
選擇 *
從表格行
其中 tblline.lineid=@LineID;