Forum Discussion

vijaykj09's avatar
vijaykj09
Frequent Visitor
6 years ago
Solved

Dataflow ID's - How to fetch dataflow Id's using dataflow names ( sync test and prod dataflows)

Hi All,

 

I have created two dataflows 1) test 2) prod and created a reports using prod dataflow. it's all working fine. 

 

But, I made few changes to test dataflows (added new columns to existing entities & new entities). In order to sync test and prod dataflow, I have deleted the previous prod dataflow and exported the test dataflow as JSON file and imported JSON file as new prod dataflow (renamed to original name as it was eariler). I have noticed dataflow id got changed and my old report is not working as dataflow id got changed. 

 

1) Is there any way to sync test and prod dataflow without changing the dataflow id's after making changes/updates in test dataflows. So that, we don't need to update the reports/datasets which reference the data flow id's. 

or 

2) Is there any way to call dataflow id's by logical name in reports editor

For example: Dataflows

DataflowsID's 
123 test qqqq-de1a-000-tyyyy-xxxxxx
123 prod 00000-de1a-000-tyyyy-pppppp

 

Report editor: 

 

current code

let
Source = PowerBI.Dataflows(null),
#"00-000-0000" = #"00-00-0000"{[dataflowId="00000-de1a-000-tyyyy-pppppp"]}[Data],
in

 

Expected output

let
Source = PowerBI.Dataflows(null),
#"00-000-0000" = #"00-00-0000"{[dataflowId= "function or parameter to call "123 prod" dataflow id dynamically "]}[Data],
in

 

Regards,

Vijay

  • Yuo can use dataflowName instead of dataflowId:

     

    let
    Source = PowerBI.Dataflows(null),
    Q1 = Source{[workspaceId="4594d842-dbff-4606-a56a-e03f931fbbf5"]}[Data],
    Q2 = Q1{[dataflowName="DFName"]}[Data],
    Query1 = Q2{[entity="Query"]}[Data]
    in
    Query1

7 Replies

  • Yechiel's avatar
    Yechiel
    Microsoft Employee

    Yuo can use dataflowName instead of dataflowId:

     

    let
    Source = PowerBI.Dataflows(null),
    Q1 = Source{[workspaceId="4594d842-dbff-4606-a56a-e03f931fbbf5"]}[Data],
    Q2 = Q1{[dataflowName="DFName"]}[Data],
    Query1 = Q2{[entity="Query"]}[Data]
    in
    Query1

  • vijaykj09's avatar
    vijaykj09
    Frequent Visitor

    Hi All,

     

    I have created two dataflows 1) test 2) prod and created a reports using prod dataflow. it's all working fine. 

     

    But, I made few changes to test dataflows (added new columns to existing entities & new entities). In order to sync test and prod dataflow, I have deleted the previous prod dataflow and exported the test dataflow as JSON file and imported JSON file as new prod dataflow (renamed to original name as it was eariler). I have noticied dataflow id got changed and my old report is not working as dataflow id got changed. 

     

    1) Is there any way to sync test and prod dataflow without changing the dataflow id's after making changes/updates in test dataflows. So that, we don't need to update the reports/datasets which reference the data flow id's. 

    or 

    2) Is there any way to call dataflow id's by logical name in reports editor

    For example: Dataflows

    DataflowsID's 
    123 test qqqq-de1a-000-tyyyy-xxxxxx
    123 prod 00000-de1a-000-tyyyy-pppppp

     

    Report editor: 

     

    current code

    let
    Source = PowerBI.Dataflows(null),
    #"00-000-0000" = #"00-00-0000"{[dataflowId="00000-de1a-000-tyyyy-pppppp"]}[Data],
    in

     

    Expected output

    let
    Source = PowerBI.Dataflows(null),
    #"00-000-0000" = #"00-00-0000"{[dataflowId= "function or parameter to call "123 prod" dataflow id dynamically "]}[Data],
    in

     

    Regards,

    Vijay

     

  • either use service parameters or (if covered by your license) deployment pipelines.

    • vijaykj09's avatar
      vijaykj09
      Frequent Visitor

      dataflows are not supported currently in deployment pipelines. even if it does, dataflow id's will get change. 

       

      Is there any way to fetch dataflow id's using dataflow name ? so that, I will parameterise the dataflow id's using dataflows name. 

       

      • Camer's avatar
        Camer
        New Member

        did you find a solution to this?

  • agusmba's avatar
    agusmba
    Advocate III

    You don't need to complicate things now that dataflows are supported in pipelines. If you follow normal deployment practices, your dataflows will behave as expected (automatically linked to their own related dataflows in each deployment environment).