Guardar una tabla vacía con JSLEstoy abriendo varias tablas de una base de datos y luego las guardo en archivos CSV. El script funciona bien siempre que la tabla tenga datos, pero las tablas vacías (que también quiero guardar para mostrar que están vacías) me dan este error:
La tabla de datos está vacía.
No se pudo guardar el archivo.
No se puede guardar el archivo.{2}
Puedo guardar manualmente las tablas en formato JMP, pero no como exportación de texto. ¿Algunas ideas?Re: Guardar una tabla vacía con JSLDespués de leer un poco más en el foro, me di cuenta de que la función Está vacía () no dice si la tabla tiene datos... Vi un comentario de que es mejor usar N Row (dt) para hacer esto:
If( N Row( dt ) == 0,
// then
Print( "Data table is empty" );
// else
Print( "Data table is not empty" );
);
Re: Guardar una tabla vacía con JSL@chungwei
Recientemente me encontré con este mensaje de error y me sorprendió bastante.
Entonces me di cuenta de que había hecho una mesa nueva solo con el por defecto "Columna 1" y sin filas.
Preferiría que la tabla se guardara como una tabla vacía, pero en mi caso la solución fue tan simple como nombrar la única columna cuando creé la tabla.
Aparentemente, el informe original hacía algo más que la función NewTable(), por lo que nombrar la columna podría haber sido más difícil.
sentinelDt = New Table( "sentinel", "private", New Column( "a") ); // needs a col name to save it with no rows!
sentinelDt << save( root || sentinelName );
Re: Guardar una tabla vacía con JSLSi usa la función 'Está vacía()', puede usar una declaración if para guardar los datos solo cuando la tabla no esté vacía:
Ejemplo:
dt = Open( "Path\DataTable" );
If( Is Empty( dt ),
// Then Do this if the table is not empty:
dt << Save( "Path\DataTable" )
,
// Else Do nothing
Print( "the table is empty and will not be saved" )
);