10 Replies Latest reply on Apr 12, 2019 2:44 PM by Andrew Bickert

    Tableau Server Landing Page - Customization

    Amit Kalia



      In my company, we are planning to customize the Tableau Server Landing Page (Changing the Header top color and font or addition of buttons). I got the info for color change from (Changing color top bar tableau server ) but method of altering the font type, color and addition of buttons is still a thing to mess with.


      Any suggestions or discussions?



      Thank You


        • 1. Re: Tableau Server Landing Page - Customization
          Andrew Bickert

          Hi Amit,


          We decided to build out a workbook and set it as the default landing page for everyone. It was easier (for us) to do the customizations in Tableau Desktop instead of needing to update the .gz, .js, and .css files.


          We also use the PostGres Repository to build out a Search function for the different reports as well as other indicators.


          Just our 2 cents.



          1 of 1 people found this helpful
          • 2. Re: Tableau Server Landing Page - Customization
            Amit Kalia

            Thanks for sharing the info Andrew, But this is not gonna work in my case as here, all different users would not like the same landing page.



            Thank You


            • 3. Re: Tableau Server Landing Page - Customization
              Toby Erkson

              Andrew Bickert , awesome work!   Brilliant!  That is sooooo much easier!

              • 4. Re: Tableau Server Landing Page - Customization
                Toby Erkson

                Amit Kalia, having a different TS landing page for every one isn't going to be simple nor easily maintainable as versions roll out.  Tableau is know to change things up suddenly, so what worked in the last version suddenly doesn't work at all in the next version.  Andrew's work-around is relatively simple and maintainable


                Which leads me to ask:  You asked for a custom landing page for TS but you didn't say you wanted it to be different for everyone so you'll need to provide specifics of what you want.  However, know that it won't be easy the more changes you want and you will be totally on your own if something breaks as Tableau does not support custom changes to their software.

                • 5. Re: Tableau Server Landing Page - Customization
                  Amit Kalia

                  Thanks Toby, I know this is not easy but trying to figure out as if color can be changed then why not font play. Lets see if someone else has any suggestions on this.


                  For the discussion post: Thanks for feedback, I'll try to be more precise.




                  Thank You


                  • 6. Re: Tableau Server Landing Page - Customization
                    Mederick Bossan

                    Hi Andrew,


                    Would you mind share your logic to build the "Search..." bar on your workbook ?

                    How is the result display ?


                    Thank you,



                    • 7. Re: Tableau Server Landing Page - Customization
                      Andrew Bickert

                      Hi Mederick Bossan,


                      We utilize a parameter called "Text Parameter" for the search bar. I also built out a "Combined Search String" that takes the different components of workbooks (Title, project, workbook, view, tag, description, etc.) and combines them into a Pipe Delimitated string. I then use a whole bunch of Find and Replace statements to iterate through the Text Parameter and finds matching values in the Combined Search String. If the value comes back true, we then display the title. The End Result looks like this if I search for ADC (Average Daily Census). ADC is not in the title but the description of the workbooks contains adc so the "Combined Search String"string picked it up.



                      Here is the calculation for the Search Control: The first part of the logic checks to see if the text parameter is blank or contains "Search...", if it is, it will display null and we then set the search controller to exclude null. That way if there is nothing typed into the field, we don't see any values.



                      //This logic looks to see if there is anything in the Text Parameter, if there is not, we set the value and exclude it on our filter
                      IF (([Text_Parameter]="")=TRUE or [Text_Parameter] = "Text to Search...") then

                      //We need to iterate through the text parameter to see if there are multiple search terms
                      if(FIND(REPLACE([Text_Parameter]," ","|"),"|",1)>0) then

                      IF(FIND(REPLACE(RIGHT([Text_Parameter],LEN([Text_Parameter])-FIND([Text_Parameter]," ",1))," ","|"),"|",1)>0) then


                      //looks for search strings if there are two terms
                              (if(FIND(UPPER([Combined Search String]),UPPER(LEFT([Text_Parameter],FIND([Text_Parameter]," ",1)-1)),1)>0)

                      //looks for search strings if there are three terms
                                  (FIND(UPPER([Combined Search String]),UPPER(LEFT(RIGHT([Text_Parameter],LEN([Text_Parameter])-FIND([Text_Parameter]," ",1)),
                      FIND(RIGHT([Text_Parameter],LEN([Text_Parameter])-FIND([Text_Parameter]," ",1))," ",1)-1)),1)>0)
                      //looks for search strings if there are four terms
                                  (FIND(UPPER([Combined Search String]),UPPER(RIGHT(RIGHT([Text_Parameter],LEN([Text_Parameter])-FIND([Text_Parameter]," ",1)),
                      LEN(RIGHT([Text_Parameter],LEN([Text_Parameter])-FIND([Text_Parameter]," ",1)))-FIND(RIGHT([Text_Parameter],LEN([Text_Parameter])-FIND([Text_Parameter]," ",1))," ",1))),1)>0) then [title]



                          (if(FIND(UPPER([Combined Search String]),UPPER(LEFT
                          ([Text_Parameter],FIND([Text_Parameter]," ",1)-1)),1)>0)


                          (FIND(UPPER([Combined Search String]),UPPER(RIGHT
                          ([Text_Parameter],LEN([Text_Parameter])-FIND([Text_Parameter]," ",1))),1)>0)
                          then [title]
                      //if they are searching for more than four terms they are crazy and I am ignoring them

                      //single string
                      if(FIND(UPPER([Combined Search String]),UPPER([Text_Parameter]),1)>0) then [title]





                      This is the calculation for the combined search string with the pipe delimitations:


                      [Project]+"|"+[Workbook]+"|"+[View Title] +"|"+

                      (IF ([name (tags)]>"") then [name (tags)] else '' END) +"|"+

                      (if([description (workbooks)]>"") then [description (workbooks)] else '' END)




                      The reason for the replace is so that we can utilize multiple search criteria. ie, if I type in ADC and surgery, I want to see workbooks that contain ADC or surgery.


                      Hope this helps; I can try making the workbook sharable I just need to modify it a bit before putting it out here. We are currently utilizing a lot of calculations that reference our server and internal networks for the dashboard actions and they contain sensitive data so I would need to remove them.


                      3 of 3 people found this helpful
                      • 8. Re: Tableau Server Landing Page - Customization
                        Mederick Bossan

                        Thanks a lot Andrew, I am sure it would be beneficial for the community if you could share the workbook !

                        I can't wait, I am already on it :-)


                        EDIT: working like a charm, I just changed the OR by AND to reduce the search when they add more words in the search.


                        Any issue on the tags for content type Workbook, for me there is no tag in the repository workgroup taggings table but I have tags on the UI for some workbook ?!

                        • 9. Re: Tableau Server Landing Page - Customization
                          Donna Coles

                          Hi Mederick


                          This is an older thread by Mark Jackson regarding custom landing pages which I've used to build mine some time ago, but this shared the packaged workbook and from a functioanlity point of view, looks similar to some of the stuff Andrew is possibly doing above.


                          Make your own custom Tableau Server landing page


                          Just thought it worth a shout out and there might be some queries in there that may help you out.


                          FYI My version of the landing page that I originally builtin v9 based on the postgres connections in that thread still appear to be working in v2018.3




                          • 10. Re: Tableau Server Landing Page - Customization
                            Andrew Bickert

                            I completely agree with Donna, Mark's landing page is the original I used to make ours. It has some great functionality as well and will be a great starting point for you.