Forum Discussion

bengineer's avatar
bengineer
New Member
4 years ago

Data Firewall Issues when passing data from one query to another

I'll start by saying I can make this work in the Desktop application by ignoring the data source security settings, but this will not work when published to my powerbi gateway.

 

I have two queries

1. A local enterprise database used to pull down a list of customer numbers meeting a certain criteria.  The customer numbers are loaded into a string parameter in the form of 0001,0002,0003,0004,0005...

2.  A cloud datalake with more data than can be pulled down without filtering it by a list of customer numbers.  The query runs as select * from Table where customer in (list of customer numbers from 1)...

 

Here is a really simple scrubbed example-

 

I can make this work in desktop, but when I publish it to my gateway and try and setup auto refresh on the data, i get the error

"...references other queries or steps, so it may not directly access a data source. Please rebuild this data combination."

 

What is the right way to pass results from one query into another without invoking the datafirewall error?

3 Replies

    • bengineer's avatar
      bengineer
      New Member

      Greg_Deckler I have tried that approach to the best of my understanding.  I created a separate query for the customer numbers from my internal DB, assigned them to a parameter and then passed the parameter into my final datalake query and I still receive the same error.

      • Greg_Deckler's avatar
        Greg_Deckler
        Community Champion

        bengineer Unfortunately there is no 100% sure fire way to fix these things because everybody's queries and requirements are different. However, in theory you should be able to create a query that is essentially your first line after your let and return that step so:

        let

          Source = Oracle.Database(...

        in

          Source

         

        Let's call this Query1. Now, in your current query, replace that Source line with:

        Source = Query1