Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
omar_1981
Contributor III
Contributor III

Inputfield, una duda

Buenos días, tengo una pequeña duda con los inputfield. Estoy probanco un ejemplo en el que hago una carga desde una tabla Excel y creo un campo inputfield. Mas o menos es lo siguiente:

INPUTFIELD multiplicador;

Registros:

LOAD Zona,

    Pais,

    Fecha,

    [Jefe de ventas],

    Campaña,

    Familia,

    Producto,

    Cliente,

    Venta,

    Rentabilidad,

    Presupuesto,

    Año,

    Mes,

    '0' as multiplicador

FROM

[ejemplo.xlsx]

(ooxml, embedded labels, table is [ejemplo]);

Cuando realizo esta carga y creo una tabla simple, puedo trabajar con el campo multiplicador, de la siguiente manera:

Como vemos arriba, el campo % me permite modificar cada uno de los campos % al situarme encima. Mi problema viene cuando creo la tabla de calendarios maestros de la siguiente forma:

Fechas:

LOAD min(Fecha) as MinFechaMaestra,

  max(Fecha) as MaxFechaMaestra

Resident Registros

Where NOT isnull(Fecha);

LET vsMinFecha = num(Peek('MinFechaMaestra',0));

LET vsMaxFecha = num(Peek('MaxFechaMaestra',0));

Calendario:

LOAD Date($(vsMinFecha)+RowNo()) as Fecha,

  year(Date($(vsMinFecha)+RowNo())) as Año,

  'Q'& div((month(Date($(vsMinFecha)+RowNo()))+2),3) as "Trimestre",

  'B'& div((month(Date($(vsMinFecha)+RowNo()))+1),2) as "Bimestre",

     month(Date($(vsMinFecha)+RowNo())) as Mes,

     num(month(Date($(vsMinFecha)+RowNo()))) as MesNum,

     month(Date($(vsMinFecha)+RowNo())) &'-'&day(Date($(vsMinFecha)+RowNo())) as DiaMes,

     ((Year(Date($(vsMinFecha)+RowNo()))-2000)*12)+Month(Date($(vsMinFecha)+RowNo())) as AñoMesNum,

     Month(Date($(vsMinFecha)+RowNo())) &'-'&((Year(Date($(vsMinFecha)+RowNo()))-2000)) as MesAño,

     Week(Date($(vsMinFecha)+RowNo())) as Semana,

     Day(Date($(vsMinFecha)+RowNo())) as [Día],

     floor((Week(Date($(vsMinFecha)+RowNo()))+1)/2) as Quincena,

  WeekDay(Date($(vsMinFecha)+RowNo())) as [Día de la semana]

AutoGenerate $(vsMaxFecha)-$(vsMinFecha)+1;

DROP Table Fechas;

Al crear la tabla maestra, pierdo el campo % obteniendo lo siguiente:

mi campo % deja de estar operativo y no se por que.

Alguien puede darme una solucion para que tenga mi tabla maestra de fechas y mi campo de entrada trabajando a la vez?

Muchisimas grácias.

7 Replies
omar_1981
Contributor III
Contributor III
Author

Sigo sin poder encontrar una solucion a mi problema. Alguien sabe que debería hacer para poder usar los inputfields en este ejemplo?

alex_millan
Creator III
Creator III

Hola Omar,

partiendo de la base que no he trabajado con inputfield y a riesgo de preguntar algo obvio, hay una cosa que no entiendo.

Si declaras como inputfield el campo multiplicador antes de la carga de la tabla 'Registros' (que incluye el campo).

¿Por qué es necesario declararlo de nuevo al cargar la tabla 'Calendario'? ¿No es suficiente con hacerlo una vez en el script?

omar_1981
Contributor III
Contributor III
Author

Buenos días Alex.

Se trata de un error al copiar el texto. Realmente está comentado pero aquí no ha aparecido.

De todas formas, he editado para que no aparezca en el script que he publicado y así evito confusiones.

Muchas grácias no obstante.

Saludos.

alex_millan
Creator III
Creator III

¿Y te supondría mucho problema enviar fichero ejemplo para intentar echarle un vistazo? Igual no consigo echarte una mano, pero por intentarlo...

alex_millan
Creator III
Creator III

Por si te sirviera de ayuda, te pongo un link que trata de las peculiaridades del inputfield:

Inputfield

Es probable que sea un problema de unicidad del valor del inputfield tal y como apuntan en el hilo que te he puesto.

Además te adjunto un ejemplo (con el excel de los datos) por si te diera alguna pista.

Un saludo

jmmayoral3
Creator
Creator

Hola Omar.

No se si tendrá algo que ver, pero tal como lo tienes definido te debería estar creando una tabla de síntesis entre 'Registros' y 'Calendario' ya que comparten los siguientes campos: Fecha, Año y Mes.

Prueba comentar Año y Mes en la tabla 'Registros' para que no los cargue. al fin y al cabo los tendrás asociados en la tabla Calendario.

omar_1981
Contributor III
Contributor III
Author

Hola Jose Manuel:

Tienes razon, pero ese error lo resolví ya. El problema con los campos de entrada persiste, y no llego a enterder porqué. Aun así gracias por la observación.