Skip to main content

Power BI Integration

Pull Salesforce data into Power BI for deeper analysis

Updated over 3 months ago

While Salesforce’s native dashboards are powerful, you may want to perform more advanced analytics or combine FieldKo data with other data sources. Microsoft Power BI is a popular business intelligence tool that can connect to Salesforce data, including your FieldKo objects. FieldKo is built on Salesforce, so all data in FieldKo/Salesforce can be accessed using Power BI​ via Salesforce’s standard APIs.

In this article, we’ll explain how to connect FieldKo to Power BI using the standard Salesforce connector, step by step. We’ll cover authenticating the connection, selecting FieldKo objects to import, scheduling data refreshes, and designing dashboards in Power BI using visit, task, and survey data. We’ll also provide guidance on alternative methods (such as using Talend, Fivetran, or custom APIs) in case you have a more complex integration setup. This guide is intended for Salesforce admins/developers as well as business analysts – no coding required for the standard connector approach.

Connecting Power BI to Salesforce (FieldKo Data)

Power BI provides built-in connectors to Salesforce that make it straightforward to pull your FieldKo data into Power BI. You can choose to import data from Salesforce Objects (tables) or Reports. Using the Objects connector is common for FieldKo, as it lets you retrieve raw data from FieldKo’s custom objects (like visits, tasks, etc.) and build visuals freely. Here are the steps to get connected:

  1. Launch Power BI and choose the Salesforce connector: Open Power BI Desktop. On the Home ribbon, click Get Data. In the Get Data dialog, find Salesforce. (You may need to click More... and look under Online Services for Salesforce connectors.) There are two options: Salesforce Objects and Salesforce Reports. Select Salesforce Objects if you want to pull raw object data (this is recommended for most FieldKo integrations). Then click Connect.

  2. Authenticate with Salesforce: Power BI will prompt you to log into Salesforce. It may ask you to choose between Production or Sandbox – select Production unless your FieldKo data is in a Salesforce sandbox. A secure Salesforce login screen will appear. Enter the credentials for a Salesforce user that has API access to the FieldKo data. It’s best to use an account with at least read access to all the FieldKo objects you need (often a Salesforce admin user or integration user). If your org uses Salesforce single sign-on or MFA, follow the appropriate steps to complete the OAuth login. Once authenticated, Power BI will establish a connection to Salesforce.

  3. Select FieldKo objects to import: After login, you’ll see a navigator window listing available Salesforce objects (tables). You can search within this list for FieldKo-specific objects. The naming will depend on FieldKo’s package; for example, you might see objects like Visit__c, Visit_Task__c, Survey_Response__c, etc., or they may have a namespace prefix (e.g., FieldKo__Visit__c). Select the objects that contain the data you want. Common FieldKo objects might include:

    • Visits – records of field visits (with date, rep, account, etc.).

    • Visit Tasks – tasks or activities associated with visits.

    • Survey Responses – answers or scores from any surveys completed during visits.

    • Accounts/Stores – if you need account details (though these might be standard Salesforce Account objects).

    • Users – to get rep (user) information, if needed for name or region, etc.

    • Any other custom objects used by FieldKo (e.g., call cycle plans, if those are stored as objects).
      You can select multiple objects at once. As you select each object, a preview of the data may appear in the right panel. For example, selecting “Visit__c” might show columns like Name, Visit Date, Assigned Rep, Account, Status, etc. If you plan to combine data (like tasks linked to visits), be sure to select all relevant objects now.

  4. Load the data (or edit if needed): Once you have all desired objects selected, you have two options:

    • Click Load to import the data directly into Power BI. This will bring in the tables as they are.

    • Click Transform Data (which opens Power Query Editor) if you want to filter or transform the data before loading. For example, you might remove unnecessary columns, rename fields for clarity, or filter to the last 12 months of data to reduce volume. You can always do transformations later as well.
      After you choose Load, Power BI will connect to Salesforce and download the data from those objects. This may take a few minutes depending on the volume of FieldKo data. Once done, you’ll see the tables listed in the Fields pane in Power BI, ready for use in visuals.

Note: The Salesforce Objects connector retrieves all records by default. If you have a very large amount of FieldKo data (thousands of visits, etc.), consider using the Transform Data step to apply filters (for instance, import only the last year of visits, or only active tasks). This can improve performance. You can also use Salesforce Reports connector if you have specific Salesforce reports created (e.g., a “All Visits This Year” report); however, using objects gives you more flexibility in Power BI to slice and combine data.

Designing Dashboards in Power BI with FieldKo Data

Once your FieldKo data is loaded into Power BI, you can start creating visuals and dashboards to gain insights. This process will be familiar to Power BI users – you build visuals on a report canvas and then can publish that to the Power BI Service as a dashboard or report. Here’s how to proceed:

  • Model the data (relationships): If you imported multiple objects, establish relationships between them in Power BI’s Model view (if Power BI didn’t auto-detect them). For example, if you brought in Visits and Visit Tasks, there might be a field like Visit Id on the task object that corresponds to the Id field on the visit object. Create a relationship between those (drag the field in the model diagram or use the manage relationships dialog). Similarly, relate Survey Responses to Visits via a common Visit ID, or link any lookups (like Account on Visit to the Accounts table). Proper relationships ensure you can create visuals that combine data from these tables (e.g. count of tasks per visit, or filter surveys by visit attributes).

  • Create visuals in Power BI: Use the Report view in Power BI Desktop to design your dashboard. Add a new page (or use the first page) and start adding visualisations:

    • For example, to visualise field team productivity, you might insert a Clustered Bar Chart: set the axis to the rep name (from the Users or Visits table) and the value to count of Visit Id (from Visits). This will show a bar for each rep with the number of visits completed. You can add a filter (visual or page filter) for a date range (e.g., only include visits in the last month).

    • To analyze visit outcomes, you could create a Pie Chart showing the breakdown of outcomes. If you have a field like Visit Outcome or a survey question indicating pass/fail, use that as the legend and the count of visits as values. The pie will show the proportion of visits that were successful vs unsuccessful.

    • To track call cycle adherence, you might need to calculate a metric. You can create a Measure in Power BI, for example: Adherence % = DIVIDE( [Completed Visits] , [Planned Visits] ). If your data has flags or counts for planned vs completed, ensure those are in the data model (you might need to mark visits with a status or have a separate planned schedule count). Then you could display adherence as a Card visualisation (a big number percentage) or a gauge visual.

    • Use Line Charts for trends over time, like visits per week or average audit score per month. Drag a date field (Visit Date) to the axis (set it to continuous by month) and something like count of visits or average score as the value.

    • Include tables if you want detail: for instance, a table listing all visits that failed compliance, with columns for rep, account, date, and failure reason. This allows drill-down from summary charts.

    • Slicers (filters) can be added to the report page to let users filter the data, e.g., a slicer for Region or Rep so a manager can view one person’s metrics at a time.

  • Format and arrange the visuals to create a coherent dashboard. Give each visual a clear title (e.g., “Visits per Rep (Last 30 Days)”). Use Power BI’s formatting options to adjust colours (perhaps match your FieldKo or company branding), data labels, and other stylistic elements. You can also add text boxes or images (like a company logo or a title for the dashboard) to make it polished.

  • Combine FieldKo data with other sources (optional): One advantage of Power BI is merging data sources. If you want to enrich FieldKo data with, say, sales figures from an ERP or targets from an Excel sheet, you can use Get Data again to import those and relate them to your FieldKo data. For example, import a CSV of each rep’s monthly target number of visits, relate it by rep, and then plot actual vs target on a chart. This goes beyond FieldKo alone but can be very powerful for analysis. Make sure any additional data is up-to-date or part of your refresh plan (see next section).

After creating the report with all desired visuals, test the interactions (e.g., if you click on a segment of a chart, other visuals cross-filter by default). You can pin these visuals to a Power BI dashboard if you want interactive tiles, or simply treat the Power BI report itself as the dashboard (many users just use the report in Power BI service, since it allows slicing and filtering on the fly).

Scheduling Data Refreshes

With your Power BI report ready, the next step is to keep the FieldKo data current. By default, the data you loaded is a one-time snapshot. You’ll likely want to set up an automatic refresh so that, for example, every morning the Power BI dataset pulls the latest FieldKo (Salesforce) records. Here’s how to set that up:

  1. Publish to Power BI Service: Save your Power BI Desktop (.pbix) file. Click Publish and choose your Power BI workspace (you need a Power BI Pro license or higher to publish to a workspace other than “My Workspace”). Once published, the dataset (containing the FieldKo data model) and the report will be on the Power BI cloud service.

  2. Configure Salesforce credentials in the Service: In your Power BI workspace online, find the dataset you just published (it will have the same name as your Power BI file). Click the ellipsis (...) > Settings for that dataset. In the settings, find the Data source credentials section. You should see an entry for the Salesforce data source. Click Edit credentials. Authenticate with the Salesforce credentials (similarly to what you did in Desktop). This step ensures the cloud service can sign in to Salesforce to refresh the data. Use OAuth and provide the credentials; if your org requires MFA, you might need to use a Salesforce user with API token or set up a connected app – but generally OAuth handles it.

  3. Set up scheduled refresh: Still in the dataset settings, find Scheduled refresh. Turn it on and choose your refresh frequency. With a Pro license, you can refresh up to 8 times a day (e.g., daily at 6am, or Monday-Friday at 8am and 1pm, etc. – whatever your needs). Set the time zone and specific times for refresh. Typically, once a day overnight or early morning is common for field data, but high-frequency data might be refreshed more often if needed. Ensure “Keep your data up to date” is toggled on. Save the schedule.
    Now Power BI will automatically re-query Salesforce at the scheduled times and update the dataset. This means your visuals will show fresh data without manually clicking refresh in Desktop.

  4. Test the refresh and data: You can also trigger Refresh Now on the dataset to test it. If the credentials and everything are set correctly, the refresh should succeed. If there’s an error (for example, due to an object not accessible or large data volume timeouts), you may need to adjust (perhaps split into smaller sets or use incremental refresh if advanced). But most standard FieldKo datasets will refresh fine through the API.

  5. Dashboard and alerts (optional): If you pinned any visuals to a Power BI Dashboard in the service (distinct from the report), you can set that dashboard to send alerts or emails if certain thresholds are met (e.g., if a KPI goes below a target). This is optional, but a nice feature if you want proactive notifications based on FieldKo data.

Going forward, your Power BI report will be kept up to date on the schedule. Business analysts and stakeholders can simply view the Power BI dashboard/report to see the latest FieldKo metrics, without needing to manually export or update data.

Alternative Integration Methods (Talend, Fivetran, API)

While the native Salesforce connector is the quickest way to get FieldKo data into Power BI, some organisations use data integration pipelines for more complex needs. Here are some alternative methods and when you might consider them:

  • Using ETL Tools (Talend, Informatica, etc.): ETL (Extract, Transform, Load) tools like Talend can pull data from Salesforce on a schedule and load it into a database or data warehouse. For example, a Talend job could export FieldKo objects (via the Salesforce API) daily and store them in a SQL database. Power BI would then connect to that database instead of directly to Salesforce. The benefit is you can perform heavy transformations, combine with other sources in a controlled environment, and potentially handle larger volumes (Salesforce APIs have limits, so an ETL tool can manage incremental loads or use the Bulk API). This approach requires an integration developer to set up and maintain the ETL jobs, but it may be suitable if you already use such tools or need complex data shaping.

  • Using a Cloud Data Pipeline (Fivetran, MuleSoft, etc.): Services like Fivetran provide pre-built connectors that continuously sync data from Salesforce to a destination of your choice (e.g., a cloud data warehouse like Snowflake or BigQuery). In this scenario, you’d configure Fivetran to replicate FieldKo objects. It will automatically pull new and updated records from Salesforce on a schedule (often every few minutes or hourly). Then, Power BI connects to the data warehouse to query the FieldKo data. The advantage is minimal coding and maintenance – the service handles the extraction and you get a reliable, up-to-date database table. This is useful if you have large data volumes or want to join FieldKo data with many other data sources in a warehouse for advanced analysis. Keep in mind this approach typically has additional costs (for the pipeline service and the warehouse).

  • Custom API Integration: For organizations with specific needs, a custom integration can be built. For example, a developer might write a script or use a tool like PowerShell, Python, or Azure Data Factory to call the Salesforce REST or Bulk API and pull FieldKo data to a local storage or Azure Blob, etc. Then Power BI can connect to that data (perhaps via “Get Data from CSV/JSON” or a database if the script loads it there). A custom API solution offers maximum flexibility – you can control exactly what data to pull and how to process it. However, it’s the most complex option and requires maintenance of the custom code. If you go this route, ensure you follow Salesforce API best practices:

    • Use Bulk API for large data exports (to reduce number of API calls).

    • Respect API limits and schedule appropriately (Salesforce has daily API call quotas).

    • Securely store Salesforce credentials (consider using OAuth tokens or a Connected App rather than hard-coded username/password).

    • Implement error handling and logging for your data pulls.
      Once the data is extracted, you can either push it into a database that Power BI can read, or even directly use the files (Power BI can connect to CSV/Excel files, for instance, but you’d need a mechanism to update those files regularly).

For most FieldKo customers, the standard Salesforce connector in Power BI or a managed tool like Fivetran will suffice, as they cover the needs without coding. The choice of method may depend on your company’s data infrastructure. If you already have a data warehouse and other Salesforce data flowing into it, it might make sense to include FieldKo data there and use Power BI on top of the warehouse. If not, connecting Power BI directly to Salesforce (as described in this article) is usually the fastest way to get actionable insights.

Final Thoughts

By connecting FieldKo to Power BI, you unlock the ability to build highly customised analytics and combine FieldKo’s field execution data with other business data. Using the standard connector, Salesforce admins can set up the connection in minutes, and business analysts can then craft interactive reports to answer deeper questions about field performance, compliance, and outcomes. Always ensure that the data you pull respects your company’s data policies (governance and privacy) – Salesforce’s security model will carry over to the API, so use a user account with appropriate read permissions for what you need.

Remember that FieldKo’s data is already available in Salesforce for quick reporting and dashboards within the CRM​. The Power BI integration is an additional analytics layer for when you need more flexibility, multi-source analysis, or a different presentation of the data. With scheduled refreshes in place, your Power BI dashboards will stay current with FieldKo, providing a powerful complement to Salesforce’s native analytics.

Whether you’re a Salesforce admin ensuring the data pipeline runs smoothly, or a business analyst designing the visuals, this integration empowers you to get the most insight from FieldKo’s field data – driving better decision-making and performance management across your field teams.

Did this answer your question?