Sorry it's still not working. Here is an example of the first method, using (mostly) your script and some sample data table:
table1 = Open("$SAMPLE_DATA/Big Class.jmp");
table1 << Set Window ID("Table1");
graph1 = table1 << Run Script("Bivariate");
graph1 << Set Window ID("graph1");
table2 = Open("$SAMPLE_DATA/Iris.jmp");
table2 << Set Window ID("Table2");
graph2 = table2 << Run Script("Graph Builder Contour Plot");
graph2 << Set Window ID("graph2");
table3 = Open("$SAMPLE_DATA/Baseball.jmp");
table3 << Set Window ID("Table3");
Project = new project();
Move to Project( destination( Project ), windows( {table1, table2, table3} ));
Project << Set Layout(
H Splitter Box(
<<Set Sizes( {0.85, 0.15} ),
V Splitter Box(
<<Set Sizes( {0.3, 0.7} ),
H Splitter Box(
<<Set Sizes( {0.5, 0.5} ),
Tab Page Box( Window ID( "graph1" ) ),
Tab Page Box( Window ID( "graph2" ) )
),
Tab Box(
Tab Page Box( Window ID( "Table1" ) ),
Tab Page Box( Window ID( "Table2" ) ),
Tab Page Box( Window ID( "Table3" ) )
),
),
Tab Page Box(
Title( "Window List" ),
Window ID( "Windows" )
),
),
);
And here is one way to do it whout setting the IDs:
table1 = Open("$SAMPLE_DATA/Big Class.jmp");
graph1 = table1 << Run Script("Bivariate");
table2 = Open("$SAMPLE_DATA/Iris.jmp");
graph2 = table2 << Run Script("Graph Builder Contour Plot");
table3 = Open("$SAMPLE_DATA/Baseball.jmp");
Project = new project();
Move to Project( destination( Project ), windows( {table1, table2, table3} ));
Project << Set Layout(
H Splitter Box(
<<Set Sizes( {0.85, 0.15} ),
V Splitter Box(
<<Set Sizes( {0.3, 0.7} ),
H Splitter Box(
<<Set Sizes( {0.5, 0.5} ),
Tab Page Box( Window ID( graph1 << Get Window ID() ) ),
Tab Page Box( Window ID( graph2 << Get Window ID() ) )
),
Tab Box(
Tab Page Box( Window ID( table1 << Get Window ID() ) ),
Tab Page Box( Window ID( table2 << Get Window ID() ) ),
Tab Page Box( Window ID( table3 << Get Window ID() ) )
),
),
Tab Page Box(
Title( "Window List" ),
Window ID( "Windows" )
),
),
);
Lastly, here's a version that avoids the Move to Project() by opening the windows in the project from the start:
Project = new project();
Project << Run Script(
table1 = Open("$SAMPLE_DATA/Big Class.jmp");
table1 << Set Window ID("Table1");
graph1 = table1 << Run Script("Bivariate");
graph1 << Set Window ID("graph1");
table2 = Open("$SAMPLE_DATA/Iris.jmp");
table2 << Set Window ID("Table2");
graph2 = table2 << Run Script("Graph Builder Contour Plot");
graph2 << Set Window ID("graph2");
table3 = Open("$SAMPLE_DATA/Baseball.jmp");
table3 << Set Window ID("Table3");
);
Project << Set Layout(
H Splitter Box(
<<Set Sizes( {0.85, 0.15} ),
V Splitter Box(
<<Set Sizes( {0.3, 0.7} ),
H Splitter Box(
<<Set Sizes( {0.5, 0.5} ),
Tab Page Box( Window ID( "graph1" ) ),
Tab Page Box( Window ID( "graph2" ) )
),
Tab Box(
Tab Page Box( Window ID( "Table1" ) ),
Tab Page Box( Window ID( "Table2" ) ),
Tab Page Box( Window ID( "Table3" ) )
),
),
Tab Page Box(
Title( "Window List" ),
Window ID( "Windows" )
),
),
);
Hopefully one of those can be modified to work with your script.