0:00Hey, it's Tim here in Tableau 22.1 Tableau
0:02have added the ability to use Salesforce as
0:04a
0:04connection type in the virtual connections
0:07capability. You can see that I'm here right
0:09in the connection window. And you can now
0:11go into the search box, type in Salesforce,
0:13and you'll find
0:14that it's a connection there. What it will
0:15do is it automatically authenticate you and
0:18if you're
0:18already logged in, you'll see one or many
0:20of the connections you have to Salesforce,
0:22you can just
0:22go ahead and pick the one you want, it will
0:24then ask you to validate that you do want
0:26to allow the
0:27application access to Salesforce. The
0:29connection uses the API just like Tableau
0:31Desktop and Tableau
0:32Prep. If you then click allow, you'll then
0:35go through and the connection detail will
0:37authenticate
0:38with software. And you'll then have a list
0:41of tables or views or whatever you call
0:43them in
0:43Salesforce. On the left hand side,
0:45essentially, you can now bring anything
0:47into the connection
0:48window as you can with the virtual
0:49connections. So if you haven't checked out
0:52my video on virtual
0:52connections, go ahead and check out that
0:54video because that goes through this in
0:56much more depth
0:57but I'm just going to bring in the more
0:58traditional table. So we're going to look
0:59for the account table
1:01and we're going to bring in the opportunity
1:04table.
1:04I can actually spell.
1:08What's the other one? Leads. These are just
1:13the standard, it's not called leads, it's
1:16called lead.
1:17And you can essentially bring in any
1:18connection that you typically people would
1:20use. And the
1:21benefit of doing this here is instead of
1:23multiple connections to Salesforce, you
1:25have one governed
1:27managed connection. And now there is a
1:28catch with this feature. Of course, it does
1:31require the data
1:31management add on for you to be able to
1:33have things like virtual connections. But
1:35that said,
1:35if you do have this, it's going to make
1:37connecting to Salesforce much, much easier.
1:40And you'll have a
1:40streamlined process. The other thing this
1:42will do is help you manage extracts in one
1:44place,
1:44you can see here that on the top right hand
1:46side, you don't have the ability to do live
1:48connections.
1:49But this virtual connection will manage
1:50extracts for everyone that's connected to
1:52this data source.
1:53So it will become much easier to work with.
1:55The other thing you can do is you can of
1:57course,
1:57use data policies. So if I go to this tab
1:59over here, you can see that the data
2:01policies window
2:02works just like you'd expect. In order to
2:04do this, I'm just going to use a really
2:05fake example here,
2:06because I'm not too familiar with the
2:08objects in Salesforce. That said, I will go
2:10and grab the user
2:11table. And you can see that I have a whole
2:13range of user tables that I can use. And
2:15this particular
2:16case, I'll just bring the user table itself
2:18just on its own. Then if we go over to the
2:21data
2:21policies, we can actually start using the
2:23user table as a way of managing entitlement
2:26. For
2:26example, if I create a new policy, I get
2:28this interface. And I can go ahead and drag
2:31the user
2:31table as an entitlement table. This
2:33essentially means that the data sources we
2:35bring in from here
2:36on, we'll check against the user table to
2:38make sure the user accessing the data
2:40actually has the
2:41rights to do that. You do this by
2:42essentially bringing in a table and using
2:45it as a policy
2:45table. And then what you need to do is you
2:47essentially need to match the corresponding
2:49columns. So if I wanted to set up a
2:51connection where the user could only see
2:53their own customers
2:54or their own clients, I'd bring in the user
2:56table, which should have and reflect all
2:58the users in
2:59Salesforce, and then match it up to the
3:01relevant opportunity field that matches up
3:03to that
3:04corresponding user. So essentially, when
3:06someone logs in, everything would line up
3:08and this check
3:08would happen in real time. So I'll just
3:10sort of simulate this, I'll just go in here
3:12and type,
3:14I think it's called Count. Oh, owner. Yeah,
3:18owner ID. I never I never know how these
3:21things are
3:21named in Salesforce. It's never, it's never
3:23the most sort of obvious naming. And the
3:25other issue
3:26with Salesforce is that the same thing
3:28means different things in lots of different
3:30instances,
3:30because it's essentially been brought
3:31together from lots of different places. So
3:33if I just
3:35type the news here, for example, and I
3:37should actually go for ID, I think that's
3:39going to be
3:39a better place. So let's say, here we go.
3:42Contact ID makes the most sense, or you can
3:45use manager ID,
3:46whatever makes the most sense. So I could
3:48essentially build out a security policy
3:49like this,
3:50it's basically checking everything against
3:52itself. I can also write a condition that
3:55works alongside
3:55of that. And I can also add more complex
3:57conditions to this field. I won't do that
3:59in this
4:00video, go check out my other video where I
4:01do go through virtual connections in a lot
4:03more detail
4:04and a lot more clarity than I've done here.
4:06But I just wanted to update you that in 22.
4:081,
4:08you can now use Salesforce with virtual
4:10connections. Check out some of my other
4:12videos on 22.1. And by all means, if you're
4:14watching this video, and you're not
4:15subscribed,
4:16you are part of the massive group of people
4:18who aren't subscribed. So please help me
4:20out,
4:20subscribe, and I'll catch you in the next
4:28video.