Kombinieren Sie mehrere Zeitschriften zu einer Zeitschrift<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />iHallo, ich würde gerne etwas Ähnliches wie unten tun. Ich verwende JMP9.
Trend_rpt = trend_biv1 << Bericht ; //trend_biv1 ist ein bivariates Objekt.
Trend_rpt << Tagebuch speichern ( Pfad speichern || „journal1.jrn“ ) ;
Trend_rpt = trend_biv2 << Bericht ; //trend_biv2 ist ein zweites bivariates Objekt.
Trend_rpt << Tagebuch speichern ( Pfad speichern || „journal2.jrn“ ) ;
//Später im Skript, nachdem der Bericht und die bivariaten Objekte nicht mehr vorhanden sind:
ob1_jrn = Offen ( Pfad speichern || „journal1.jrn“ ) ;
ob2_jrn = Offen ( Pfad speichern || „journal2.jrn“ ) ;
ob1_jrn << Anhängen ( ob2_jrn ) ; //funktioniert nicht.
ob1_jrn << Tagebuch speichern ( Pfad speichern || „combinedJournal.jrn“ ) ;
Ich hätte gerne eine Methode, um die Journalausgabe in einem einzigen Journal zusammenzufassen.
Alternativ hätte ich gerne eine Möglichkeit, mehrere PNG-Dateien zu öffnen und sie einem einzigen Journal hinzuzufügen.Soweit ich weiß, gibt es keine Möglichkeit, eine Bilddatei zu einem Journal hinzuzufügen.Irgendwelche Gedanken?Danke!
Betreff: Mehrere Zeitschriften zu einer Zeitschrift zusammenfassenVielen Dank, Herr Nelson
Das hat tatsächlich zwei Fliegen mit einer Klappe geschlagen. Ich habe buchstäblich nur daran gearbeitet, das Problem mit dem Titel des Gliederungskastens der Abschlusszeitschrift zu lösen.
Bin dankbar
Betreff: Mehrere Zeitschriften zu einer Zeitschrift zusammenfassenIn Ihrem Code scheinen Sie davon auszugehen, dass die Variablen jjrn1, jjrn2 und jjrn3 selbst die Journale sind.Sie sind nicht die Zeitschriften, sondern eher ein Hinweis auf die Zeitschriften.Also, wenn Sie es haben
jjrn1_rpt = jjrn1;
jjrn1_rpt << save journal( SavePath || "journal1.jrn" );
jjrn1 << close window;
Sie haben keine neue Kopie des Journals in der Variablen jjrn1_rpt, sondern nur einen Zeiger auf das Journal.Wenn Sie also das Journal schließen, haben weder jjrn1 noch jjrn1_rpt etwas, auf das sie verweisen können.
Wenn Sie den folgenden Code vor Ihrem Abschnitt zum Speichern der Tagebücher einfügen, erhalten Sie am Ende ein kombiniertes Tagebuch.
nw = new window( "Example",journal
ob = outline box( "Example1",
hhh = H List Box(
)
)
);
hhh << append(jjrn1);
jjrn1 << close window;
hhh << append(jjrn2);
jjrn2 << close window;
hhh << append(jjrn3);
jjrn3 << close window;
Betreff: Mehrere Zeitschriften zu einer Zeitschrift zusammenfassenIch kenne das aus einem alten Thread und dieser Code funktioniert großartig. Meine Frage ist jedoch, wie würden Sie vorgehen, wenn Sie bereits Journale geöffnet haben, die aus einem Bericht generiert wurden?
Müssen Sie es trotzdem speichern und dann wieder importieren, oder können Sie es einfach auf das Gliederungsfeld anwenden? Ein Dankeschön an Herrn TxNelson für seine Hilfe beim Schleifen mit der Funktion
dt = Current Data Table();
doGraphPlot = Function(
{dt, Xaxis, Yaxis, Grby, chnl},
Eval(
Substitute(
Expr(
gb = dt << Graph Builder(
invisible,
where( dt:channel == chnl ),
size( 600, 400 ),
show control panel( 0 ),
show legend( 0 ),
variables(
Y( Eval( Yaxis ) ),
X( Eval( Xaxis ) ),
Group X( Eval( Xgrby ) ),
Overlay( :RowCol )
),
elements( smoother( X, Y, legend( 19 ), lambda( 0.0001 ) ) )
)
),
Expr( chnl ), chnl,
Expr( mode ), mode,
Expr( wafer ), wafer
)
);
(gb << top Report)[TextBox(1)] << delete; //delete the where statemen
Report( gb )[Outline Box( 1 )] << set title( char(wafer) || " [" || char( mode ) || "] Channel = " || char( chnl ) );
);
// close( dtsum, no save );
dtsum = dt
<< Summary(
Group(
:channel,
:trmode,
:wafer_number
),
invisible ); //
jjrn1 = New Window( "Data Plot - Output1 vs Input", << Journal );
Yaxis = Expr(
Column( dt, "Output1" )
);
Xaxis = Expr(
Column( dt, "Input" )
);
Xgrby = Expr(
Column( dt, "wafer_number" )
);
For( i = 1, i <= N Row( dtsum ), i++,
chnl = dtsum:channel[i];
mode = dtsum:trmode[i];
wafer = dtsum:wafer_number[i];
doGraphPlot( dt, Yaxis, Xaxis, Xgrby, chnl );
jjrn1 << append( Report( gb ) );
gb << close window;
);
jjrn2 = New Window( "Data Plot - Output2 vs Input", << Journal );
Yaxis = Expr(
Column( dt, "Output2" )
);
Xaxis = Expr(
Column( dt, "Input" )
);
Xgrby = Expr(
Column( dt, "wafer_number" )
);
For( i = 1, i <= N Row( dtsum ), i++,
chnl = dtsum:channel[i];
mode = dtsum:trmode[i];
doGraphPlot( dt, Yaxis, Xaxis, Xgrby, chnl );
jjrn2 << append( Report( gb ) );
gb << close window;
);
jjrn3 = New Window( "Data Plot - Output3 vs Input", << Journal );
Yaxis = Expr(
Column( dt, "Output3" )
);
Xaxis = Expr(
Column( dt, "Input" )
);
Xgrby = Expr(
Column( dt, "wafer_number" )
);
For( i = 1, i <= N Row( dtsum ), i++,
chnl = dtsum:channel[i];
mode = dtsum:trmode[i];
doGraphPlot( dt, Yaxis, Xaxis, Xgrby, chnl );
jjrn3 << append( Report( gb ) );
gb << close window;
);
Close( dtsum, nosave );
SavePath = "c:\temp\";
jjrn1_rpt = jjrn1;
jjrn1_rpt << save journal( SavePath || "journal1.jrn" );
jjrn1 << close window;
jjrn2_rpt = jjrn2;
jjrn2_rpt << save journal( SavePath || "journal2.jrn" );
jjrn2 << close window;
jjrn3_rpt = jjrn3;
jjrn3_rpt << save journal( SavePath || "journal3.jrn" );
jjrn3 << close window;
nw = new window( "Example",
ob = outline box( "Example1",
H List Box(
Journal Box( ob1_jrn_txt ), // This the confusing part
Journal Box( ob2_jrn_txt ), // This the confusing part
Journal Box( ob3_jrn_txt ) // This the confusing part
)
)
);Betreff: Mehrere Zeitschriften zu einer Zeitschrift zusammenfassen//Der folgende Code verwendet Journal Box() und Picture Box(), um eine benutzerdefinierte Anzeige gespeicherter Journale und Bilder zu erstellen.
//Beachten Sie, dass Sie eine Anweisung wie jrn_src=trend_cc1 << get journal verwenden können, auch wenn trend_cc1 unsichtbar ist
//bevor sie gespeichert werden.
Pfad speichern = „c:\temp\“ ;
dt = offen ( „$sample_data\semiconductor Capability.jmp“ ) ;
dt : lot_id << Eigenschaft festlegen (
„Wertordnung“ ,
{ „Los1“ , „lot2“ , „lot3“ , „lot4“ , „Lot5“ , „lot6“ , „lot7“ , „lot8“ , „lot9“ ,
„Lot10“ , „lot11“ , „lot12“ , „lot13“ }
) ;
dt << Farbe nach Spalte ( : lot_id ) ;
// Trenddiagramme erstellen
trend_cc1 = Kontrollkarte (
Phase ( : lot_id ) ,
KSigma ( 3 ) ,
Limits-Legende anzeigen ( 0 ) ,
Diagrammspalte (
: NPN1 ,
Levey Jennings (
Test 1 ( 1 )
)
) ,
SendToReport (
Versenden (
{ „Levey Jennings von NPN1“ } ,
„1“ ,
ScaleBox ,
{ Format ( "Am besten" , 10 ) , Mindest ( 0,5 ) , Max ( 1456 ) , Inc ( 100 ) ,
Kleinere Zecken ( 0 )}
) ,
Versenden (
{ „Levey Jennings von NPN1“ } ,
„Levey-Jennings-Diagramm“ ,
FrameBox ,
{ Rahmengröße ( 546 , 182 )}
)
)
) ;
trend_cc2 = Kontrollkarte (
Phase ( : lot_id ) ,
KSigma ( 3 ) ,
Limits-Legende anzeigen ( 0 ) ,
Diagrammspalte (
: PNP1 ,
Levey Jennings (
Test 1 ( 1 )
)
) ,
SendToReport (
Versenden (
{ „Levey Jennings von PNP1“ } ,
„1“ ,
ScaleBox ,
{ Format ( "Am besten" , 10 ) , Mindest ( 0,5 ) , Max ( 1456 ) , Inc ( 100 ) ,
Kleinere Zecken ( 0 )}
) ,
Versenden (
{ „Levey Jennings von PNP1“ } ,
„Levey-Jennings-Diagramm“ ,
FrameBox ,
{ Rahmengröße ( 546 , 182 )}
)
)
) ;
Trend_rpt = trend_cc1 << Bericht ; //trend_cc1 ist ein Kontrolldiagrammobjekt.
Trend_rpt << Tagebuch speichern ( Pfad speichern || „journal1.jrn“ ) ;
trend_cc1 << Fenster schließen ;
Trend_rpt = trend_cc2 << Bericht ; //trend_cc2 ist ein zweites Kontrolldiagrammobjekt.
Trend_rpt << Tagebuch speichern ( Pfad speichern || „journal2.jrn“ ) ;
trend_cc2 << Fenster schließen ;
//Später im Skript, nachdem die Berichts- und bivariaten (oder Kontrolldiagramm-)Objekte nicht mehr vorhanden sind:
//JMP-Beispiel aus Funktionen >> Anzeige >> Bildbox()
Bild = Wenn ( Gastgeber ist ( Windows ) ,
Offen (
„$JMP_HOME/Support Files English/Tip of the Day/images/tip8-1.gif“ ,
png
)
) ;
// Sie können die JRN-Datei als Text oder als Journal lesen
//Wenn Sie als Journaldatei lesen, haben Sie auch 2 Journale
//Fenster öffnen, Sie können sie unsichtbar öffnen
ob1_jrn_txt = Textdatei laden ( Pfad speichern || „journal1.jrn“ , Unsichtbar) ;
ob2_jrn_txt = Textdatei laden ( Pfad speichern || „journal2.jrn“ , Unsichtbar) ;
jetzt = Neues Fenster ( "Beispiel" ,
ob = OutlineBox ( „Lege sie aus und stapele sie“ ,
HListBox (
Bilderkiste ( Bild ) ,
VlistBox ( Journalbox ( ob1_jrn_txt ) , JournalBox ( ob2_jrn_txt )
)))) ;
ob1_jrn = Offen ( Pfad speichern || „journal1.jrn“ ) ;
ob2_jrn = Offen ( Pfad speichern || „journal2.jrn“ ) ;
ob1_jrn_src = ob1_jrn << Holen Sie sich ein Tagebuch ;
ob2_jrn_src = ob2_jrn << Holen Sie sich ein Tagebuch ;
//Jetzt Journalfensterobjekte schließen
ob1_jrn << Fenster schließen ;
ob2_jrn << Fenster schließen ;
ob << anhängen ( HlistBox ( Journalbox ( ob1_jrn_src ) , JournalBox ( ob2_jrn_src )
)) ;
Betreff: Mehrere Zeitschriften zu einer Zeitschrift zusammenfassenEs können nur Anzeigefelder angehängt werden. Ein Index (oder Name) kann verwendet werden, um ein Anzeigefeld innerhalb des Journalobjekts anzusprechen.
Das sollte funktionieren:
ob1_jrn << anhängen ( ob2_jrn [ 1 ]) ;
Oder alternativ, um mehr Layout-Optionen zu erhalten, können die Inhalte beider Zeitschriften in einem neuen Fenster kombiniert werden, z. B.:
jetzt = neues Fenster ( „Biv1&2“ , hlistbox ( ob1_jrn [ 1 ] , ob2_jrn [ 1 ] ) ) ;
jetzt << Tagebuch speichern ( Pfad speichern || „combinedJournal.jrn“ ) ;