Buongiorno,
Voglio creare uno script di capacità lasciando che l'utente scelga su quale parametro desidera eseguire l'analisi delle capacità.
Ho una casella combinata che offre tutti i parametri possibili e recupero la scelta dell'utente nella variabile choiceCapa. L'utente deve anche inserire manualmente i valori per i limiti inferiore e superiore e il target.
Text Box("Veuillez choisir un paramètre :"),
comboCapa = Combo Box (columns_table_ref, choixCapa = comboCapa << Get Selected),
Text Box("Veuillez renseigner les paramètres suivants :"),
Text Box("Limite inférieure :"),
lim_inf_neb = Number Edit Box(),
Text Box("Objectif :"),
obj_neb = Number Edit Box(),
Text Box("Limite supérieure :"),
lim_sup_neb = Number Edit Box(),
okCapa = Button Box ("Valider", capacite)Quindi ho uno script che traccia la capacità:
capacite = expr(
lim_inf = lim_inf_neb << get;
lim_sup = lim_sup_neb << get;
obj = obj_neb << get;
Process Capability(
Process Variables(As Column(choixCapa) ),
Spec Limits( As Column(choixCapa)( LSL( lim_inf ), Target( obj ), USL( lim_sup ) ) ),
Moving Range Method( Average of Moving Ranges ),
Individual Detail Reports( 1 ),
Capability Box Plots( 0 ),
Goal Plot( 0, Capability Lines( 1.0217 ), Show Overall Sigma Points( 0 ) ),
Capability Index Plot( 0 ),
Process Performance Plot( 0 ),
SendToReport(
Dispatch(
{"Individual Detail Reports", choixCapa||" Capability", "Histogram"},
"Process Capability Analysis Histogram",
FrameBox,
{Frame Size( 311, 19 )}
),
Dispatch(
{"Individual Detail Reports", choixCapa||" Capability", "Histogram"},
"Process Capability Analysis Histogram",
FrameBox( 2 ),
{Frame Size( 311, 160 )}
)
)
)
);Ho un errore nella riga Variabili di processo in cui specifico il nome della colonna che è l'input dell'utente:
Impossibile trovare la colonna specificata nella tabella dati. quando si accede o si valuta "List", {/ * ### * / choisCapa}
Non so come trasformare il mio input in un nome di colonna comprensibile per tracciare la capacità ...
Grazie in anticipo per le tue risposte
Prova se usare Eval() invece di AsColumn() aiuta.
In caso contrario, potresti dover ricorrere a qualcosa del tipo Inserisci un'espressione in un'altra usando Eval Insert, Eval Expr, Parse e Substitute