<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'avais un script parfaitement opérationnel pour ouvrir tous les fichiers d'un répertoire, puis concaténer tous les fichiers (au format JMP10).
J'utilise ceci et des variantes de ce script tout le temps pour la collecte de données.
Maintenant, dans JMP11, la partie Concaténation du script se bloque.
Cela fonctionne toujours très bien dans JMP10 et je suis donc revenu à l’utilisation de JMP10 pour mon travail.
Ce groupe m'a aidé à obtenir le premier script en avril de cette année.
S'il vous plaît aider!
Charlie Fields
=============================================== =============================================== =
path = "C: \ temp \ data \";
final_files = {};
final_files = Fichiers dans le répertoire (chemin, récursif);
///////////////////// Ouvrir le premier fichier de la liste ///////////////////////
/////// des fichiers supplémentaires seront ajoutés à celui-ci ///////////
i = 1;
dtjoin = Open (
chemin || final_files
)
<< set name ("Joined1");
////////////////////////////////////////////////////////// ////////////////////////////////
////////// Ouvrez maintenant les fichiers restants de la liste //////////////
////////////////////////////////////////////////////////// ////////////////////////////////
i = 2;
Pour (i = 2, i <= N éléments (final_files), i ++,
dt =
Ouvrir(
chemin || final_files ,
)
dtjoin = dtjoin << Concatenate (
dt,
nom de la table de sortie ("Joined" || Char (i)),
)
Fermer (dt, nosave);
Close ("Joined" || Char (i - 1), nosave);
) // Fin de pour
dtjoin << set name ("Tous les membres");
Merci mille fois!
J'ai utilisé celui-ci:
dtjoin = Ouvrir ( chemin || final_files [ je ] ) ;
dtjoin << nom de l'ensemble ( "Joined1" ) ;
comme vous l'avez suggéré et cela a très bien fonctionné.
Maintenant, je vais devoir implémenter ce changement dans mon autre code.
De plus, je peux continuer à utiliser JMP11.
Merci encore!!
Charlie
On dirait que JMP 11 est moins indulgent en matière de code ambigu quant à l'ordre d'évaluation. Votre code ne bloque pas JMP 11 pour moi, mais donne l'erreur "Envoyer un objet scriptable attendu en accès ou évaluation de 'Envoyer', dtjoin << Concatenate (dt, nom de la table en sortie (" Joined "|| Char (i)))" dans le journal.
Essayez d’être plus explicite dans la section "Ouvrir le premier fichier de la liste". Pour être certain que la variable dtjoin fait référence à une table de données (et non à une chaîne), vous devez soit placer l'affectation entre parenthèses pour forcer l'évaluation avant de renommer la table,
( dtjoin = Ouvrir ( chemin || final_files [ je ] )) << nom de l'ensemble ( "Joined1" ) ;
ou séparez l'affectation et le renommage en deux instructions:
dtjoin = Ouvrir ( chemin || final_files [ je ] ) ;
dtjoin << nom de l'ensemble ( "Joined1" ) ;