Giter Club home page Giter Club logo

dbt_salesforce's Introduction

Salesforce (docs)

This package models Salesforce data from Fivetran's connector. It uses data in the format described by this ERD.

The main focus of this package is enable users to better understand the performance of your opportunities. You can easily understand what is going on in your sales funnel and dig into how the members of your sales team are performing.

Models

The primary outputs of this package are described below. Staging and intermediate models are used to create these output models.

model description
salesforce__manager_performance Each record represents a manager, enriched with data about their team's pipeline, bookings, loses, and win percentages.
salesforce__owner_performance Each record represents an individual member of the sales team, enriched with data about their pipeline, bookings, loses, and win percentages.
salesforce__sales_snapshot A single row snapshot that provides various metrics about your sales funnel.
salesforce__opportunity_enhanced Each record represents an opportunity, enriched with related data about the account and opportunity owner.

Installation Instructions

Check dbt Hub for the latest installation instructions, or read the dbt docs for more information on installing packages.

Configuration

By default, this package looks for your Salesforce data in the salesforce schema of your target database. If this is not where your Salesforce data is, add the following configuration to your dbt_project.yml file:

# dbt_project.yml

...
config-version: 2

vars:
    salesforce_schema: your_schema_name
    salesforce_database: your_database_name

This package allows users to add additional columns to the opportunity enhanced table. Columns passed through must be present in the downstream source account table or user table. If you want to include a column from the user table, you must specify if you want it to be a field relate to the opportunity_manager or opportunity_owner.

# dbt_project.yml

...
vars:
  salesforce:
    opportunity_enhanced_pass_through_columns: [account_custom_field_1, account_custom_field_2, opportunity_manager.user_custom_column]
  salesforce_source:
    account_pass_through_columns: [account_custom_field_1, account_custom_field_2]
    user_pass_through_columns: [user_custom_column]

For additional configurations for the source models, visit the Salesforce source package.

Contributions

Additional contributions to this package are very welcome! Please create issues or open PRs against master. Check out this post on the best workflow for contributing to a package.

Database support

This package has been tested on BigQuery, Snowflake and Redshift.

Resources:

  • Provide feedback on our existing dbt packages or what you'd like to see next
  • Have questions, feedback, or need help? Book a time during our office hours here or email us at [email protected]
  • Find all of Fivetran's pre-built dbt packages in our dbt hub
  • Learn how to orchestrate dbt transformations with Fivetran here
  • Learn more about Fivetran overall in our docs
  • Check out Fivetran's blog
  • Learn more about dbt in the dbt docs
  • Check out Discourse for commonly asked questions and answers
  • Join the chat on Slack for live discussions and support
  • Find dbt events near you
  • Check out the dbt blog for the latest news on dbt's development and best practices

dbt_salesforce's People

Contributors

kristin-bagnall avatar tomnagengast avatar fivetran-joemarkiewicz avatar fivetran-chloe avatar erikmag avatar

Watchers

James Cloos avatar  avatar

dbt_salesforce's Issues

Update to align with internal best practices

  • Add .github/workflows files for ci build
  • Update ci build schema in workflow
  • Add ci profiles.yml
  • Add updated generate_schema_name macro
  • Remove seed vars from integration_test/dbt_project.yml
  • Materialize models as view/ephemeral instead of table/view
  • Add aliases for models
  • Update refs to vars in model
  • Disable missing models
  • Add secrets to repo
  • Update package.yml to local dev and confirm models compile locally:
    cd integration_tests
    dbt deps --profiles-dir ci
    dbt run --profiles-dir ci
    dbt test --profiles-dir ci
  • Update package.yml back to git package
  • Open PR

[security] Enforce Branch Protections

This is an issue generated by (for-internal-use-only)github-tools

Description

This repository has exceeded the development grace period, and the repo owner must decide if branch protections should be enforced.
If this repository houses code used in production in any capacity, branch protections must be enforced. Read (for-internal-use-only)here for more details

What do I need to do?

  • You can control whether or not branch protections are enforced by exclusively creating either of the labels:
    'enforce-branch-protections: true' or 'enforce-branch-protections: false'
  • If there is no branch protection control label, this issue will be recreated.
  • Once you have created either label, you can close this issue.
  • If you have issues or questions, please reach out to #internal-security-n-compliance on slack.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.