MarianneElver
El desafío es la necesidad de tener una columna que enumere una identificación única existente o crear una nueva identificación única basada en los siguientes criterios:
– Si se reconoce el número de cliente, utilice la identificación única existente, que está previamente vinculada a este número
– Si no se reconoce el no de cliente, busque el correo electrónico y, si se reconoce este correo electrónico, utilice la identificación única que estaba previamente vinculada a este número.
– Si ni el no del cliente ni el correo electrónico coinciden con los registros anteriores, busque el teléfono Y el nombre. Si coinciden, utilice la identificación única existente; de lo contrario, cree una nueva identificación única.
La columna condcional con el ID único se puede agregar en la tabla existente, que es un archivo XML que se actualizará ocasionalmente (se cargará en Power BI. Todas las columnas se expanden). O bien, el ID único se puede crear en una nueva tabla separada. Tengo nombres en minúsculas y correos electrónicos en columnas separadas para asegurar que coincidan.
El propósito es tener siempre una columna o tabla con números de índice únicos vinculados al nombre de un cliente, de modo que las estadísticas se basen en clientes únicos.
¿Es esto posible? En caso afirmativo, ¿qué idioma sería la mejor opción para usar: M o DAX?
Cualquier tipo de sugerencia concreta es muy apreciada ya que he estado buscando en vano cualquier cosa que coincida con esto.
Muchas gracias por adelantado. Marianne
MarianneElver
En respuesta a ImkeF
Muchas gracias, parece muy útil. Intentaré implementar esto y responderé con comentarios lo antes posible. ¡Gracias de nuevo!
Greg_Deckler
M o DAX va a depender, ¿puede publicar algunos datos de muestra y una idea de las diversas tablas involucradas? Ni siquiera estoy seguro de cuál es su columna de índice única, ¿es solo un número entero único?
MarianneElver
En respuesta a Greg_Deckler
Hola, gracias por tu rápida respuesta.
Claro, aquí hay una pequeña muestra. Las primeras cuatro columnas se proporcionan actualmente y recibirán nuevos registros cuando se actualicen, y lo que necesito es una columna adicional que, al verificar el número de cliente o el correo electrónico, o el nombre y el teléfono, proporcione la identificación que ya existe o cree una nueva única. número entero:
Número de cliente | Nombre del cliente | Teléfono | IDENTIFICACIÓN | |
10135000 | nuevonombre@gmail.com | Benny Johnson | 4329463662 | 1 |
10031030 | mhy@du.com | Pete Madsen | 4346123746 | 2 |
10056030 | pete@gmail.com | Pete Madsen | 4346123746 | 2 |
10164001 | janet.nielsen@gmail.com | Donna D. Nielsen | 4346272296 | 3 |
10258006 | sannypeterson9@gmail.com | Sanny Peterson | 4346414642 | 4 |
10258032 | sannypeterson9@gmail.com | Sanny Peterson | 4346414642 | 4 |
Espero que lo aclare, de lo contrario, ¡hágamelo saber!
Gracias de nuevo,
Marianne
v-shex-msft
En respuesta a MarianneElver
Hola @MarianneElver,
Puede escribir una función personalizada para llamar a la API de generación de hash, luego ingresar estas columnas de condición para generar el código único.
Saludos,
Xiaoxin Sheng
MarianneElver
En respuesta a v-shex-msft
Hola Pero gracias de todos modos, Marianne.
ImkeF
En respuesta a MarianneElver
Hola marianne
Si entiendo correctamente su solicitud, PowerBI no es la herramienta adecuada para ello:
¿Está importando datos en Power BI y desea crear un valor que se adhiera a los datos importados, también cuando se realiza la próxima actualización?
El problema es que actualmente no existe un concepto para almacenar dichos datos en PBI. Por lo tanto, necesitaría exportar su nueva tabla con los ID recién generados para que se mantengan … y se vuelvan a importar y se fusionen con los nuevos datos (segunda ejecución), donde nuevamente aparecerán nuevas filas con ID vacíos.
MarianneElver
En respuesta a ImkeF
Hola Imke, gracias por tu respuesta. Ya veo, ¿los datos tampoco se almacenarían si las ID generadas se introdujeran / añadieran a otra tabla? No, entonces, ¿existe algún otro método dentro de PBI para calcular el número único de clientes (y usar este número en varios otros cálculos) si se cumplen los criterios para no contar dos veces al mismo cliente? Gracias de antemano, Marianne
ImkeF
En respuesta a MarianneElver
Sí, puede crear una columna de índice como esta, que se volverá a crear completamente cada vez que actualice su consulta de esta manera:
let Source = Tabelle2, #"Grouped Rows" = Table.Group(Source, {"Phone"}, {{"All", each Table.AddIndexColumn(_, "NestedIndex",1,1), type table}}), TelIndex = Table.AddIndexColumn(#"Grouped Rows", "Index", 1, 1), HasMatches = Table.AddColumn(TelIndex, "Custom", each List.Count(List.Union({[All][email], [All][Customer Number], [All][Customer name]})) <> List.Count(List.Distinct(List.Union({[All][email], [All][Customer Number], [All][Customer name]})))), #"Expanded All" = Table.ExpandTableColumn(HasMatches, "All", {"Customer name", "Customer Number", "email", "NestedIndex"}, {"Customer name", "Customer Number", "email", "NestedIndex"}), #"Added Custom" = Table.AddColumn(#"Expanded All", "NewIndex", each if [Custom] = false then Text.From([Index])&"-"& Text.From([NestedIndex]) else [Index]), #"Removed Columns1" = Table.RemoveColumns(#"Added Custom",{"NestedIndex", "Index", "Custom"}) in #"Removed Columns1"
Simplemente reemplace «Tabelle2» en el paso Fuente por el nombre de su consulta / tabla.
La pregunta es qué se devolverá, si hay más de 2 filas por número de teléfono, y solo 2 coinciden, uno es distinto. Usando este código, la fila no coincidente también obtendría el mismo ID. No estoy seguro de si esto es lo que quieres.
MarianneElver
En respuesta a ImkeF
Hola, ¡esto ES realmente lo que estoy buscando! ¿Se «almacenará para siempre» en Power BI junto con el resto de los datos? Creo que también cambiaré la agrupación de grupo por teléfono a número de cliente, para seguir la verificación de número de cliente-correo electrónico-teléfono en ese orden. Muchas gracias, marianne
ImkeF
En respuesta a MarianneElver
Genial y sí, esto se almacenará y ejecutará cada vez que presione el botón de actualización 🙂
MarianneElver
En respuesta a ImkeF
Muchas gracias, parece muy útil. Intentaré implementar esto y responderé con comentarios lo antes posible. ¡Gracias de nuevo!