fivetran / fivetran/dbt_salesforce

[Feature] Add source definitions for Task, Contact, and other built-in object types

Open
#71 6 comments 0 reactions 0 assignees View on GitHub
type:enhancement update_type:models
Dominant language
No language data
Stars
53
Forks
38
PR merge metrics
No merged PRs in 30d

Description

### Is there an existing feature request for this?

- [X] I have searched the existing issues

### Describe the Feature

Currently, the `salesforce_source` package only defines the tables `account`, `opportunity`, `user` and `user_role` in its `sources` property config, and it does so quite verbosely! Thanks!

It would be quite helpful if it also defined some of the other common table objects that are already [included with the Fivetran Salesforce connector](https://fivetran.com/docs/applications/salesforce#schemainformation) for use in `{{ source(..., ...) }}` tags. There are a LOT of [core objects in Salesforce](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/data_model.htm), and having canonical source / model definitions would save us a lot of codegen.

### Describe alternatives you've considered

We need at least the `Contact` and `Task` objects at this time, which we've worked around by defining `name`-only `tables` definitions in a `salesforce.yml` file containing Source Properties:

```yml
version: 2

sources:
- name: salesforce
tables:
- name: task
- name: contact
```

We can use `generate_source` from `dbt-labs/codegen` to generate source definitions for them directly from the data dumped into the warehouse, but they won't be as descriptive and will contain custom fields.

### Are you interested in contributing this feature?

- [ ] Yes.
- [ ] Yes, but I will need assistance and will schedule time during your [office hours](https://calendly.com/fivetran-solutions-team/fivetran-solutions-team-office-hours) for guidance.
- [X] No.

### Anything else?

_No response_

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.