Sélection de paramètres multiplesSalut,
J'ai le script suivant qui va tabuler test_type_combo par quelques tests (Test1, Test2, Test3, Test4, Prepass) chacun avec la somme n_unit et n_unit_passed pour un paramètre nommé bobine_fournisseur_A. Puis va créer une nouvelle colonne, Rendement. À partir de là, j'aurai Graph Builder pour faire le traçage. Puis-je savoir si j'ai plusieurs paramètres pour les fournisseurs, chacun dans une colonne, par exemple. coil_supplier_B, coil_supplier_C et coil_supplier_D, comment puis-je mettre tous les fournisseurs dans le script et tracer automatiquement tout le monde (dans ce cas, il y aura un total de 4 parcelles). Ou peut-être s'il y a une autre meilleure façon de le faire.
Merci beaucoup.
Scénario:
dt = Current Data Table();
tab= dt << Tabulate(
Add Table(
Column Table(
Grouping Columns( :test_type_combo ),
Analysis Columns(
:Name( "Sum(n_unit)" ),
:Name( "Sum(n_unit_passed)" )
)
),
Row Table(
Grouping Columns(
:work_week,
:coil_supplier_A,
:product_family
)
)
)
);
dtTab= tab << makeIntoDataTable;
dtTab << new column("Yield",numeric,Formula(
(:Name( "Sum(Sum(n_unit_passed), PrePass)" ) /
:Name( "Sum(Sum(n_unit), PrePass)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test1)" ) /
:Name( "Sum(Sum(n_unit), Test1)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test4)" ) / :Name( "Sum(Sum(n_unit), Test4)" )
) * (:Name( "Sum(Sum(n_unit_passed), Test2)" ) /
:Name( "Sum(Sum(n_unit), Test2)" )) * (:Name(
"Sum(Sum(n_unit_passed), Test3)"
) / :Name( "Sum(Sum(n_unit), Test3)" )) * 100
)
);
dtTab << Graph Builder(
Variables(
X( :work_week ),
Y( :PFY ),
Y( :Name( "Sum(Sum(n_unit), Test1)" ) ),
Group X( :product_family ),
Overlay( :coil_supplier_A )
),
Elements(
Position( 1, 1 ),
Points( X, Y, Legend( 6 ) ),
Line( X, Y, Legend( 7 ) )
),
Elements( Position( 1, 2 ), Bar( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model( 6, Base( 0, 0, 0 ), Base( 1, 0, 0 ), Base( 2, 0, 0 ) )}
),
Dispatch(
{},
"graph title",
TextEditBox,
{Set Text( "coil_supplier_A" )}
),
Dispatch( {}, "Y 1 title", TextEditBox, {Set Text( "unit Qty" )} ),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {6, [0, 1, 2], 7, [6, 7, 8], 4, [3, 4, 5]} ),
Position( {0, 1, 2, 6, 7, 8, 3, 4, 5} )}
)
)
);
Re : Sélection de paramètres multiplesByron, ça ira aussi. Merci!Re : Sélection de paramètres multiplesAu lieu de faire le tableau intermédiaire...
Peut-être que quelque chose comme ça fonctionnerait?
Essayez d'empiler les colonnes du fournisseur de bobines (et uniquement les colonnes du fournisseur de bobines)
Il en résultera que toutes les colonnes du fournisseur de bobines seront réduites à deux colonnes. L'un a le fournisseur de bobines, l'autre a les ID de lot. L'ID de lot va toujours dans le rôle de superposition du générateur de graphiques, mais l'ID du fournisseur va dans le rôle de page (coin inférieur droit du générateur de graphiques (option jmp 13)).
De plus, puisque toutes les données sont empilées, la formule devient facile, car elle ne fonctionne que sur les cols de comptage et de passage.
Re : Sélection de paramètres multiplesMerci beaucoup Jim !!
Re : Sélection de paramètres multiplesVoici une façon de générer toute la sortie du fournisseur de bobines, en utilisant la substitution avec une boucle For
Names Default To Here( 1 );
dt = Current Data Table();
VarList = {"coil_supplier_A", "coil_supplier_B", "coil_supplier_C", "coil_supplier_D"};
For( i = 1, i <= N Items( VarList ), i++,
Eval(
Substitute(
Expr(
tab = dt << Tabulate(
Add Table(
Column Table(
Grouping Columns( :test_type_combo ),
Analysis Columns( :Name( "Sum(n_unit)" ), :Name( "Sum(n_unit_passed)" ) )
),
Row Table( Grouping Columns( :work_week, __supplier__, :product_family ) )
)
);
dtTab = tab << makeIntoDataTable;
dtTab << New Column( "Yield",
numeric,
Formula(
(:Name( "Sum(Sum(n_unit_passed), PrePass)" ) / :Name( "Sum(Sum(n_unit), PrePass)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test1)" ) / :Name( "Sum(Sum(n_unit), Test1)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test4)" ) / :Name( "Sum(Sum(n_unit), Test4)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test2)" ) / :Name( "Sum(Sum(n_unit), Test2)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test3)" ) / :Name( "Sum(Sum(n_unit), Test3)" )) * 100
)
);
dtTab << Graph Builder(
Variables(
X( :work_week ),
Y( :Yield ),
Y( :Name( "Sum(Sum(n_unit), Test1)" ) ),
Group X( :product_family ),
Overlay( __supplier__ )
),
Elements( Position( 1, 1 ), Points( X, Y, Legend( 6 ) ), Line( X, Y, Legend( 7 ) ) ),
Elements( Position( 1, 2 ), Bar( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch( {}, "400", ScaleBox, {Legend Model( 6, Base( 0, 0, 0 ), Base( 1, 0, 0 ), Base( 2, 0, 0 ) )} ),
Dispatch( {}, "graph title", TextEditBox, {Set Text( __qsupplier__ )} ),
Dispatch( {}, "Y 1 title", TextEditBox, {Set Text( "unit Qty" )} ),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {6, [0, 1, 2], 7, [6, 7, 8], 4, [3, 4, 5]} ), Position( {0, 1, 2, 6, 7, 8, 3, 4, 5} )}
)
)
);
),
Expr( __supplier__ ), Parse( ":" || VarList[i] ),
Expr( __qsupplier__ ), VarList[i]
)
)
);Re : Sélection de paramètres multiplesSalut Cameron,
J'ai joint l'ensemble de données pour une meilleure compréhension.
dt <SPAN class="token operator">=</SPAN> <SPAN class="token function">Current Data Table</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
tab<SPAN class="token operator">=</SPAN> dt <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> Tabulate<SPAN class="token punctuation">(</SPAN>
<SPAN class="token function">Add</SPAN> Table<SPAN class="token punctuation">(</SPAN>
<SPAN class="token function">Column</SPAN> Table<SPAN class="token punctuation">(</SPAN>
Grouping Columns<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>test_type_combo <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Analysis Columns<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(n_unit)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(n_unit_passed)"</SPAN> <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token function">Row</SPAN> Table<SPAN class="token punctuation">(</SPAN>
Grouping Columns<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>work_week<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">:</SPAN>coil_supplier_A<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">:</SPAN>product_family
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
dtTab<SPAN class="token operator">=</SPAN> tab <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> makeIntoDataTable<SPAN class="token punctuation">;</SPAN>
dtTab <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> <SPAN class="token function">new column</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token string">"Yield"</SPAN><SPAN class="token punctuation">,</SPAN>numeric<SPAN class="token punctuation">,</SPAN>Formula<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), PrePass)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), PrePass)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), Test1)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test1)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), Test4)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN> <SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test4)"</SPAN> <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), Test2)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test2)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN>
<SPAN class="token string">"Sum(Sum(n_unit_passed), Test3)"</SPAN>
<SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN> <SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test3)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token number">100</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
dtTab <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> Graph Builder<SPAN class="token punctuation">(</SPAN>
Variables<SPAN class="token punctuation">(</SPAN>
X<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>work_week <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Y<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>Yield <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Y<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test1)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Group X<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>product_family <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Overlay<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>coil_supplier_A <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Elements<SPAN class="token punctuation">(</SPAN>
Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Points<SPAN class="token punctuation">(</SPAN> X<SPAN class="token punctuation">,</SPAN> Y<SPAN class="token punctuation">,</SPAN> Legend<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">6</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token function">Line</SPAN><SPAN class="token punctuation">(</SPAN> X<SPAN class="token punctuation">,</SPAN> Y<SPAN class="token punctuation">,</SPAN> Legend<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">7</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Elements<SPAN class="token punctuation">(</SPAN> Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">2</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Bar<SPAN class="token punctuation">(</SPAN> X<SPAN class="token punctuation">,</SPAN> Y<SPAN class="token punctuation">,</SPAN> Legend<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">4</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
SendToReport<SPAN class="token punctuation">(</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token string">"400"</SPAN><SPAN class="token punctuation">,</SPAN>
ScaleBox<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">{</SPAN>Legend Model<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> Base<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Base<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Base<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">2</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token string">"graph title"</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token function">TextEditBox</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">{</SPAN>Set <SPAN class="token function">Text</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"coil_supplier_A"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">"Y 1 title"</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token function">TextEditBox</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">{</SPAN>Set <SPAN class="token function">Text</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"unit Qty"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token string">"400"</SPAN><SPAN class="token punctuation">,</SPAN>
LegendBox<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">{</SPAN>Legend Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">{</SPAN><SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">[</SPAN><SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">2</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">7</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">[</SPAN><SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">7</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">8</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">4</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">[</SPAN><SPAN class="token number">3</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">4</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">5</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">}</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">{</SPAN><SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">2</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">7</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">8</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">3</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">4</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">5</SPAN><SPAN class="token punctuation">}</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
Merci.
Adam
Re : Sélection de paramètres multiplesSalut @Adam ,
Il serait utile de voir un exemple d'ensemble de données afin de mieux comprendre ce que vous décrivez.S'il y a un problème d'adresse IP, vous pouvez peut-être utiliser la fonction d'anonymisation ou créer un exemple d'ensemble de données avec des données factices qui fonctionnent avec votre script.