Avalados por :

Cómo devolver el Mes del Año a partir del Número de Semana del Año en Crystal XI

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 33 Vistas
0
Cargando...

¿Alguien sabe de una fórmula que funcione en Crystal XI para devolver el "Mes del Año" a partir de un valor de "Número de Semana del Año"?

En mi ejemplo tengo columnas del 1 al 53 para las semanas del 2009. Me gustaría subcategorizar estas columnas por el mes del año. Las semanas 1-5 serían enero, las semanas 6-9 serían febrero, etc.

He encontrado ayuda para convertir una fecha al "Número de Semana del Año" pero no al revés.

¡Gracias por cualquier sugerencia!

David

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Hola Zack,

Gracias por tu aportación con respecto a mi problema. Estoy de acuerdo en que esto debería funcionar. Estaba esperando algo que funcionara dinámicamente para cualquier año que el usuario ingresara, pero esto definitivamente me ayudará hasta 2009.

Gracias de nuevo,

David

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola David,

No creo que esta sea la mejor manera de lograr lo que estás buscando, pero ciertamente puede funcionar. ¿Dijiste que tenías 53 columnas o campos para cada una de las semanas en 2009? Si es así, haz lo siguiente:

Primero, crea una fórmula llamada @Nombre del Mes del Año


if {table.week_column1} = 1 then "Enero" else
if {table.week_column2} = 2 then "Enero" else
if {table.week_column3} = 3 then "Enero" else
if {table.week_column4} = 4 then "Enero" else
if {table.week_column5} = 5 then "Enero" else
if {table.week_column6} = 6 then "Febrero" else
if {table.week_column7} = 7 then "Febrero" else
if {table.week_column8} = 8 then "Febrero" else
if {table.week_column9} = 9 then "Febrero" else
if {table.week_column10} = 10 then "Marzo" else
//continúa esto para todas las semanas

Luego, simplemente coloca la fórmula @Nombre del Mes del Año en tu sección de detalles e inserta un grupo en esta fórmula.

Sé que es un poco desordenado, pero debería funcionar.

Espero que esto ayude.

Saludos,

Zack H.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola Sanjay,

Gracias por responder a mi pregunta. Probé esto y estoy de acuerdo en que esto resolverá mi problema para 2009. ¿Puedes ayudarme a entender la fórmula? En mi interpretación de tu fórmula a continuación veo que estamos sumando 35 días (o 7 días * 5 semanas) a la mitad izquierda de la ecuación. En la mitad derecha (después de <menos>) no estoy seguro de por qué usamos la función weekday y el significado de crThursday + 1.

¡Gracias nuevamente por tu ayuda!

fórmula dada:

totext(date(2009,1,1) (({Sheet1_.F1})*7) - weekday((date(2009,1,1) ({Sheet1_.F1}*7)),crthursday+1),"MMMM");

mi interpretación asumiendo que queremos el mes para la quinta semana de 2009:

1 de enero de 2009 + (5 * 7) = 5 de febrero de 2009 <menos> weekday(#5 de febrero de 2009#, crThursday + 1)

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Aquí hay una solución más simple. Utilicé una hoja de cálculo de Excel como entrada para 53 semanas, así que reemplázala con el campo en el que tengas los números de semana. También está codificado para el año 2009. Tendrás que ajustarlo para otros años, si decides utilizar la misma fórmula.

totext(date(2009,1,1) (({Sheet1_.F1})*7) - weekday((date(2009,1,1) ({Sheet1_.F1}*7)),crthursday+1),"MMMM");

Sin embargo, el problema es el siguiente:

La semana del 29 de marzo, ¿la cuentas en marzo o en abril? Dado que la fórmula cuenta los jueves, esta semana se contará en abril en lugar de marzo. Si puedes vivir con rarezas como esa, entonces la fórmula anterior debería funcionar perfectamente.

Editado por: Sanjay Kodidine el 24 de febrero de 2009 a las 10:48 PM

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?