幫助數據過濾器上下文框()我在將數據過濾器上下文框插入腳本時遇到問題。 我的腳本用於通過 SQL 提取數據,執行一些表函數,然後在選項卡式窗口內吐出圖形。 這使得它在視覺上比我所做的更好,因為每個單一輸出都有一個與之關聯的新窗口,並且測試工程師必須單擊多個按鈕。
我已經閱讀了這些板以及腳本指南。 我遇到的問題是如何在填充圖形和分佈後插入它。 來自腳本指南。
我嘗試使用與先生相同的哲學。特克斯尼爾森幫助了我,但我無法讓它創建一個臨時框,然後在單擊按鈕後填充。 再次感謝任何和所有幫助。
d
指導,
// --------------------------- From Scripting Guide -------------------------
dt = Open( "$SAMPLE_DATA/Hollywood Movies.jmp" );
win = New Window( "Shared Local Filter",
Data Filter Context Box(
// enclose the h list box that contains distribution and graph builder
H List Box(
// add the local data filter
// NOTE: My tables aren't created yet so i am getting an error here.
dt << Data Filter( Local ),
dt << Distribution(
Weight( :Profitability ),
Nominal Distribution(
Column( :Lead Studio Name )
),
Nominal Distribution(
Column( :Genre )
),
Histograms Only
),
dt << Graph Builder(
Variables(
X( :Genre ),
Y( :Domestic Gross ),
Y( :Foreign Gross, Position( 1 ) )
),
Show Control Panel( 0 ),
Elements(
Bar( X, Y( 1 ), Y( 2 ),
Legend( 2 ),
Bar Style( "Side by side" ),
Summary Statistic( "Mean" )
),
Frequencies( 0 ),
)
)
)
)
);
// --------------------------- My Data Pull Script Simplified -------------------------
Names Default To Here( 1 );
Close All( Data Tables, No Save );
Close All( Reports );
Clear Log();
Close All( journals, no save );
Clear Symbols();
sqlstartA = Today();
sqlendA = Today();
sqlstart = Format( sqlstartA, "yyyy-mm-dd" );
sqlend = Format( sqlendA, "yyyy-mm-dd" );
/************************************************************************************************************************************************/
/* */
/* ---------------------------------------------------------------[START EXAMPLE] ----------------------------------------------------------- */
/* */
/************************************************************************************************************************************************/
hay = New Window( "Test Database Tools",
V List Box(
V List Box(
Text Box(
"Product Engineering Database Tools",
<<SET font="" size=""></SET>
回复:有關數據過濾器上下文框()的幫助效果很完美,謝謝。 我必須閱讀“Is Scriptable”,看看它還能如何使用
回复:有關數據過濾器上下文框()的幫助是的,我首先註意到“加載測試數據”重複了界面的一部分(過濾器),並且正如您所指出的“完成後單擊此處”也重複了 UI。您提到您在刪除該框時遇到了麻煩,但我不確定您是否想要(a)刪除控件,以便它們只能使用一次(b)刪除過濾器,以便您可以用另一個過濾器替換它。我之前的回應是演示一種方法(a),而無需實際刪除任何內容 - 只需根據狀態隱藏和顯示窗口的不同部分。
附件是我為刪除組件而更改的腳本的另一個修改。我保存了對添加到顯示中的框的引用。每次添加框時,它都會首先對先前添加的框調用 <回复:有關數據過濾器上下文框()的幫助我很抱歉。 如果您運行修復的腳本並單擊“完成後單擊此處”按鈕,它將繼續附加顯示框。 我本可以發誓你在回复時指出了這一點,但現在我意識到它與另一個主題有關。
回复:有關數據過濾器上下文框()的幫助
我不清楚你想在循環內做什麼。如果您希望控件消失,您可以刪除它們,也可以隱藏它們。隱藏它們可能並不理想——它們仍然在顯示樹中——但這是一種常見的方法。下面是一個示例,它引導用戶完成多個輸入步驟,並在每個步驟隱藏控件:
New Window( "Wizard Interface",
top = H List Box(
// Control panels
controls = Panel Box( "Inputs",
panel1 = V List Box(
Text Box("Panel 1"),
Button Box( "Next",
panel1 << Visibility( "Collapse" );
panel2 << Visibility( "Visible" );
)
),
panel2 = V List Box(
Text Box("Panel 2"),
Button Box( "Next",
panel2 << Visibility( "Collapse" );
panel3 << Visibility( "Visible" );
),
<<VISIBILITY></VISIBILITY>
這與您想要做的類似嗎?
回复:有關數據過濾器上下文框()的幫助我相信我可以通過使用 for 循環來完成附加該窗口。 正是我如何放置代碼 i < =
謝謝
For( i = 1, i <= /* not sure what i would put in here */ , i ++,<BR /> sqlstart = Format( sqlstartA, "yyyy-mm-dd" );<BR /> sqlend = Format( sqlendA, "yyyy-mm-dd" );<BR /> Show( sqlstart, sqlend );<BR /> lineup1 << Append(<BR /> V List Box(<BR /> Spacer Box( Size( 5, 5 ) ), <BR /> Text Box( "Select Your Wafer(s)", <BR /> << Set Font Size( 15 ), <BR /> << Justify Text( "Center" ) <BR /> ),<BR /> Spacer Box( Size( 5, 15 ) ),<BR /> loaddata = Button Box( "Load The Test Data",<BR /> dt = current data table();<BR />// dt = Open( "$SAMPLE_DATA/big class.jmp", invisible )<BR /><BR />// Insert End of Script<BR />
回复:有關數據過濾器上下文框()的幫助正如您在回復中指出的,“完成後單擊此處”的問題會在單擊時附加窗口。 我嘗試過<<刪除Box()和其他一些不成功的事情。 然而,當沒有選擇日期或晶圓時,我設法插入一些 Throw() 語句。 事實證明,這是一項具有挑戰性的工作。 有什麼建議麼?回复:有關數據過濾器上下文框()的幫助謝謝你和吉姆的幫助。 我根本沒有考慮自動重新計算。 特別感謝 Data Filter Context Box() 的添加。 我試圖使用它,但無法找出正確的位置。
至於日曆,我完全同意你的觀點。 讓它成為一個可以打開和關閉的輪廓框。
一旦我在適當的窗口中獲得所有圖表、分佈、Fit Y by X 和晶圓圖(半導體工具包),主窗口就需要一些補充和調整。 對於此分析工具,您和吉姆正在幫助解決的問題是容易實現的目標。 我覺得最大的障礙是我如何處理異常值。 我在這些板上找到了 GrubbsOutlierTest3.jsl,並將以某種方式、形狀或形式使用它。
再次感謝你。
d
回复:有關數據過濾器上下文框()的幫助雖然您無法調整日曆框對象的大小,但可以使用數字編輯框來達到相同的目的。 將格式設置為您想要的日期樣式,然後在交互過程中它會顯示一個日曆,但否則它只是一個小盒子。
Names Default to Here( 1 );
nw = New Window( "Date Entry",
Outline Box( "Calendar Box Substitute",
neb = Number Edit Box( 01Jan2019,
<< Set Format( Format( "m/d/y", 12 ) )
)
),
H List Box(
Button Box( "OK",
date = neb << Get;
),
Button Box( "Cancel" )
)
);
回复:有關數據過濾器上下文框()的幫助我已附上您腳本的更新版本。正如 Jim 指出的那樣,分佈上未設置自動重新計算。原因是您的數據過濾器是全局過濾器,而不是本地過濾器。在您的腳本中,請注意,雖然所有報表似乎都在更新,但數據表行狀態正在發生變化,並且兩個選項卡上的結果都在更新。
我做了兩項更改以使過濾器成為本地過濾器:
- 將“本地”選項添加到 Data Filter() 命令
- 將每個選項卡上的 HListBox() 更改為數據過濾器上下文框()。這使每個過濾器的效果保持在選項卡本地
本地數據過濾器將自動在每個關聯平台上設置自動重新計算標誌。
我不知道有什麼方法可以讓日曆變小。我不確定在初始日期選擇後您將採用什麼工作流程。您可以考慮兩個窗口,一個帶有日期選擇的啟動器窗口和一個顯示報告的結果窗口。您可以將日期範圍作為副標題包含在內。
如果您想將兩者保留在同一窗口中,您可以將日曆放在使用 <回复:有關數據過濾器上下文框()的幫助這是完全有道理的。 謝謝您的幫助。
回复:有關數據過濾器上下文框()的幫助當您更改數據過濾器中的選擇時,您的分佈沒有更改的原因是,在分佈的 JSL 中未設置“自動重新計算(1)”選項。
關於調整日曆框的大小,我沒有找到改變其大小的方法。 其他一些社區成員可能有一種方法,但我找不到。
回复:有關數據過濾器上下文框()的幫助
納爾遜先生,
我嘗試將其放入我的腳本中,似乎它只是更新了圖表/分佈的一部分。我附上了一個更新的腳本,這正是我正在嘗試在您看到的兩個選項卡後面添加其他幾個選項卡的方法。
我還附上了我正在引入的數據集的一個很好的示例。 該表包含 3 個晶圓的數據,可以為您提供一個想法。
此外,我想知道是否有一種方法可以調整日曆框的大小,以便它們佔用更少的空間,從而為分析留下更多空間。
謝謝
回复:有關數據過濾器上下文框()的幫助抱歉沒有具體說明。
是的,本地數據過濾器會影響選項卡中的所有圖表,.. 我一會兒就會看一下你的劇本。
謝謝
回复:有關數據過濾器上下文框()的幫助您是否希望為指定的圖表/圖形添加本地數據過濾器?
您是否希望添加一個過濾器來根據單個過濾器更改所有圖表?
您是否想讓用戶單擊直方圖中的一個條形圖,然後從選定的行中更改其他圖表和圖形?
附件是對腳本的修改,該修改在分發平台輸出的左側添加了數據過濾器,選擇後,會更改附加到數據表的所有圖表。