Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola a los miembros de la comunidad,
Tengo la siguiente pregunta/problema:
En Power Query, me gustaría insertar una columna de número de "seguimiento" que refleje el número de facturas (columna StartDate) por ClientCode. pero...:
1º: Cuando el número de la columna 'Costes' es 0 o menor, la fila específica no debe obtener un número de seguimiento.
2º: En algunos casos, la columna StartDate muestra 2 o más veces la misma fecha. En ese caso, la columna InvoicedDate debe usarse para averiguar cuál es la fila StartDate 'más antigua'.
En la imagen de abajo he hecho que la columna calculada amarillo y las dos veces tenemos el mismo StartDate naranja.
También adjunté el ejemplo PBIX a este post con la misma información que en la imagen...
¿Quién puede ayudarme con la fórmula correcta para la nueva columna de Power Query?
Espero saber pronto de ti.
Saludos, Sander
Solved! Go to Solution.
Table.AddColumn(#"Type gewijzigd", "FuN", (k)=>
if k[Costs]<0 then null else Table.RowCount(Table.SelectRows(#"Type gewijzigd",each (([StartDate]<k[StartDate] or [StartDate]=k[StartDate] and [InvoicedDate]<k[InvoicedDate]) and [ClientCode]=k[ClientCode] and [Costs]>=0)))+1)
compruebe la salida del Editor avanzado. Estos tipos de funciones a menudo no se pueden usar (o se pueden colocar) en el editor de consultas visuales.
Table.AddColumn(#"Type gewijzigd", "FuN", (k)=>
if k[Costs]<0 then null else Table.RowCount(Table.SelectRows(#"Type gewijzigd",each (([StartDate]<k[StartDate] or [StartDate]=k[StartDate] and [InvoicedDate]<k[InvoicedDate]) and [ClientCode]=k[ClientCode] and [Costs]>=0)))+1)
No @lbendlin
Hoy, traté de convertir su fórmula en un nuevo informe y utilicé los mismos nombres de columna. Como resultado, obtendo la palabra 'función' en lugar de un número. ¿Alguna idea de lo que estoy haciendo mal?
Por favor, explique la secuencia 5-7-8 para ClientCode 10045. ¿No debería ser 5-6-7 ?
let
Bron = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("hdFLDoUwCAXQvTCWBCjUupbG/W/DtPhB7XtOaAcncAO1gqKgEC8wASum80+k5m+rsE4VmD+sNStuP/pKt8ntEiyjjjNot8L/LXqItx1lkFbNrQUrvzLMbkuwaWB7hHLs4ZprN2vSptO1s7gyQ3vSHE9BoVV+Wyx0ruFmB305UbhFBBnzE8+232LdAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [StartDate = _t, InvoicedDate = _t, ClientCode = _t, Costs = _t, FollowUpNumber = _t]),
#"Type gewijzigd" = Table.TransformColumnTypes(Bron,{{"StartDate", type date}, {"InvoicedDate", type date}, {"ClientCode", Int64.Type}, {"FollowUpNumber", Int64.Type}, {"Costs", type number}}),
#"Added Custom" = Table.AddColumn(#"Type gewijzigd", "FuN", (k)=>
if k[Costs]<0 then null else Table.RowCount(Table.SelectRows(#"Type gewijzigd",each ([StartDate]<k[StartDate] and [ClientCode]=k[ClientCode] and [Costs]>=0)))+1)
in
#"Added Custom"
No @lbendlin
El 5-7-8 fue un error tipográfico, debería ser 5-6-7.
Probé la fórmula y funciona casi perfecta. Sólo en la siguiente situación sale mal;
Agregué una nueva fila con el mismo StartDate. Como resultado, obtego el mismo número de seguimiento (volgnummer). Pero cuando el StartDate es el mismo, el InvoicedDate debe usarse para ver cuál es el invoiceddate más antiguo. Esa fila debería obtener el número "más bajo". Traté de visualizar el problema en la imagen de abajo... ¿Es posible que usted haga un pequeño ajuste en la fórmula para que este problema se resuelva?
Salud, Sander
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 |