Forum Discussion

eswarnallamalli's avatar
eswarnallamalli
New Member
1 month ago
Solved

Unable to set Incremental refresh using Salesforce DB

Hi,

I would like to setup Incremental refresh for 2 tables. Data source is pulling data from salesforce DB. will power bi support Incremental Refresh for salesforce DB. if not, any alternative solution. Please help me.

  • Power BI's incremental refresh technically works with the Salesforce connector, but only in a limited way. Incremental refresh relies on query folding of the RangeStart and RangeEnd datetime parameters into the source, and the Salesforce connector does not fold those filters. That means Power BI still pulls the full dataset each refresh and only slices it afterwards, so you get no real performance or bandwidth gain.

    The practical alternatives are:

    1. Stage the Salesforce data into a source that folds properly, such as Azure SQL, SQL Server, Snowflake, or a Fabric Warehouse/Lakehouse, and enable incremental refresh on that layer.
    2. Use a Fabric Data Pipeline or Data Factory Copy activity with the Salesforce connector to land raw data into a Lakehouse on a schedule, then build your model on top of it with incremental refresh enabled.
    3. If you must go direct, wrap the query in a native SOQL query with a WHERE clause on a date field, but folding is still unreliable and I would not rely on it in production.

    The staging approach is what most teams settle on once volumes grow.

     

    If this helped, a thumbs up and accepting the solution would be appreciated.

     

    Best regards,
    Shai Karmani

     

    Let's connect in LinkedIn

7 Replies

  • Power BI's incremental refresh technically works with the Salesforce connector, but only in a limited way. Incremental refresh relies on query folding of the RangeStart and RangeEnd datetime parameters into the source, and the Salesforce connector does not fold those filters. That means Power BI still pulls the full dataset each refresh and only slices it afterwards, so you get no real performance or bandwidth gain.

    The practical alternatives are:

    1. Stage the Salesforce data into a source that folds properly, such as Azure SQL, SQL Server, Snowflake, or a Fabric Warehouse/Lakehouse, and enable incremental refresh on that layer.
    2. Use a Fabric Data Pipeline or Data Factory Copy activity with the Salesforce connector to land raw data into a Lakehouse on a schedule, then build your model on top of it with incremental refresh enabled.
    3. If you must go direct, wrap the query in a native SOQL query with a WHERE clause on a date field, but folding is still unreliable and I would not rely on it in production.

    The staging approach is what most teams settle on once volumes grow.

     

    If this helped, a thumbs up and accepting the solution would be appreciated.

     

    Best regards,
    Shai Karmani

     

    Let's connect in LinkedIn

  • Yes, Power BI can support Incremental Refresh with Salesforce, but there are some important limitations depending on how the Salesforce data is being accessed.

    Incremental Refresh requires query folding so that Power BI can push the date filter (RangeStart and RangeEnd parameters) back to the source system. If the Salesforce connector does not support query folding for your specific query, Incremental Refresh will not work as expected.

    You can check this by:

    1. Creating the required parameters:

      • RangeStart (DateTime)

      • RangeEnd (DateTime)

    2. Applying the filter to your Salesforce date column.

    3. Right-clicking the last Power Query step and selecting View Native Query.

      • If the option is available, query folding is occurring.

      • If it is disabled, Incremental Refresh may not be supported for that query.

    Possible alternatives:

    • Use Dataflow Gen2 or Fabric Data Factory pipelines

      • Extract Salesforce data incrementally using a watermark column (for example, LastModifiedDate).

      • Store the data in a Lakehouse/Warehouse.

      • Build your Power BI semantic model on top of that curated data.

    • Use Salesforce replication tools

      • Tools such as Salesforce Data Cloud, Azure Data Factory connectors, or third-party ingestion tools can incrementally load Salesforce data into a database or lake.

    • Reduce dataset size through Power Query optimization

      • Remove unnecessary columns.

      • Filter historical data.

      • Aggregate data before loading.

    For enterprise scenarios, a common architecture is:

    Salesforce → Fabric Data Pipeline/Dataflow → Lakehouse/Warehouse → Power BI Semantic Model with Incremental Refresh

    This separates ingestion from reporting and gives more control over refresh performance.

    For more information:

    💡 Helpful? Give a Kudos 👍 — keep the community growing.

    Solved your issue? Mark this as the Accepted Solution ✔️

    Best regards, Prince Singh | Data Science & Microsoft Fabric Enthusiast

  • Kagiyama_yutaka's avatar
    Kagiyama_yutaka
    Icon for Continued Contributor rankContinued Contributor

    Incremental refresh in Power BI works only when the filter on the date column folds, and you can see that in Power Query by checking the last step. When View Native Query is not available, incremental refresh will not work for that Salesforce connection.

  • Hi eswarnallamalli - One additional point: if you're using Salesforce directly, consider leveraging a watermark column such as LastModifiedDate or SystemModstamp during ingestion. Many enterprise implementations incrementally ingest Salesforce data into a staging layer (Fabric Lakehouse/Warehouse, Azure SQL, etc.) first, then configure Power BI Incremental Refresh on that staged data for much better performance.

     

    Hope this added information. 

     

  • v-aatheeque's avatar
    v-aatheeque
    Icon for Community Support rankCommunity Support

    Hi eswarnallamalli 

    Have you had a chance to look through the responses shared earlier? If anything is still unclear, we’ll be happy to provide additional support.

    • v-aatheeque's avatar
      v-aatheeque
      Icon for Community Support rankCommunity Support

      Hi  

      Following up to confirm if the earlier responses addressed your query. If not, please share your questions and we’ll assist further.

       

      eswarnallamalli

  • metrica's avatar
    metrica
    Icon for Post Prodigy rankPost Prodigy

    Hi eswarnallamalli,

     

    Power BI incremental refresh can be configured for Salesforce, but its efficiency depends on the RangeStart and RangeEnd filters being applied at the source.

     

    With the native Salesforce connector, I would verify this for the specific query rather than relying only on View Native Query.

     

    Power BI Connector for Salesforce provides a documented incremental refresh setup using RangeStart and RangeEnd over its OData source.

     

    AppExchange and 30-day trial:
    https://appexchange.salesforce.com/appxListingDetail?listingId=31526f0e-abd8-4cb5-bd1a-3bd56b5c0577

     

    Setup guide:
    https://metricasoftware.com/docs/salesforce/how-to-set-up-incremental-refresh-in-power-bi/

     

    Cheers,
    Metrica Team