Estoy tratando de abrir una carpeta y escanear los archivos y luego ejecutar diferentes funciones con diferentes archivos. He hecho esto hasta ahora, pero parece que una vez que alcanza la función, el archivo entra en un bucle infinito, pero no lo hace si tengo 1 declaración de impresión. La parte de la función que entra en el bucle infinito funciona bien cuando se usa únicamente sin la molestia de elegir un directorio y abrir un archivo. ¿Alguien puede señalar qué podría estar causando el bucle infinito cuando funcionaba solo?
myfunc = function({dt,mypath},{Dedault Local},
col_list = dt << get column names( string );
new_list = {};
For( i = N Items( col_list ), i > 0, i--, //For loop to create an array of the different column strings
If( Regex( col_list[i], "<SOME regex="">") == col_list[i],
Insert Into( new_list, col_list[i] ), //Insert Into(new_list,col_list[i]),
Remove From( col_list, i ); //If the string is not what we are looking for remove it from the array
)
);
Return(new_list);
);
mypath = Pick Directory ( "Select a directory." );
files = Files In Directory(mypath);
MY_FILES = files;
FOR(i=1, i <= N items(files), i++,
if(Ends with(files[i],"_myfile.csv"),
dt = Open(mypath || files[i]);
dname = dt << Get Name;
If(
Contains( dname, "_myfile" ) > 0, myfunc(dt,mypath),
"File is wrong"
); ,
));
</SOME>