No se puede convertir el tipo de datos de una columna de lista de Sharepoint

Un usuario Pregunto ✅

zallebban

Me estoy acostumbrando a Power BI Desktop después de leer varios tutoriales y lecciones del curso Dashboard in a Day.

He importado con éxito datos de una lista de Sharepoint en línea. Estoy tratando de crear una visualización muy simple que muestre la calidad de un entregable (porcentaje) a lo largo del tiempo.

En Sharepoint, una serie de preguntas de sí/no, cada una asignada a su propia columna, determina si un entregable cumple con ciertos criterios de calidad. Escribí una fórmula en Sharepoint para calcular un puntaje de calidad basado en esas respuestas sí/no. Se calcula como una puntuación de 0 a 100 y se marca como tipo de datos «número» en Sharepoint.

Al importar los datos a PBI, puedo cambiar la columna «fecha de creación» a un tipo de datos de «fecha» sin ningún problema. Intentar cambiar la puntuación calculada de «texto» a «número decimal» (o cualquier número) devuelve un error de que la columna no se puede convertir. En caso de que esto se deba a que es un valor calculado, creé una nueva columna en Sharepoint e ingresé manualmente el puntaje calculado en esa columna. Se produce el mismo problema.

Como resultado, obtengo puntajes de «Recuento de» en lugar de los puntajes mismos en mi visualización. Tan simple como esto es, debe haber una respuesta simple. ¿Qué me estoy perdiendo?

Agradezco la ayuda.

zallebban

En respuesta a zallebban

Lydia, parece que encontré una solución. Siguiendo este ejemplo, extraje los datos de la columna «FieldValuesAsText» y eliminé las otras columnas. A partir de ahí, la conversión de tipos de datos no fue un problema.

Gracias por su ayuda y espero que este método pueda ayudar a alguien más.

@zallebban,

¿Su columna contiene cadenas de texto como «N/A», «En blanco», etc.? Si tiene tales cadenas de texto, primero deberá reemplazarlas con valores numéricos (por ejemplo, 0), luego cambie el tipo de datos de la columna a Número.

Hay un hilo similar para su referencia.
http://community.powerbi.com/t5/Desktop/Cannot-convert-a-negative-text-to-decimal/mp/78245

Saludos,
lidia

zallebban

En respuesta a v-yuezhe-msft

lidia,

De hecho, hay una celda que está vacía, pero no contiene cadenas de texto. Para probar, lo reemplacé con un cero y la columna manual sí se convirtió en números.

El problema que esto plantea es que un cero descarta nuestra visualización. Debido a que el proceso comercial detrás de esto simplemente aún no ha alcanzado el punto en el que se mediría la calidad, ese valor estaría vacío. Si bien la mayoría de las entradas en esta columna tendrían puntajes de calidad, un valor en blanco sería una aparición regular en los datos, por lo que planeé eliminar los valores en blanco a través del filtrado de Power BI (que hice en el panel Filtro para mostrar solo los valores cuando no están en blanco, pero eso no soluciona el problema del tipo de datos original).

Gracias por el enlace, aunque no era exactamente el mismo problema.

En respuesta a zallebban

@zallebban,

Sospecho que si la celda realmente contiene un valor en blanco, ¿podría copiar los valores de la columna en una tabla y compartirme la tabla?

Realizo una prueba para filtrar una columna que solo muestra valores numéricos (elimino los valores de texto), luego puedo convertir el tipo de datos de la columna en un número entero.

Saludos,
lidia

zallebban

En respuesta a v-yuezhe-msft

Lydia, eso haré. Solo dame uno o dos días para pasar una fecha límite y te lo enviaré. Gracias de nuevo.

En respuesta a zallebban

@zallebban,

Cuando copio datos de su Excel a mi Power BI Desktop, todo funciona bien cuando convierto el tipo de datos de Nivel de calidad a Número decimal.

Saludos,
lidia

zallebban

En respuesta a v-yuezhe-msft

Lo mismo conmigo. Pero cuando intento convertirlo tal como se importa de la fuente de datos original, no me lo permite. No sé a dónde ir desde aquí.

En respuesta a zallebban

@zallebban,

¿Existe alguna posibilidad de que cree una fórmula en Power BI Desktop en lugar de calcular la puntuación en función de la respuesta sí/no?

Saludos,
lidia

zallebban

En respuesta a v-yuezhe-msft

Creo que es una buena opción en este momento. Si conoce un buen tutorial o referencia, envíemelo. ¡Gracias, Lidia!

En respuesta a zallebban

@zallebban,

Puede compartir datos de muestra y publicar el resultado esperado con lógica detallada aquí para que podamos proporcionar la fórmula adecuada.

Saludos,
lidia

zallebban

En respuesta a v-yuezhe-msft

Lydia, te acabo de enviar el archivo.

Actualmente, calculo en SharePoint en función de las respuestas Sí/No a los puntos de inspección de calidad. Si es más fácil, podría cambiar las respuestas a 100/0 o 1/0 para facilitar el promedio. Pero si hay una manera de mantener Sí/No, sería más fácil de usar para los consumidores.

El objetivo es un promedio simple de todos los puntos para un solo elemento (fila), que generará un puntaje de calidad (%) que luego se grafica en función del tiempo.

Un desafío potencial es que Power BI actualizará los datos y extraerá elementos que aún no se han sometido a una revisión de calidad; estos deberán ignorarse hasta que haya datos en los campos Sí/No en la próxima actualización.

Espero que eso lo explique. Avísame si necesitas más claridad. Gracias de nuevo.

zallebban

En respuesta a zallebban

Lydia, parece que encontré una solución. Siguiendo este ejemplo, extraje los datos de la columna «FieldValuesAsText» y eliminé las otras columnas. A partir de ahí, la conversión de tipos de datos no fue un problema.

Gracias por su ayuda y espero que este método pueda ayudar a alguien más.

En respuesta a zallebban

@zallebban,

Gracias por compartirme el archivo PBIX de muestra. Sin embargo, no puedo acceder a los datos en el Editor de consultas, ya que no tengo permiso en su sitio de SharePoint. ¿Podría exportar datos de SharePoint a Excel y compartirme el archivo de Excel?

Saludos,
lidia

greg_deckler

¿Y esa nueva columna en SharePoint es una columna de texto o una columna numérica?

zallebban

En respuesta a greg_deckler

Se designa como una columna numérica.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *