Puoi accedere al valore Helpkey di un report? Voglio confermare che un report è una determinata piattaforma, ad esempio bivariata, e la Helpkey sembra avere le informazioni che desidero se il titolo viene modificato. Se non riesco a utilizzare l'helpkey, c'è un altro modo per confermare questo? L'unico modo che riesco a capire è verificare che ci siano 2 assi continui.
Forse un approccio diverso funzionerebbe. Questo script esamina tutte le finestre aperte per trovare report e visualizza i propri script. Lo script spiega come ricreare il report e probabilmente ha anche le informazioni che ti servono.
// get a list of open windows
wlist = Window();
// some of them might be platforms
For( i = 1, i <= N Items( wlist ), i += 1,
ob = Try( wlist[i][Outline Box( 1 )] );
// see if there is an outline box
If( Type( ob ) == "DisplayBox",
// the outline box might be a platform owner,
// see if it is a scriptable object
platform = ob << getscriptableObject;
If( Type( platform ) == "Scriptable",
// found one. display its script
Show( platform << getscript );
s = platform << getscript;
If( Head( s ) == Expr( distribution() ),
If(
Head( Arg( s, 1 ) ) ==
Expr( ContinuousDistribution ),
Print( "ok" );//
, //
Print( "no" );//
)//
, //
Print( "not close" )
);
);
);
);
Con diverse finestre aperte e due rapporti:
platform << getscript = Bivariate(Y(:weight), X(:height), Fit Line({Line Color({213, 72, 87})}));
"not close"
platform << getscript = Distribution(Continuous Distribution(Column(:weight)), Nominal Distribution(Column(:age)));
"ok"
Lo script viene restituito come espressione; è possibile utilizzare le funzioni di espressione per studiarlo o convertirlo in una stringa con char () e utilizzare le funzioni dei caratteri per studiarlo.
c = char(NameExpr(s)); // convert to character
"Distribution(Continuous Distribution(Column(:weight)), Nominal Distribution(Column(:age)))"
contains(c,"Nominal Distribution") // find location of text
56