How to setup data source substitution?

Pratap Singh shared this question 1 year ago
Answered

Hi,

as per the following article, we can set up the data source substitution, but we need to set the same schema for Client's data source for this to work.

https://community.yellowfinbi.com/knowledge-base/article/how-do-multiple-clients-run-the-same-report-with-different-data-sources

I am not getting that how exactly it will work.

can you please explain.

Regards

Pratap

Best Answer
photo

Hi Pratap,

Thanks for the reply. Yes this is definitely possible!

In my example, I have a database named test_data that exists on two separate hosts: 10.100.1.4 and 10.100.1.192. These both contain the same Schema.

I already have my Data Source created in my Default Org pointing at 10.100.1.4 (or in my case localhost).

67cbd1747dfe8d9ce3539fc32e8a0249


I've also created content against this source that I intend to allow my Cilent Org to use. I do not want them viewing the data from the Default Org, so I'll want to set up Data Source Substitution. This will point the reports they load to their own data source.

I already have my Client Org created, so now I'll add my Data Source for THEIR data, which will point to 10.100.1.192:

36cd1d696d9e6a79d5305e98f3fac998

Now that this exists, we need to create the substitution at a Default Org level. Logging back into the Default Org, I'll edit my Test Data settings within the Admin Console. Under 'Usage Parameters' in the Data Source settings, there's now a Client Substitution box as pictured in the bottom of my screenshot:

37b13b043c785ded62fe05af1544a799

Note that you must click 'Edit' and choose the data source you'd like to use as the Client Org substitution.

At this point, when logging in to my Client Org and running any reports built from this data source, the reporting content now targets their own database. To illustrate this, I've made some changes to the data. My Default Org has created the content as shown:

0e32679bb367474e2b952ab2093e4a79

Since we've enabled Source Substitution for my Client Org, they should see THEIR data instead of that shown above. Here's the report run from the Client Org:

858dc955c11a1355be8f9b6b28f8b217

As you can see, this uses the same report to show their own data. This is extremely handy when dealing with an identical schema on different servers or databases.

Does this help?

Thanks,

Ryan

Comments (6)

photo
1

Hello Pratap,

Thanks for reaching out with your question. I'd like to start by referencing our Wiki Page on the subject here.

What this feature allows you to do, is to create content based on a single data structure at a Default Org level and distribute it to your Client Organizations.

This is useful when curating default content for a data structure, but maintaining separation of data between Client Orgs.

This can be used to build the content and target a separate database or host, or it can be used to reference specific content separated by a unique identifier at a database level.

When users run reports that exist at a Default Org level, they will instead see their own data.

Does this answer your question?

Thanks,

Ryan

photo
1

Hi Pratap,

I wanted to check in and see if you've had a chance to review my reply.

Thanks,

Ryan

photo
1

Hi Ryan,

Consider an example , I have two different servers and multiple schema's on both the servers , now case is I have created reports on one server's schema on default org, now if i will create connection with 2nd server for client , will it be possible to use this functionality ?? consider that both the schema on separate server.

Regards

Pratap

photo
1

Hi Pratap,

Thanks for the reply. Yes this is definitely possible!

In my example, I have a database named test_data that exists on two separate hosts: 10.100.1.4 and 10.100.1.192. These both contain the same Schema.

I already have my Data Source created in my Default Org pointing at 10.100.1.4 (or in my case localhost).

67cbd1747dfe8d9ce3539fc32e8a0249


I've also created content against this source that I intend to allow my Cilent Org to use. I do not want them viewing the data from the Default Org, so I'll want to set up Data Source Substitution. This will point the reports they load to their own data source.

I already have my Client Org created, so now I'll add my Data Source for THEIR data, which will point to 10.100.1.192:

36cd1d696d9e6a79d5305e98f3fac998

Now that this exists, we need to create the substitution at a Default Org level. Logging back into the Default Org, I'll edit my Test Data settings within the Admin Console. Under 'Usage Parameters' in the Data Source settings, there's now a Client Substitution box as pictured in the bottom of my screenshot:

37b13b043c785ded62fe05af1544a799

Note that you must click 'Edit' and choose the data source you'd like to use as the Client Org substitution.

At this point, when logging in to my Client Org and running any reports built from this data source, the reporting content now targets their own database. To illustrate this, I've made some changes to the data. My Default Org has created the content as shown:

0e32679bb367474e2b952ab2093e4a79

Since we've enabled Source Substitution for my Client Org, they should see THEIR data instead of that shown above. Here's the report run from the Client Org:

858dc955c11a1355be8f9b6b28f8b217

As you can see, this uses the same report to show their own data. This is extremely handy when dealing with an identical schema on different servers or databases.

Does this help?

Thanks,

Ryan

photo
1

Hi Ryan,

Thanks for your detailed explaination.

worked for me. you can close this for now.

Regards

Pratap

photo
1

Hi Pratap,

Thanks for the update! I'll go ahead and mark this as Answered. Please don't hesitate to reach out with further questions or issues.

Thank you,

Ryan

photo