Problème
Vous avez ouvert une table pour afficher un rapport. La table peut être temporaire ou invisible et vous souhaitez qu'elle disparaisse de manière silencieuse à la fermeture du rapport.
Solution
Utilisez la méthode << OnClose pour attacher un script au rapport. Faites le script fermer la table.
// make a table
dt = New Table( "Temporary",
Add Rows( 1e6 ),
New Column( "x", Formula( Random Normal( 50, 30 ) ) ),
New Column( "y", Formula( Random Normal( 50, 30 ) ) ),
"Invisible"
);
// now make sure the formulas have finished evaluating
dt << RunFormulas;
// then clear the flag that says the table has changes that need to be saved
dt << SetDirty( 0 );
// finally, create a platform (or other window) with an OnClose script.
// the try() captures a message that might happen if the table is
// closed, causing the platform to close, causing the table to close...
dt << Bivariate( Y( :y ), X( :x ), <<ONCLOSE></ONCLOSE>
Platform with <<OnClose event attachedPlate-forme avec l'événement << OnClose attaché
Discussion
Vous pouvez utiliser la fenêtre d'accueil pour rendre la table de données invisible visible. Les << RunFormulas peuvent être nécessaires avant << << SetDirty (0) »pour s'assurer que l'évaluation de la formule d'arrière-plan ne marque pas la table comme sale, encore une fois. Le "nosave" empêchera également l'invite pour la table sale, mais pas si l'utilisateur ferme la table au lieu du rapport.
Voir également
http://www.pega-analytics.co.uk/blog/housekeeping/