Je suis en train de scripter un tableau de bord avec un générateur de graphiques. Je souhaite ajouter un sélecteur de colonnes qui doit utiliser une variable comme liste de colonnes, en raison du changement de colonnes. Pour une raison quelconque, cela ne fonctionne pas, seule la première colonne d'une liste s'affichera. La liste des colonnes est créée comme ceci :
col_list3 = dt << get column names(Numeric);
for (i = nitems(col_list3), i > 0, i--,
if (!contains(col_list3[i], "%"),
remove from(col_list3, i);
);
);
Mais lorsque j'essaie d'utiliser col_list3 dans le sélecteur de colonnes intégré au script dasboard, cela ne fonctionne pas.
Column Switcher(
:FC 1244%,
{col_list3}
)
J'ai essayé d'utiliser eval ect., mais sans succès. Qu'est-ce que je manque, des idées? Pour une raison quelconque, je ne peux ajouter aucun fichier à ce message, donc tout le script est collé ci-dessous et une image de mon exemple de table de données.

Names default to here (1);
dt = Data Table("example");
//get only columns with %
col_list3 = dt << get column names(Numeric);
for (i = nitems(col_list3), i > 0, i--,
if (!contains(col_list3[i], "%"),
remove from(col_list3, i);
);
);
//dashboard
JMP App(
Set Name( "Dashboard" ),
Set Description( "Selection in one report filters the second" ),
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( "" ),
Set Label( "example" ),
Set Location( "Current Data Table" ),
Set 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();
MainTabPage = Tab Page Box();
Splitter1 = H Splitter Box();
DataFilterSource1 = Data Filter Source Box();
TabPage1 = Tab Page Box();
Scroll1 = Scroll Box();
Report1 = Platform(
DataTable1,
Distribution(
Automatic Recalc( 1 ),
Nominal Distribution( Column( :Product ) )
)
);
TabPage2 = Tab Page Box();
Scroll2 = Scroll Box();
Report2 = Platform(
DataTable1,
Graph Builder(
Size( 534, 448 ),
Show Control Panel( 0 ),
Fit to Window( "Maintain Aspect Ratio" ),
Variables( X( :DAY ), Y( :FC 1244% ) ),
Elements( Points( X, Y, Legend( 3 ) ) ),
Column Switcher(
:FC 1244%,
{col_list3} //not working
)
)
);
),
Organize(
Reparent( Scroll2( Report2 ) );
Reparent( TabPage2( Scroll2 ) );
Reparent( Splitter1( TabPage2 ) );
Reparent( Scroll1( Report1 ) );
Reparent( TabPage1( Scroll1 ) );
Reparent( DataFilterSource1( TabPage1 ) );
Reparent( Splitter1( DataFilterSource1 ) );
Reparent( MainTabPage( Splitter1 ) );
Reparent( DataFilterContext1( MainTabPage ) );
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 << Vertical Alignment( "Default" ),
DataFilterContext1 << 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 << Vertical Alignment( "Default" ),
MainTabPage << Visibility( "Visible" ),
MainTabPage << Title( "Dashboard" ),
MainTabPage << Tip( "" ),
MainTabPage << Icon( "" ),
MainTabPage << Closeable( 0 ),
MainTabPage << Moveable( 0 ),
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 << Vertical Alignment( "Default" ),
Splitter1 << Visibility( "Visible" ),
Splitter1 << Dockable( 1 ),
Splitter1 << Set Width( 1036 ),
Splitter1 << Set Height( 500 ),
Splitter1 << Set Sizes( {0.210067763794773, 0.789932236205227} ),
Splitter1 << set horizontal( 1 ),
Splitter1 << Set Min Size( 456, 193 ),
Splitter1 << Set Max Size( 60003, 30000 ),
Splitter1 << Set Auto Stretching( 1, 1 ),
DataFilterSource1 << Background Color( 2147483647 ),
DataFilterSource1 << Border(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
DataFilterSource1 << Enabled( 1 ),
DataFilterSource1 << Horizontal Alignment( "Default" ),
DataFilterSource1 << Margin(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
DataFilterSource1 << Padding(
{Left( 0 ), Top( 0 ), Right( 0 ), Bottom( 0 )}
),
DataFilterSource1 << Text Color( 2147483647 ),
DataFilterSource1 << Vertical Alignment( "Default" ),
DataFilterSource1 << Visibility( "Visible" ),
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 << Vertical Alignment( "Default" ),
TabPage1 << Visibility( "Visible" ),
TabPage1 << Title( "Distributions" ),
TabPage1 << Tip( "" ),
TabPage1 << Icon( "Distrib" ),
TabPage1 << Closeable( 1 ),
TabPage1 << Moveable( 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 << User Resizable( {1, 1} ),
Scroll1 << Vertical Alignment( "Default" ),
Scroll1 << Visibility( "Visible" ),
Scroll1 << Width( 218 ),
Scroll1 << Height( 474 ),
Scroll1 << Set Auto Scrollable( 1 ),
Scroll1 << Set Scrollers( 1, 1 ),
Scroll1 << Set Background Color( 2147483647 ),
Scroll1 << Set Show Empty( 0 ),
Scroll1 << Set Clip Printing( 0 ),
Scroll1 << Set Min Size( 72, 36 ),
Scroll1 << Set Max Size( 30000, 30000 ),
Scroll1 << Set Auto Stretching( 1, 1 ),
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 << Vertical Alignment( "Default" ),
Report1 << Visibility( "Visible" ),
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 << Vertical Alignment( "Default" ),
TabPage2 << Visibility( "Visible" ),
TabPage2 << Title( "TabPage2" ),
TabPage2 << Tip( "" ),
TabPage2 << Icon( "Trellis" ),
TabPage2 << Closeable( 1 ),
TabPage2 << Moveable( 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 << User Resizable( {1, 1} ),
Scroll2 << Vertical Alignment( "Default" ),
Scroll2 << Visibility( "Visible" ),
Scroll2 << Width( 815 ),
Scroll2 << Height( 474 ),
Scroll2 << Set Auto Scrollable( 1 ),
Scroll2 << Set Scrollers( 0, 0 ),
Scroll2 << Set Background Color( 2147483647 ),
Scroll2 << Set Show Empty( 0 ),
Scroll2 << Set Clip Printing( 0 ),
Scroll2 << Set Min Size( 381, 167 ),
Scroll2 << Set Max Size( 30281, 30026 ),
Scroll2 << Set Auto Stretching( 1, 1 ),
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 << Vertical Alignment( "Default" ),
Report2 << Visibility( "Visible" ),
Report2 << set horizontal( 0 )
)
)
),
Initialize(
Module1 << Auto Launch( 1 );
Module1 << Set Module Type( "Report" );
Module1 << Set Window Title( "^TABLENAME - ^APPNAME" );
Module1 << Set Min Size( 0, 0 );
Module1 << Set Max Size( 30000, 30000 );
Module1 << Set Auto Stretching( ., . );
)
) << Run
Qu'à cela ne tienne, la variable était simplement indéfinie dans mon contexte local !
Je n'ai pas réussi à supprimer ce post...
Chers tous,
Face au même problème, cette solution ne résout pas mon problème, soi-disant parce que mes colonnes ont des noms plus complexes et que la variable list contient des guillemets :
colList = {"Time At Entrance Queue", "Time At Check-In", ...,
"Total Time From Last Chute To Exit", "EBS Total Duration", "Flight ID", "BAG ID", "PAX ID", "CheckInQueue", "CheckIn", "CheckInCollector", "TransferCollector", "Presortation", "Dep-Reader-TimeStamp", "ICS-Loader", "ICS-Unloader", "Last Chute", "MakeUp", "MakeUp Group", "Stopped", "Before WarmUp", "PBC Type", "Recirculation", "HBS_1_Index", "HBS_2_Index", "HBS_3_Index", "HBS_4_Index", "HBS_5_Index", "IntLnk", "MES_Index", "EBS_Index", "Transfer Infeed Desk", "Transfer Infeed Queue", "ORIGINATING", "HBS3-b", "MES-b", "EBS-b"};
In the following script, error marked by /*###*/
Column Switcher( :Total Time From CheckIn Collector To Exit, colList/*###*/ ),Une solution de contournement de vos connaissances?
Merci