Forum Discussion

hsiddiq's avatar
hsiddiq
Frequent Visitor
2 years ago
Solved

PowerBI: How to Get Machine Tab Details from PAD to PowerBi

 
Hi All,

Is there a way to get this view pulled into PowerBI to check the Machine Status (disconnected/Connected/Etc)


I've read and downloaded the the PowerBI template from here https://learn.microsoft.com/en-us/power-automate/desktop-flows/desktop-flow-activity

Under the limitation section it does say: 

Some data aren't available in the Power BI desktop template: current runs, machine statuses, top failed cloud flows, and the see more option

Does anyone have any suggestion on the Machine Tab in Power Automate can be replicated to PowerBI? 

Appreciate the help.

  • Instead of using the template you can go exploring yourself what data is available in your dataverse.

     

     

    let
        Source = CommonDataService.Database(#"Organization url", [EnableDisplayNames=false]),
        dbo_flowsession = Source{[Schema="dbo",Item="flowsession"]}[Data],
        #"Select columns" = Table.SelectColumns(dbo_flowsession,{"flowsessionid", "createdon", "statuscode", "statuscodename", "name", "completedon", "errorcode", "startedon", "regardingobjectid", "regardingobjectidname", "context", "machinegroupid", "machineid", "machineidname", "machinegroupidname", "flowmachine", "flowmachinegroup", "workflow", "owneridname"}),
        #"Duplicated Column Completedon to reportingdate" = Table.DuplicateColumn(#"Select columns", "completedon", "reportingdate"),
        #"Changed reportingdate Type" = Table.TransformColumnTypes(#"Duplicated Column Completedon to reportingdate",{{"reportingdate", type date}}),
        #"Added Run mode Column" = Table.AddColumn(#"Changed reportingdate Type", "runmode", each if Text.Contains([context], """attendedMode"":""Attended""") then "Attended" else if Text.Contains([context], """attendedMode"":""Unattended""") then "Unattended" else "Local"),
        #"Expanded flowmachinegroup" = Table.ExpandRecordColumn(#"Added Run mode Column", "flowmachinegroup", {"flowgrouptype", "flowgrouptypename"}, {"flowmachinegroup.flowgrouptype", "flowmachinegroup.flowgrouptypename"}),
        #"Added Machine group name Column" = Table.AddColumn(#"Expanded flowmachinegroup", "reportingmachinegroupname", each if [flowmachinegroup.flowgrouptype] = 545940002 then null else [machinegroupidname]),
        #"Expanded flowmachine" = Table.ExpandRecordColumn(#"Added Machine group name Column", "flowmachine", {"hostingtype"}, {"flowmachine.hostingtype"}),
        #"Added Conditional Column" = Table.AddColumn(#"Expanded flowmachine", "reportingmachinename", each if [flowmachine.hostingtype] = 1 then null else [machineidname])
    in
        #"Added Conditional Column"

     

    etc.

     

     

1 Reply

  • Instead of using the template you can go exploring yourself what data is available in your dataverse.

     

     

    let
        Source = CommonDataService.Database(#"Organization url", [EnableDisplayNames=false]),
        dbo_flowsession = Source{[Schema="dbo",Item="flowsession"]}[Data],
        #"Select columns" = Table.SelectColumns(dbo_flowsession,{"flowsessionid", "createdon", "statuscode", "statuscodename", "name", "completedon", "errorcode", "startedon", "regardingobjectid", "regardingobjectidname", "context", "machinegroupid", "machineid", "machineidname", "machinegroupidname", "flowmachine", "flowmachinegroup", "workflow", "owneridname"}),
        #"Duplicated Column Completedon to reportingdate" = Table.DuplicateColumn(#"Select columns", "completedon", "reportingdate"),
        #"Changed reportingdate Type" = Table.TransformColumnTypes(#"Duplicated Column Completedon to reportingdate",{{"reportingdate", type date}}),
        #"Added Run mode Column" = Table.AddColumn(#"Changed reportingdate Type", "runmode", each if Text.Contains([context], """attendedMode"":""Attended""") then "Attended" else if Text.Contains([context], """attendedMode"":""Unattended""") then "Unattended" else "Local"),
        #"Expanded flowmachinegroup" = Table.ExpandRecordColumn(#"Added Run mode Column", "flowmachinegroup", {"flowgrouptype", "flowgrouptypename"}, {"flowmachinegroup.flowgrouptype", "flowmachinegroup.flowgrouptypename"}),
        #"Added Machine group name Column" = Table.AddColumn(#"Expanded flowmachinegroup", "reportingmachinegroupname", each if [flowmachinegroup.flowgrouptype] = 545940002 then null else [machinegroupidname]),
        #"Expanded flowmachine" = Table.ExpandRecordColumn(#"Added Machine group name Column", "flowmachine", {"hostingtype"}, {"flowmachine.hostingtype"}),
        #"Added Conditional Column" = Table.AddColumn(#"Expanded flowmachine", "reportingmachinename", each if [flowmachine.hostingtype] = 1 then null else [machineidname])
    in
        #"Added Conditional Column"

     

    etc.