pequeño
Estoy analizando un solo archivo XML, al final del cual me gustaría exportar los datos ‘analizados’ a un archivo .csv.
Si bien puedo exportar con éxito los datos usando ‘Ejecutar script R’ al final de la consulta usando el siguiente script, parece borrar mis datos en PowerBI, rompiendo así todas mis visualizaciones.
write.table (dataset, file = «c: /AcadTemp/filename.csv», sep = «,», row.names = FALSE);
¿Cómo escribo la salida .csv al final de la ‘consulta’ y aún así la consulta termina con el conjunto de datos (tabla) original que se escribió en el archivo .csv?
Además, si pudiera crear un script para exportar un archivo .csv con el mismo nombre que el archivo .pbix, lo que sería igualmente asombroso. Reutilizaré la misma ‘plantilla’ de powerbi para varios trabajos cambiando el archivo ‘Fuente’ y ‘guardando como’. Esto cuando se actualiza el conjunto de datos, me gustaría que las visualizaciones se actualicen junto con un archivo .csv recién exportado. Entonces, FileA.pbix exportaría FileA.csv, mientras
FileB.pbix exportaría FileB.csv, etc.
v-ljerr-msft
Hola @littletinner,
Según mi prueba, necesitamos cambiar la consulta de energía en el Editor avanzado para usar el paso anterior en lugar de paso # «Ejecutar script R» como resultado sugerido por smoupre anterior, entonces debería funcionar como se esperaba.
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCvRxUdJRMjTTNTAF0QYGSrE6yKJmQNoIKuoXcmgBMkTSaIpXBcgQM1Ol2FgA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [#"State " = _t, #"YYMM " = _t, #"Amount " = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"State ", type text}, {"YYMM ", type text}, {"Amount ", Int64.Type}}), #"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"State ", "State"}, {"YYMM ", "YYMM"}, {"Amount ", "Amount"}}), #"Run R Script" = R.Execute("https://community.powerbi.com/t5/Desktop/Export-parsed-XML-dataset-as-CSV-R-Script/m-p/#"dataset' holds the input data for this script#(lf)write.table(dataset, file=""C:/Export Files/filename.csv"", sep = "","", row.names = FALSE);#(lf)dataset;",[dataset=#"Renamed Columns"]) in #"Renamed Columns"
Para la pregunta de la escena, después de algunos intentos, todavía no puedo encontrar la manera de obtener el nombre del archivo pbix actual con R o M en este escenario. Espero que otros que están más familiarizados con R o M puedan ayudar.
Saludos
Greg_Deckler
Debe asegurarse de que la parte «en» de su Power Query incluya un paso que contenga su conjunto de datos. Supongo que la función write.table no devuelve el conjunto de datos, por lo que si es el paso al que se hace referencia en su «entrada» de su Power Query, no obtendrá nada. Simplemente use el Editor avanzado para cambiarlo al paso anterior a esa declaración.