Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola a todos,
tengo una consulta respecto al cambio de nombre de campos, tengo la siguiente tabla de stock
Anio | Mes | STK01 | STK02 | STK03 | STK04 | STK05 | STK06 | STK07 | STK08 | STK09 | STK10 | STK11 | STK12 |
2013 | 8 | 0 | 3 | 2.56 | 4 | 0 | 3 | 3.6 | 2.2 | 0 | 1 | 4 | 3 |
2013 | 9 | 3 | 2.56 | 4 | 0 | 3 | 3.6 | 2.2 | 0 | 1 | 4 | 3 | 4.25 |
los campos Anio y Mes, representa al periodo de análisis y los campos STK01 al STK12 representan a los 12 meses anteriores al periodo de análisis.
he hecho un cross table para tener la siguiente estructura
Anio Periodo | Mes Periodo | Meses | Valor |
2013 | 8 | STK01 | 0 |
2013 | 8 | STK02 | 3 |
2013 | 8 | STK03 | 2.56 |
2013 | 8 | STK04 | 4 |
2013 | 8 | STK05 | 0 |
2013 | 8 | STK06 | 3 |
2013 | 8 | STK07 | 3.6 |
2013 | 8 | STK08 | 2.2 |
2013 | 8 | STK09 | 0 |
2013 | 8 | STK10 | 1 |
2013 | 8 | STK11 | 4 |
2013 | 8 | STK12 | 3 |
pero se debería de cambiar los STK# por el mes que corresponde es decir STK01 = 08/2012, STK02= 09/2012 ... STK12 = 07/2013, he probado con Num(Month(AddMonths(Date('01/'&MES&'/'&ANIO,'DD/MM/YYYY'), -1)),'00'), pero no me da un valor.
gracias!!
Para armar una nueva columna de fecha se puede hacer de esta manera:
MakeDate(If(Num(Rigth(Meses,2))<=6, AnoPeriodo-1,AnoPeriodo),If(Num(Rigth(Meses,2))<=6, Num(Rigth(Meses,2))-1+MesPeriodo))
Esto te devolvera una fecha completa para el primer dia del mes.
gracias por tu respuesta Juan,
esto lo tendría que usar en un load resident, o se puede usar en el mismo load?
Lo puedes hacer en el mismo load...
Hola Chirstian,
Te paso el documento que has mandado conforme yo lo haría, sólo tienes que recargarlo para que funcione la expresión. Como no has pasado el QVD, no lo he podido recargar en mi máquina.
Lo que he hecho, ha sido básicamente, renombrar los meses en el script, así en diseño es muy fácil tratarlos.
Un saludo y espero haberte ayudado.