Hallo,
Ich versuche, ein kombiniertes Dashboard aus drei separaten Dashboards zu erstellen. Auf jedes Dashboard wird im Dashboard-Builder selbst ein lokaler Datenfilter angewendet, der eine Teilmenge der Daten auswählt (VTF/V/001). In eines dieser drei Dashboards habe ich ein vorläufiges Kontrolldiagramm eingefügt, das bereits so gefiltert ist, dass es nur diese Teilmenge der Daten enthält. Wenn ich die einzelnen Dashboards betreibe, funktioniert jedes einzelne perfekt. Wenn ich jedoch das kombinierte Dashboard ausführe, wird mein Kontrolldiagramm entfernt. Ich glaube, dass dies möglicherweise etwas mit lokalen Datenfiltern zu tun hat, aber ich weiß nicht, wie ich dieses Problem lösen kann. Ich werde meinen Code unten anhängen:
Eines der einzelnen Dashboards, das das Kontrolldiagramm enthält (funktioniert einzeln, aber nicht in Kombination):
JMP App(
Set Name( "ND50" ),
Set Description( "Four reports arranged in a grid" ),
Auto Launch( 1 ),
Snap To Grid( 1 ),
Show Grid( 1 ),
Show Properties( 0 ),
Show Sources( 1 ),
Group By Category( 0 ),
Dashboard Mode( 1 ),
Parameters,
Tables(
DataTable1 = GuiTable(
Set Path(
"//phe.gov.uk/porton/SharedData/Wuhan-CoV/IN VITRO testing/MNA testing/Trending MNA/JMP for trending/Control Chart Trials/Control_Charts_Dashboard.jmp"
),
Set Label( "Control_Charts_Dashboard" ),
Location( "Current Data Table" ),
Invisible( 0 )
)
),
Thumbnail(
New Image(
Char To Blob(
"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",
"base64compressed"
),
"png"
)
),
Script(JSL Quote(// This script is executed when the application is run.
// Named objects have been created for the application modules
// (for example, "Module1") and the pre-defined object
// "thisApplication" refers to the application object itself.
// Variables and functions declared here are scoped to the
// Application namespace.
) ),
Allocate(
Module1 = Plan(
PreAllocate,
Script(JSL Quote( thisModuleInstance << Create Objects; Try(MainTabPage << Set Scriptable Object(thisApplication));
) ),
Allocate(
DataFilterContext1 = Data Filter Context Box();
Splitter4 = H Splitter Box();
TabPage5 = Tab Page Box();
Scroll5 = Scroll Box();
DataFilter1 = DataTable1 <<
Data Filter(
Local,
Add Filter(
columns(
:
"Critical Reagent/equipment Tracking-Viral working stock"n
),
Where(
:
"Critical Reagent/equipment Tracking-Viral working stock"n
== "VTF/V/001"
),
Display(
:
"Critical Reagent/equipment Tracking-Viral working stock"n,
N Items( 11 )
)
)
);
MainTabPage = Tab Page Box();
Splitter1 = H Splitter Box();
Splitter2 = V Splitter Box();
TabPage1 = Tab Page Box();
Scroll1 = Scroll Box();
Report1 = Platform(
DataTable1,
Graph Builder(
Size( 712, 359 ),
Show Control Panel( 0 ),
Fit to Window,
Variables(
X(
Transform Column(
"Month Year[Assay Date]",
Ordinal,
Format( "m/y", 12 ),
Formula(
Date DMY(
1,
Month( :Assay Date ),
Year( :Assay Date )
)
)
)
),
Y( :Plates passed system suitability ? )
),
Elements( Mosaic( X, Y, Legend( 9 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
9,
Properties(
1,
{Fill Color( 3 )},
Item ID( "Fail", 1 )
),
Properties(
-1,
{Fill Color( 69 )},
Item ID( "NA", 1 )
)
)}
),
Dispatch(
{},
"400",
LegendBox,
{Set Title( "System Suitability (P/F)" )}
)
)
)
);
TabPage2 = Tab Page Box();
Scroll2 = Scroll Box();
Report2 = Platform(
DataTable1,
Graph Builder(
Size( 684, 342 ),
Show Control Panel( 0 ),
Fit to Window,
Variables(
X( :Vero Cell lot # ),
X( :FBS lot# ),
Y( :Log10 Reference ND50 ),
Color(
:
"Critical Reagent/equipment Tracking-Viral working stock"n
)
),
Elements( Position( 1, 1 ), Box Plot( X, Y, Legend( 13 ) ) ),
Elements( Position( 2, 1 ), Box Plot( X, Y, Legend( 14 ) ) ),
SendToReport(
Dispatch(
{},
"Log10 Reference ND50",
ScaleBox,
{Add Ref Line(
2.84757265914, "Solid", "Green", "LCL", 2
), Add Ref Line(
3.30984300472, "Solid", "Orange", "Target", 2
), Add Ref Line(
3.77202816532, "Solid", "Red", "UCL", 2
)}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
14,
Properties(
1,
{Fill Color( 3 )},
Item ID( "VTF/V/001", 1 )
)
)}
)
)
)
);
Splitter3 = V Splitter Box();
TabPage3 = Tab Page Box();
Scroll3 = Scroll Box();
Report3 = Platform(
DataTable1,
Control Chart(
Sample Label( :Assay Date ),
KSigma( 3 ),
Chart Col(
:Log10 Reference ND50,
Individual on Group Means(
Show Zones( 1 ),
Shade Zones( 1 ),
Test 1( 1 ),
Test 2( 1 ),
Test 3( 1 ),
Test 4( 1 ),
Test 5( 1 ),
Test 6( 1 ),
Test 7( 1 ),
Test 8( 1 )
),
Moving Range on Group Means
),
Where(
:
"Critical Reagent/equipment Tracking-Viral working stock"n
== "VTF/V/001"
),
SendToReport(
Dispatch(
{"Individual on Group Means of Log10 Reference ND50"
},
"Presummarize Control Chart of IM",
FrameBox,
{Frame Size( 945, 303 )}
),
Dispatch(
{"Individual on Group Means of Log10 Reference ND50"
},
"Control Chart Limits frame",
FrameBox,
{Frame Size( 64, 303 )}
),
Dispatch(
{},
"Moving Range on Group Means of Log10 Reference ND50",
OutlineBox,
{Close( 1 )}
),
Dispatch(
{
"Moving Range on Group Means of Log10 Reference ND50"
},
"Presummarize Control Chart of MRM",
FrameBox,
{Frame Size( 945, 303 )}
),
Dispatch(
{
"Moving Range on Group Means of Log10 Reference ND50"
},
"Control Chart Limits frame",
FrameBox,
{Frame Size( 64, 303 )}
)
)
)
);
TabPage4 = Tab Page Box();
Scroll4 = Scroll Box();
Report4 = Platform(
DataTable1,
Graph Builder(
Size( 717, 397 ),
Show Control Panel( 0 ),
Fit to Window,
Variables(
X( :Assay Date ),
Y( :Log10 Reference ND50 ),
Color(
:
"Critical Reagent/equipment Tracking-Viral working stock"n
)
),
Elements( Points( X, Y, Legend( 3 ) ) ),
SendToReport(
Dispatch(
{},
"Log10 Reference ND50",
ScaleBox,
{Add Ref Line(
3.77202816532, "Solid", "Red", "UCL", 2
), Add Ref Line(
3.30984300472, "Solid", "Orange", "Target", 2
), Add Ref Line(
2.84757265914, "Solid", "Green", "LCL", 2
)}
),
Dispatch(
{},
"400",
LegendBox,
{Set Title( "Viral Stock" )}
)
)
)
);
),
Organize(
Reparent( Scroll4( Report4 ) );
Reparent( TabPage4( Scroll4 ) );
Reparent( Splitter3( TabPage4 ) );
Reparent( Scroll3( Report3 ) );
Reparent( TabPage3( Scroll3 ) );
Reparent( Splitter3( TabPage3 ) );
Reparent( Splitter1( Splitter3 ) );
Reparent( Scroll2( Report2 ) );
Reparent( TabPage2( Scroll2 ) );
Reparent( Splitter2( TabPage2 ) );
Reparent( Scroll1( Report1 ) );
Reparent( TabPage1( Scroll1 ) );
Reparent( Splitter2( TabPage1 ) );
Reparent( Splitter1( Splitter2 ) );
Reparent( MainTabPage( Splitter1 ) );
Reparent( Splitter4( MainTabPage ) );
Reparent( Scroll5( DataFilter1 ) );
Reparent( TabPage5( Scroll5 ) );
Reparent( Splitter4( TabPage5 ) );
Reparent( DataFilterContext1( Splitter4 ) );
Relocate( DataFilterContext1( 0, 0 ) );
),
Initialize(
DataFilterContext1 << Background Color( 2147483647 ),
DataFilterContext1 << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), DataFilterContext1 << Enabled( 1 ),
DataFilterContext1 << Horizontal Alignment( "Default" ),
DataFilterContext1 << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
DataFilterContext1 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), DataFilterContext1 << Text Color( 2147483647 ),
DataFilterContext1 << UI Only( 0 ),
DataFilterContext1 << Vertical Alignment( "Default" ),
DataFilterContext1 << Visibility( "Visible" ),
DataFilterContext1 << Set Min Size( 551, 311 ),
DataFilterContext1 << Set Max Size( 60003, 30000 ),
DataFilterContext1 << Set Stretch( {"Neutral", "Neutral"} ),
Splitter4 << Background Color( 2147483647 ),
Splitter4 << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter4 << Enabled( 1 ),
Splitter4 << Horizontal Alignment( "Default" ),
Splitter4 << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
Splitter4 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter4 << Text Color( 2147483647 ), Splitter4 << UI Only( 0 ),
Splitter4 << Vertical Alignment( "Default" ),
Splitter4 << Visibility( "Visible" ), Splitter4 << Dockable( 1 ),
Splitter4 << Set Width( 1908 ), Splitter4 << Set Height( 910 ),
Splitter4 << Set Sizes( {0.1, 0.9} ),
Splitter4 << Set Min Size( 551, 311 ),
Splitter4 << Set Max Size( 60003, 30000 ),
Splitter4 << Set Stretch( {"Window", "Window"} ),
Splitter4 << set horizontal( 1 ),
TabPage5 << Background Color( 2147483647 ),
TabPage5 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage5 << Enabled( 1 ),
TabPage5 << Horizontal Alignment( "Default" ),
TabPage5 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage5 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), TabPage5 << Text Color( 2147483647 ), TabPage5 << UI Only( 0 ),
TabPage5 << Vertical Alignment( "Default" ),
TabPage5 << Visibility( "Visible" ),
TabPage5 << Set Min Size( 72, 62 ),
TabPage5 << Set Max Size( 30000, 30000 ),
TabPage5 << Set Stretch( {"Neutral", "Neutral"} ),
TabPage5 << Title( "Local Data Filter" ), TabPage5 << Tip( "" ),
TabPage5 << Icon( "Filter" ), TabPage5 << Closeable( 1 ),
TabPage5 << Moveable( 1 ), TabPage5 << Set Base Font( "Text" ),
TabPage5 << Set Font Scale( 1 ),
Scroll5 << Background Color( 2147483647 ),
Scroll5 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll5 << Enabled( 1 ),
Scroll5 << Horizontal Alignment( "Default" ),
Scroll5 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll5 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll5 << Text Color( 2147483647 ), Scroll5 << UI Only( 0 ),
Scroll5 << User Resizable( {1, 1} ),
Scroll5 << Vertical Alignment( "Default" ),
Scroll5 << Visibility( "Visible" ),
Scroll5 << Set Min Size( 72, 36 ),
Scroll5 << Set Max Size( 30000, 30000 ),
Scroll5 << Set Stretch( {"Window", "Window"} ),
Scroll5 << Width( 191 ), Scroll5 << Height( 884 ),
Scroll5 << Set Auto Scrollable( 1 ),
Scroll5 << Set Scrollers( 1, 1 ), Scroll5 << Set Show Empty( 0 ),
Scroll5 << Set Clip Printing( 0 ),
DataFilter1 << Background Color( 2147483647 ),
DataFilter1 << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), DataFilter1 << Enabled( 1 ),
DataFilter1 << Horizontal Alignment( "Default" ),
DataFilter1 << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
DataFilter1 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), DataFilter1 << Text Color( 2147483647 ),
DataFilter1 << UI Only( 0 ),
DataFilter1 << Vertical Alignment( "Default" ),
DataFilter1 << Visibility( "Visible" ),
MainTabPage << Background Color( 2147483647 ),
MainTabPage << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), MainTabPage << Enabled( 1 ),
MainTabPage << Horizontal Alignment( "Default" ),
MainTabPage << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
MainTabPage << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), MainTabPage << Text Color( 2147483647 ),
MainTabPage << UI Only( 0 ),
MainTabPage << Vertical Alignment( "Default" ),
MainTabPage << Visibility( "Visible" ),
MainTabPage << Set Min Size( 476, 311 ),
MainTabPage << Set Max Size( 30000, 30000 ),
MainTabPage << Set Stretch( {"Neutral", "Neutral"} ),
MainTabPage << Title( "Dashboard" ), MainTabPage << Tip( "" ),
MainTabPage << Icon( "" ), MainTabPage << Closeable( 0 ),
MainTabPage << Moveable( 0 ), MainTabPage << Set Base Font( "Text" ),
MainTabPage << Set Font Scale( 1 ),
Splitter1 << Background Color( 2147483647 ),
Splitter1 << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter1 << Enabled( 1 ),
Splitter1 << Horizontal Alignment( "Default" ),
Splitter1 << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
Splitter1 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter1 << Text Color( 2147483647 ), Splitter1 << UI Only( 0 ),
Splitter1 << Vertical Alignment( "Default" ),
Splitter1 << Visibility( "Visible" ), Splitter1 << Dockable( 1 ),
Splitter1 << Set Width( 1714 ), Splitter1 << Set Height( 884 ),
Splitter1 << Set Sizes( {0.5, 0.5} ),
Splitter1 << Set Min Size( 476, 285 ),
Splitter1 << Set Max Size( 60003, 60003 ),
Splitter1 << Set Stretch( {"Window", "Window"} ),
Splitter1 << set horizontal( 1 ),
Splitter2 << Background Color( 2147483647 ),
Splitter2 << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter2 << Enabled( 1 ),
Splitter2 << Horizontal Alignment( "Default" ),
Splitter2 << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
Splitter2 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter2 << Text Color( 2147483647 ), Splitter2 << UI Only( 0 ),
Splitter2 << Vertical Alignment( "Default" ),
Splitter2 << Visibility( "Visible" ), Splitter2 << Dockable( 1 ),
Splitter2 << Set Width( 856 ), Splitter2 << Set Height( 884 ),
Splitter2 << Set Sizes( {0.5, 0.5} ),
Splitter2 << Set Min Size( 272, 285 ),
Splitter2 << Set Max Size( 30000, 60003 ),
Splitter2 << Set Stretch( {"Window", "Window"} ),
Splitter2 << set horizontal( 0 ),
TabPage1 << Background Color( 2147483647 ),
TabPage1 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage1 << Enabled( 1 ),
TabPage1 << Horizontal Alignment( "Default" ),
TabPage1 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage1 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), TabPage1 << Text Color( 2147483647 ), TabPage1 << UI Only( 0 ),
TabPage1 << Vertical Alignment( "Default" ),
TabPage1 << Visibility( "Visible" ),
TabPage1 << Set Min Size( 244, 153 ),
TabPage1 << Set Max Size( 30000, 30000 ),
TabPage1 << Set Stretch( {"Neutral", "Neutral"} ),
TabPage1 << Title( "Graph Builder" ), TabPage1 << Tip( "" ),
TabPage1 << Icon( "Trellis" ), TabPage1 << Closeable( 1 ),
TabPage1 << Moveable( 1 ), TabPage1 << Set Base Font( "Text" ),
TabPage1 << Set Font Scale( 1 ),
Scroll1 << Background Color( 2147483647 ),
Scroll1 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll1 << Enabled( 1 ),
Scroll1 << Horizontal Alignment( "Default" ),
Scroll1 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll1 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll1 << Text Color( 2147483647 ), Scroll1 << UI Only( 0 ),
Scroll1 << User Resizable( {1, 1} ),
Scroll1 << Vertical Alignment( "Default" ),
Scroll1 << Visibility( "Visible" ),
Scroll1 << Set Min Size( 244, 127 ),
Scroll1 << Set Max Size( 30144, 30017 ),
Scroll1 << Set Stretch( {"Window", "Window"} ),
Scroll1 << Width( 856 ), Scroll1 << Height( 415 ),
Scroll1 << Set Auto Scrollable( 1 ),
Scroll1 << Set Scrollers( 0, 0 ), Scroll1 << Set Show Empty( 0 ),
Scroll1 << Set Clip Printing( 0 ),
Report1 << Background Color( 2147483647 ),
Report1 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report1 << Enabled( 1 ),
Report1 << Horizontal Alignment( "Default" ),
Report1 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report1 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report1 << Text Color( 2147483647 ), Report1 << UI Only( 0 ),
Report1 << Vertical Alignment( "Default" ),
Report1 << Visibility( "Visible" ),
Report1 << Set Min Size( 244, 127 ),
Report1 << Set Max Size( 30144, 30017 ),
Report1 << Set Stretch( {"Neutral", "Neutral"} ),
Report1 << set horizontal( 0 ),
TabPage2 << Background Color( 2147483647 ),
TabPage2 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage2 << Enabled( 1 ),
TabPage2 << Horizontal Alignment( "Default" ),
TabPage2 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage2 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), TabPage2 << Text Color( 2147483647 ), TabPage2 << UI Only( 0 ),
TabPage2 << Vertical Alignment( "Default" ),
TabPage2 << Visibility( "Visible" ),
TabPage2 << Set Min Size( 272, 129 ),
TabPage2 << Set Max Size( 30000, 30000 ),
TabPage2 << Set Stretch( {"Neutral", "Neutral"} ),
TabPage2 << Title( "Graph Builder" ), TabPage2 << Tip( "" ),
TabPage2 << Icon( "Trellis" ), TabPage2 << Closeable( 1 ),
TabPage2 << Moveable( 1 ), TabPage2 << Set Base Font( "Text" ),
TabPage2 << Set Font Scale( 1 ),
Scroll2 << Background Color( 2147483647 ),
Scroll2 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll2 << Enabled( 1 ),
Scroll2 << Horizontal Alignment( "Default" ),
Scroll2 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll2 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll2 << Text Color( 2147483647 ), Scroll2 << UI Only( 0 ),
Scroll2 << User Resizable( {1, 1} ),
Scroll2 << Vertical Alignment( "Default" ),
Scroll2 << Visibility( "Visible" ),
Scroll2 << Set Min Size( 272, 103 ),
Scroll2 << Set Max Size( 30172, 30017 ),
Scroll2 << Set Stretch( {"Window", "Window"} ),
Scroll2 << Width( 856 ), Scroll2 << Height( 414 ),
Scroll2 << Set Auto Scrollable( 1 ),
Scroll2 << Set Scrollers( 0, 0 ), Scroll2 << Set Show Empty( 0 ),
Scroll2 << Set Clip Printing( 0 ),
Report2 << Background Color( 2147483647 ),
Report2 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report2 << Enabled( 1 ),
Report2 << Horizontal Alignment( "Default" ),
Report2 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report2 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report2 << Text Color( 2147483647 ), Report2 << UI Only( 0 ),
Report2 << Vertical Alignment( "Default" ),
Report2 << Visibility( "Visible" ),
Report2 << Set Min Size( 272, 103 ),
Report2 << Set Max Size( 30172, 30017 ),
Report2 << Set Stretch( {"Neutral", "Neutral"} ),
Report2 << set horizontal( 0 ),
Splitter3 << Background Color( 2147483647 ),
Splitter3 << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter3 << Enabled( 1 ),
Splitter3 << Horizontal Alignment( "Default" ),
Splitter3 << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
Splitter3 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), Splitter3 << Text Color( 2147483647 ), Splitter3 << UI Only( 0 ),
Splitter3 << Vertical Alignment( "Default" ),
Splitter3 << Visibility( "Visible" ), Splitter3 << Dockable( 1 ),
Splitter3 << Set Width( 855 ), Splitter3 << Set Height( 884 ),
Splitter3 << Set Sizes( {0.5, 0.5} ),
Splitter3 << Set Min Size( 201, 183 ),
Splitter3 << Set Max Size( 30000, 60003 ),
Splitter3 << Set Stretch( {"Window", "Window"} ),
Splitter3 << set horizontal( 0 ),
TabPage3 << Background Color( 2147483647 ),
TabPage3 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage3 << Enabled( 1 ),
TabPage3 << Horizontal Alignment( "Default" ),
TabPage3 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage3 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), TabPage3 << Text Color( 2147483647 ), TabPage3 << UI Only( 0 ),
TabPage3 << Vertical Alignment( "Default" ),
TabPage3 << Visibility( "Visible" ),
TabPage3 << Set Min Size( 72, 62 ),
TabPage3 << Set Max Size( 30000, 30000 ),
TabPage3 << Set Stretch( {"Neutral", "Neutral"} ),
TabPage3 << Title( "TabPage3" ), TabPage3 << Tip( "" ),
TabPage3 << Icon( "ControlC" ), TabPage3 << Closeable( 1 ),
TabPage3 << Moveable( 1 ), TabPage3 << Set Base Font( "Text" ),
TabPage3 << Set Font Scale( 1 ),
Scroll3 << Background Color( 2147483647 ),
Scroll3 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll3 << Enabled( 1 ),
Scroll3 << Horizontal Alignment( "Default" ),
Scroll3 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll3 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll3 << Text Color( 2147483647 ), Scroll3 << UI Only( 0 ),
Scroll3 << User Resizable( {1, 1} ),
Scroll3 << Vertical Alignment( "Default" ),
Scroll3 << Visibility( "Visible" ),
Scroll3 << Set Min Size( 72, 36 ),
Scroll3 << Set Max Size( 30000, 30000 ),
Scroll3 << Set Stretch( {"Window", "Window"} ),
Scroll3 << Width( 855 ), Scroll3 << Height( 415 ),
Scroll3 << Set Auto Scrollable( 1 ),
Scroll3 << Set Scrollers( 1, 1 ), Scroll3 << Set Show Empty( 0 ),
Scroll3 << Set Clip Printing( 0 ),
Report3 << Background Color( 2147483647 ),
Report3 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report3 << Enabled( 1 ),
Report3 << Horizontal Alignment( "Default" ),
Report3 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report3 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report3 << Text Color( 2147483647 ), Report3 << UI Only( 0 ),
Report3 << Vertical Alignment( "Default" ),
Report3 << Visibility( "Visible" ),
Report3 << Set Min Size( 1113, 546 ),
Report3 << Set Max Size( 1113, 546 ),
Report3 << Set Stretch( {"Neutral", "Neutral"} ),
Report3 << set horizontal( 0 ),
TabPage4 << Background Color( 2147483647 ),
TabPage4 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage4 << Enabled( 1 ),
TabPage4 << Horizontal Alignment( "Default" ),
TabPage4 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
TabPage4 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
), TabPage4 << Text Color( 2147483647 ), TabPage4 << UI Only( 0 ),
TabPage4 << Vertical Alignment( "Default" ),
TabPage4 << Visibility( "Visible" ),
TabPage4 << Set Min Size( 201, 118 ),
TabPage4 << Set Max Size( 30000, 30000 ),
TabPage4 << Set Stretch( {"Neutral", "Neutral"} ),
TabPage4 << Title( "Graph Builder" ), TabPage4 << Tip( "" ),
TabPage4 << Icon( "Trellis" ), TabPage4 << Closeable( 1 ),
TabPage4 << Moveable( 1 ), TabPage4 << Set Base Font( "Text" ),
TabPage4 << Set Font Scale( 1 ),
Scroll4 << Background Color( 2147483647 ),
Scroll4 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll4 << Enabled( 1 ),
Scroll4 << Horizontal Alignment( "Default" ),
Scroll4 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll4 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Scroll4 << Text Color( 2147483647 ), Scroll4 << UI Only( 0 ),
Scroll4 << User Resizable( {1, 1} ),
Scroll4 << Vertical Alignment( "Default" ),
Scroll4 << Visibility( "Visible" ),
Scroll4 << Set Min Size( 201, 92 ),
Scroll4 << Set Max Size( 30101, 30017 ),
Scroll4 << Set Stretch( {"Window", "Window"} ),
Scroll4 << Width( 855 ), Scroll4 << Height( 414 ),
Scroll4 << Set Auto Scrollable( 1 ),
Scroll4 << Set Scrollers( 0, 0 ), Scroll4 << Set Show Empty( 0 ),
Scroll4 << Set Clip Printing( 0 ),
Report4 << Background Color( 2147483647 ),
Report4 << Border( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report4 << Enabled( 1 ),
Report4 << Horizontal Alignment( "Default" ),
Report4 << Margin( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report4 << Padding( {Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )} ),
Report4 << Text Color( 2147483647 ), Report4 << UI Only( 0 ),
Report4 << Vertical Alignment( "Default" ),
Report4 << Visibility( "Visible" ),
Report4 << Set Min Size( 201, 92 ),
Report4 << Set Max Size( 30101, 30017 ),
Report4 << Set Stretch( {"Neutral", "Neutral"} ),
Report4 << set horizontal( 0 )
)
)
),
Initialize(
Module1 << Auto Launch( 1 );
Module1 << Set Module Type( "Report" );
Module1 << Set Window Title( "^TABLENAME - ^APPNAME" );
)
) << Run;Der am Ende meines 3-Dashboard-Skripts verwendete Code, der sie in einem kombinierten Dashboard zusammenfasst:
dashes = Find All(Reports);
tb = Expr(Tab Box());
For(i = 1, i<= N Items(dashes), i ++,
tabPage = Expr(Tab Page Box());
dfcb = Expr(Data Filter Context Box());
lub = Expr(Line Up Box(N Col(2)));
hlb = Expr(H List Box());
//Get Data table name to use with the data filter
wintitle = dashes[i] << Get Window Title;
wordone = Word(1, wintitle, "-");
wordtwo = Word(2, wintitle, "-");
dtname = Substr(wordone, 1, Length(wordone)-1 );
dt = Eval Expr(Data Table(Expr(dtName)));
//Get dashboard name
dashName = Substr(wordtwo, 2);
failed = 0;
j = 1;
//Loop through the tab page boxes in the dashboard, and extract the scripts
While(failed ==0,
Try(tpb = dashes[i] << Find(TabPageBox(j)),
failed = 1; Continue();
);
//Try to get the script from the display box if it exisits
Try(obj = tpb << Get Scriptable Object;
script = obj << Get Script,
j ++; Continue();
);
//If the script is for the local data filter add the script to the H List Box
If(Char(Head(Name Expr(script))) == "Data Filter",
FilterExprStr = char(NameExpr(dt)) || " << " || char(Name Expr(script));
FilterExpr = Parse(FilterExprStr);
Insert Into(hlb,NameExpr(FilterExpr));
,
//Else add it to the lineup box
If( Char(Name Expr(script)) != "Scriptable[]",
reportExprStr = char(NameExpr(dt)) || " << " || char(Name Expr(script));
reportExpr = Parse(reportExprStr);
scrollbox = Expr(Scroll Box());
Insert Into(scrollbox, Name Expr(reportExpr));
Insert Into(lub,Name Expr(scrollbox));
);
);
j ++;
);
//Build up the display boxes
Insert Into(hlb, Name Expr(lub));
Insert Into(dfcb, Name Expr(hlb));
Insert Into(tabPage, Eval Expr(Title(Expr(dashName))), 1);
Insert Into(tabPage, Name Expr(dfcb), 2);
Insert Into(tb, Name Expr(tabPage));
);
//Create combined dashboard window
New Window("Combined Dashboard", tb);
//Close all the individual dash reports
For( w = 1, w <= N Items(dashes), w ++,
dashes[w] << Close Window;
);Danke für die Hilfe 