Excel Spreadsheet Automation with the QUERY Formula



Pull data, automate spreadsheets, and more with the QUERY formula.

The CData Excel Add-In for Procore provides formulas that can query Procore data. The following three steps show how you can automate the following task: Search Procore data for a user-specified value and then organize the results into an Excel spreadsheet.

The syntax of the CDATAQUERY formula is the following: =CDATAQUERY(Query, [Connection], [Parameters], [ResultLocation]);

This formula requires three inputs:

  • Query: The declaration of the Procore data records you want to retrieve, written in standard SQL.
  • Connection: Either the connection name, such as APIConnection1, or a connection string. The connection string consists of the required properties for connecting to Procore data, separated by semicolons.

    Start by setting the Profile connection property to the location of the Procore Profile on disk (e.g. C:\profiles\Procore.apip). Next, set the ProfileSettings connection property to the connection string for Procore (see below).

    Procore API Profile Settings

    To authenticate to Procore, and connect to your own data or to allow other users to connect to their data, you can use the OAuth standard.

    First, you will need to register an OAuth application with Procore. You can do so by logging to your Developer Account and going to Create New App. Follow all necessary steps to register your app. First you will need to create a new version of Sandbox Manifest and then promote it to Production in order to get your Production Crendentials. Your Oauth application will be assigned a client id and a client secret.

    After setting the following connection properties, you are ready to connect:

    • AuthScheme: Set this to OAuth.
    • InitiateOAuth: Set this to GETANDREFRESH. You can use InitiateOAuth to manage the process to obtain the OAuthAccessToken.
    • OAuthClientId: Set this to the client_id that is specified in you app settings.
    • OAuthClientSecret: Set this to the client_secret that is specified in you app settings.
    • CallbackURL: Set this to the Redirect URI that is specified in your app settings
  • ResultLocation: The cell that the output of results should start from.

Pass Spreadsheet Cells as Inputs to the Query

The procedure below results in a spreadsheet that organizes all the formula inputs in the first column.

  1. Define cells for the formula inputs. In addition to the connection inputs, add another input to define a criterion for a filter to be used to search Procore data, such as IsActive.
  2. In another cell, write the formula, referencing the cell values from the user input cells defined above. Single quotes are used to enclose values such as addresses that may contain spaces.
  3. =CDATAQUERY("SELECT * FROM Companies WHERE IsActive = '"&B6&"'","Profile="&B1&";Authscheme="&B2&";OAuthClientId="&B3&";OAuthClientSecret="&B4&";CallbackUrl="&B5&";Provider=API",B7)
  4. Change the filter to change the data.

Ready to get started?

Connect to live data from Procore with the API Driver

Connect to Procore