<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ciao,
Dal momento che il mio scorso domanda UN pochi giorni IO Avere Venire UN poco ulteriore con Mio sceneggiatura.
Per completare il primo passaggio vorrei unire i report (in 3 finestre) in un unico report (1 finestra).
Come posso fare questo ... Vedi riga 51 ss
E come posso salvare questo report denominato automaticamente in base al nome del file_dati (primi 10 caratteri) E _Baseline (se si seleziona più di un mese) O _Mensile (con il mese selezionato)? ...vedi riga 33-40
il mio script:
Pulisci il registro();
Cancella globali();
data_file= Scegli file("Seleziona database");
dt_data= Apri(file_dati, invisibile);
spec_file= Scegli file("Seleziona file specifiche");
dt_spec= Apri( file_spec, invisibile);
//dt_ssum= Nuova tabella("Riepilogo statistiche", invisibile);
specColName = dt_spec << OttieniNomiColonne( Numerico, Stringa );
dataColName = dt_data << GetColumnNames( Numerico, Stringa );
specEspr = Espr(
Colonna( dt_data, nome ) <
"Limiti delle specifiche",
{LSL( Espr( inferiore ) ), USL( Espr( superiore ) )}
);
);
For( i = 1, i <= N righe( dt_spec ), i++,
nome = Colonna( dt_spec, "Processo" ) ;
inferiore = Colonna( dt_spec, "LSL" ) ;
superiore = Colonna( dt_spec, "USL" ) ;
Se (contiene (dataColName, nome),
Valutazione( Valutazione Espr( specExpr ) )
);
);
Tabella dati corrente(dt_data);
Nuova finestra("Seleziona UN mese", <
Casella di riepilogo V(
Casella di testo ("o TUTTI per la linea di base"),
mon = Casella di riepilogo(:Stage << ottieni valori),
Button Box("OK", cho = mon << ottieni selezionato),
)
);
dt_data << Seleziona Dove(Contiene(cho, :Stage));
Se (
cho [1] == "Baseline",
dt_data << cancella righe,
dt_data << inverte la selezione della riga;
dt_data << cancella righe;
);
for (k = 1, k <= N elementi(dataColName),k++,
cc = dt_data <
Dimensione del gruppo( 1 ),
KSigma( 3 ),
Grafico Col(
dataColName,
Misurazione individuale (Test 1( 1 ), Test 2( 1 ), Test 3( 1 )),
Portata mobile,
Capacità(
Distribuzione(
Distribuzione continua(
Colonna (dataColName),
Quantili( 0 ),
Disposizione orizzontale( 0 ),
Istogramma( 0 ),
Verticale( 0 ),
Diagramma a scatola anomalo (0),
Statistiche riassuntive ( 1 ), // nessuna funzione
Grafico quantile normale( 0 ), // nessuna funzione
Etichettatura della capacità PpK( 1 ),
Analisi delle capacità,
)
)
)
),
Invia al rapporto (
Spedizione(
{"Misurazione individuale del test"},
"Carta IR di IM",
FrameBox( 2 ),
{Dimensione fotogramma( 75, 162 )}
),
Spedizione(
{"Intervallo mobile del test"},
"Grafico IR della MR",
FrameBox( 2 ),
{Dimensione fotogramma( 75, 162 )}
),
Spedizione(
{"Analisi delle capacità"},
"Sigma a lungo termine",
casella di contorno,
{Chiudi( 1 )}
),
Spedizione(
{"Analisi delle capacità"},
"Carta di controllo Sigma",
)
)
)
);
// crea e salva una nuova tabella con LSL, USL, UCL, AVG, LCL,
// Statistiche riassuntive, CP, CPK, CPL, CPU, Sigma (Carta di controllo Sigma)
ccr = cc << Rapporto;
ccr << mostra la struttura ad albero();
//ccr[StringColBox(1)]
//ccr[NumeroColBox(1)]
//ccr[FrameBox(2)]
//ccr[StringColBox(7)]
//ccr[NumeroColBox(9)]
//ccr[Casella di testo(6)]
Grazie per l'aiuto
Sembra che ci siano 3 domande qui.
Ecco alcuni esempi di codice per combinare l'output in un'unica finestra:
dt = Aprire ( "$SAMPLE_DATA/Capacità semiconduttore.jmp" ) ;
ora = Nuova finestra ( "Dimostrazione" ,
contenitore = Casella di riepilogo V ()
) ;
Per ( io = 5 , io < 8 , io ++,
contenuto = Casella di riepilogo V (
dt << Carta di controllo (
Grafico col ( Colonna ( io ) , XBar ) ,
Etichetta campione ( : wafer ) ,
KSigma ( 3 )
)
) ;
contenitore << Aggiungere ( contenuto )
) ;
Per quanto riguarda il salvataggio automatico del report, proverò a rispondere senza elaborare i dettagli del codice.Ci sono due aspetti: come ottenere il nome giusto e come eseguire il salvataggio.Vuoi derivare il nome da più componenti: nome della tabella e baseline.Non ho esaminato nel dettaglio cosa intendi per linea di base, ma i principi consistono nell'utilizzare la manipolazione dei personaggi.Se vuoi le prime 10 lettere del nome della tabella puoi scrivere:
nometabella = dt_data << Ottieni nome ;
nome corto = Sinistra ( nometabella , 10 ) ;
Sulla base della costruzione di un'altra stringa che rappresenta le informazioni della linea di base (ad esempio strBaseline), è possibile costruire un nome file, ad es.
nome del file = nome corto || "_" || strBaseline || ".PDF" ;
Quindi per salvare automaticamente il report puoi scrivere qualcosa del tipo:
ora << Salva PDF ( nome del file );
Se vuoi salvarlo come report JMP, non sono sicuro di come o se ciò possa essere fatto automaticamente, ma puoi salvarlo come diario:
nome del file = nome corto || "_" || strBaseline || ".jrn" ;
ora << Salva diario ( nome del file );
- Dave