Planifier une tâche dans le script JMP<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut,
J'ai une séquence de commandes comme celle-ci : -
dt = Data Table("Entrée Copie");
dt1 = Data Table("Matrix Splits Table");
dt << Rejoindre(
Avec(dt1),
Par colonnes correspondantes (lot_id == dt1:Waferlot),
Par colonnes correspondantes (wafer == dt1: Wafer),
Supprimer les multiples (faux, vrai),
Inclure les non-correspondances (faux, faux),
Nom de la table de sortie ("Table d'entrée jointe")
);
// Résumé SBIN par SITE et fractionné
Data Table("Joined Input Table") << Summary(Group(:tst_temp, :test_cod, :SBIN_NUM, :SBIN_NAM, :SITE_NUM), N, Subgroup(:Split), output table name("SBIN by Split")) ;
Désormais, pour les ensembles de données très volumineux, la jointure prend environ 1 à 2 minutes. Pendant ce temps, la commande récapitulative suivante commence à s'exécuter et n'affiche aucune sortie.
Puis-je mettre une séquence qui attend que la jointure s'exécute et une fois qu'elle se termine, ne commencez qu'avec la commande Résumé.
Re : Planifier une tâche dans le script JMPL'index de script ('Help > Scripting Index') a un exemple :
Noms par défaut ici ( 1 ) ;
dt = Ouvrir ( "$SAMPLE_DATA/Fitness.jmp" ) ;
obj = Ajuster le modèle (
Oui ( : Oxy ) ,
Effets (
: Durée ,
: Lester ,
: RunPulse ,
: RstPulse ,
: MaxPulse
) ,
Personnalité ( Pas à pas ) ,
Courir
) ;
obj << Finir ;
Re : Planifier une tâche dans le script JMPSalut, je suis nouveau dans les scripts JMP, pourriez-vous s'il vous plaît me montrer comment utiliser la méthode Finish ?
Re : Planifier une tâche dans le script JMPSalut Mark,
Finition travaillée Même sans attendre (0). Super!
Martin
Re : Planifier une tâche dans le script JMPLa fonction Wait( seconds ) met JMP en pause pendant la durée spécifiée. En général, JMP procède à l'évaluation de chaque ligne aussi rapidement que possible, même si les lignes précédentes ne sont pas encore terminées. Wait( 0 ) est un cas particulier qui oblige JMP à synchroniser le calcul en cours avant de passer à la ligne suivante.
Je suis d'accord que Wait() et Schedule() ne fonctionneront pas si votre cas. Avez-vous essayé la méthode Finish au lieu de la méthode Go ?
Re : Planifier une tâche dans le script JMPSalut Mark,
encore une question concernant wait(0) et schedule(). Je n'ai pas commencé un nouveau fil car ce fil semble être le meilleur endroit pour poser cette question. Si je comprends bien pour schedule(), vous devez connaître l'heure à l'avance. Wait(0) donne au système le temps de respirer mais ne fonctionne pas pour moi au cas où la tâche de calcul durerait plus d'une respiration. Pour être plus concret :
Disons que vous avez une régression pas à pas qui peut durer 1 seconde mais aussi 10 secondes. Maintenant, vous ne voulez pas attendre/planifier la prochaine tâche pendant 11 secondes après la première pour être sûr. Si la première tâche se termine plus tôt, vous souhaitez commencer immédiatement la suivante, par exemple exécuter le modèle. si cela dure plus longtemps, vous voulez attendre qu'il soit terminé.
Voici un exemple de code, pour le calendrier, vous auriez besoin de connaître le timing à l'avance. et attendre (0) ne fonctionnera pas. wait(10) fonctionne mais vous devrez attendre plus longtemps que nécessaire. Toute orientation serait la bienvenue.
Noms par défaut ici ( 1 ) ;
dt = Ouvrir ( "$SAMPLE_DATA/Bands Data.jmp" ) ;
fm_step = dt << Ajuster le modèle (
Oui ( : Nom ( « Bandage ? ») ) ,
Effets (
: type sur cylindre ,
: type de presse ,
: presse,
: numéro d'unité ,
: taille du cylindre ,
: emplacement de la papeterie ,
: réservoir de placage ,
: coupe d'épreuve & RS ,
: viscosité & RS ,
: étrier & RS ,
: température de l'encre & RS,
: humidité & RS ) ,
Personnalité ( "Par étapes" ) ,
Courir ( Prob d'entrer ( 0,05 ) , Prob de partir ( 0,01 ) )
) ;
/* Exécute la régression pas à pas */
fm_step << Aller ;
/* Wait(0) ne fonctionne pas pour attendre que le SR ait terminé son travail, wait(10) attend trop longtemps */
attendez ( 0 ) ;
/* Exécute le modèle pour les variables sélectionnées */
fm_step << Exécuter le modèle ;
Re : Planifier une tâche dans le script JMPUtiliser Wait(0) dans ce cas est la bonne réponse, mais plus généralement, oui, vous pouvez programmer une expression à évaluer à l'avenir en utilisant la fonction Schedule( seconds, expression )
Re : Planifier une tâche dans le script JMPMerci . Cela marche
Re : Planifier une tâche dans le script JMPMettre attendre(0); entre les deux déclarations.