Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola,
Tengo una variable llamada Perido y me gustaría calcular el mes actual menos los últimos 3 días, además cuando haga el cálculo de los últimos 3 días no quiero que tenga en cuenta los sabados y domingos ya que son festivos.
¿Podéis ayudarme?
Gracias
Hola,
Puedes intentar con:
=if(WeekDay(Today()-3) = 'dom',Date(Today()-5),if(WeekDay(Today()-3) = 'sáb', Date(Today()-4), Date(Today()-3)))
siempre y cuando los dias de semana esten seteados en main así:
SET DayNames='lun;mar;mié;jue;vie;sáb;dom';
saludos,
Henry C.
Hola Irene,
Si lo que necesitas es por ejemplo sumar las ventas desde una fecha hasta otra teniendo en cuenta que la fecha de los datos es de hace 3 días, con el criterio siguiente:
Si hoy es lunes, la fecha fin es el miércoles de la semana pasada.
Si hoy es martes, la fecha fin es el jueves de la semana pasada.
Si hoy es miércoles, la fecha fin es el viernes de la semana pasada.
Si hoy es jueves, la fecha fin es el lunes de la misma semana.
Si hoy es viernes, la fecha fin es el martes de la misma semana.
Si hoy es sábado, la fecha fin es el miércoles de la misma semana.
Si hoy es domingo, la fecha fin es el jueves de la misma semana.
La fecha de inicio es el día 1 del mes de la fecha fin calculada con el criterio anterior.
, entonces lo que puedes hacer para obtener unas variables en script es lo siguiente:
LET vdFechaFinPeriodo = Date('07/05/2017' - Pick(Num(WeekDay('07/05/2017') + 1), 5, 5, 5, 3, 3, 3, 3), 'DD/MM/YYYY');
LET vdFechaInicioPeriodo = Date(MonthStart('$(vdFechaFinPeriodo)'), 'DD/MM/YYYY');
Saludos,
H
Muchas gracias a los dos, pero soy nueva ne Qlik y no termino de ver como hacerlo...
os adjunto el código que nos hizo el consultor:
Selector_Calendario:
LOAD Distinct
%KeyFechaSalida,
Dual('Mes Actual', 5) as Periodo,
'Mes Actual' as Periodo_text
FROM [xxxx.qvd](qvd)
Where Num(Month('$(vAux.Today)'-1))=Num(Month(%KeyFechaSalida))
and Num(Year('$(vAux.Today)'-1))=Num(Year(%KeyFechaSalida));
Yo querría crear un campo más en Periodo que fuese "Mes actual real" y que no tuviese en cuenta los últimos 3 días (descontando fines de semana)
Hola Irene,
Prueba lo siguiente para tener un campo nuevo 'Mes actual real' con formato YYYY/MM:
Selector_Calendario:
LOAD Distinct
%KeyFechaSalida,
Dual('Mes Actual', 5) as Periodo,
'Mes Actual' as Periodo_text,
Date(%KeyFechaSalida - Pick(Num(WeekDay(%KeyFechaSalida + 1), 5, 5, 5, 3, 3, 3, 3), 'DD/MM/YYYY') AS 'Mes actual real'
FROM [xxxx.qvd](qvd)
Where Num(Month('$(vAux.Today)'-1))=Num(Month(%KeyFechaSalida))
and Num(Year('$(vAux.Today)'-1))=Num(Year(%KeyFechaSalida));
Saludos,
H