semana rodanteBuenos días a todos,
Tengo una base de datos que contiene datos desde principios de 2019 hasta abril de 2023.
Creé un script que, cuando lo ejecuto nuevamente, agrega nuevos datos para 2023 cada semana.
Para evitar que este archivo se vuelva demasiado pesado, me gustaría que cuando reinicie el script al comienzo de la semana pueda eliminar una semana continua.
Por ejemplo hoy estamos en la semana 21 (W21) de 2023. Cuando ejecuto el script hoy, puedo eliminar el S1 de 2019 y luego agregar el S21 de 2023.
La próxima semana estaremos en S22 2023, el script agregará esta nueva semana, a la vez me gustaría poder eliminar el S2 de 2019, así sucesivamente...
Sin embargo, si ejecuto el script varias veces en la misma semana, no debería eliminar varias semanas consecutivas.
Ejemplo : Si ejecuto el script 3 veces en S21 2023, solo elimina S1 2019 y no S1/S2/S3 2019 (porque ejecuté el script 3 veces)
Tengo una columna de "Fecha de inicio" en mi base de datos que será útil para el desarrollo del script. Aquí hay una descripción general de la columna a continuación:

gracias por su ayuda
Acceso a los datosFusión y limpieza de datosRe: semaine glissanteNo conozco el propósito de la tabla de datos actualizada, por lo que esta sugerencia podría no ser útil. En lugar de eliminar filas, puede calcular un estado de fila móvil para las filas excluidas en una columna de fórmula o con un script. Dijo que desea evitar que la tabla de datos se vuelva demasiado pesada, por lo que este enfoque podría no ser adecuado para su propósito.
Re: semana rodantePara evitar sobrecargar la tabla de datos, mi objetivo es agregar nuevos datos pero, por otro lado, eliminar los datos "antiguos". Esto permitiría que la tabla de datos tuviera un equilibrio con el tamaño del archivo.
Me gustaría escribir un guión para hacer lo que dije en mi primer post.
Re: semaine glissante¿Está extrayendo datos de una base de datos en una tabla de datos JMPM? Si es así, puede usar una cláusula WHERE para especificar el período.
Re: semaine glissanteConsidere usar la función Incremento de fecha. En este ejemplo, Incremento de fecha cuenta 230 semanas pasadas y devuelve la fecha del primer día de esa semana (domingo). Luego simplemente seleccionamos todas las filas con fechas de inicio anteriores a esa fecha y las eliminamos. Dentro de una sola semana en la que ejecute el script, la fecha devuelta por el incremento de fecha será la misma, por lo que puede actualizar su tabla de datos varias veces por semana sin provocar la eliminación de datos no deseados.
Names Default to Here( 1 );
deleteDate = Date Increment( Today(), "Week", -230, "start" );
Data Table( "Rolling Week.jmp" ) << Select Where( :Start Date < deleteDate );
Data Table( "Rolling Week.jmp" ) << Delete Rows;