본문 바로가기
Tableau 흡수내용

[Tableau(태블로)태블로 대시보드를 각기 다른 필터를 적용할 때의 이미지 다운받기(tabcmd / bat / automatic)

by Mr.noobiest 2022. 7. 7.

 

태블로에서 이미지 다운로드 필터링

태블로는 BI툴이다, 기존의 변경 가능한 엑셀 보고서가 아닌 명확한 데이터를 직접 사용하는 보고서인 것이다.

 

하지만  뭐가 됬든 결국은 보고서이고, 사용가능한 계정의 갯수와 권한으로 인해 다른 사람에게  공유를 할때는 

 

해당 대시보드를 이미지 다운로드를 하거나 PDF로 다운을 받아야만 한다.

 

1,2개의 페이지라면 상관 없겠지만 필터의  갯수가 30개가 넘어간다면? 필터가 여러개라 조합의 갯수로만 따져도 엄청난 갯수가 될것이며, 일일히 필터를 변경할때마다 소모되는 시간도 어마무시할것이고 변경 후 이미지/PDF를 다운받는데도 무의미한 시간이 소모될것이다.

 

 


 

 

Using tabcmd Download dashboard image

 

이러한 작업들을 자동화 하여 미리 적용한 필터의 조합대로 보고서가 자동 수정되고 이를 다운 받을 수 있게 할것이다.

tabcmd를 설치해야하면 설치하는 방법은 별도로 찾으면된다.

 

해당 작업은 간단하게도 텍스트파일을 사용하여 bat 파일로  저장/실행 할것이다.

:: 부분은 주석이므로 사용시 삭제할것

 

 


 

 

 

bat 파일 코드

@echo off
:: 변경되는 필터가 아닌 고정 필터(여기서는 몇 주차인지를 설정하였다)
setlocal
set week=default


:week
set /p week=Enter Week Number:
if %week%==default endlocal & goto week



::실행 결과를 저장할 디렉토리 생성(없으면 만들어지고 있으면 그냥 그대로 사용한다)
mkdir "만들폴더명1 주차:%week%)" "만들폴더명2 주차:%week%"



::Tableau Server에 게시된 대시보드의주소(view주소) / 상세주소까지는 안써줘도 된다. / refresh=yes를 꼭 입력해줄것
set view_url=      특정대시보드주소?:refresh=yes

set view_url2=      특정대시보드주소2?:refresh=yes
set username=   Tableau Server 계정명
set password=    위 계정의 비밀번호

set export_pdf=tabcmd.exe export "%view_url%&매개변수명%%20Country=%%i" --fullpdf --pagelayout landscape --pagesize a4 -f "해당 PDF를 저장할 폴더의 경로명%week%\[%%j]세부 폴더명%week%).pdf"

set export_png=tabcmd.exe export "%view_url%&매개변수명%%20Country=%%i" --png --pagelayout landscape --pagesize a4 -f "해당 png를 저장할 폴더의 경로명%week%\[%%j]세부 폴더명%week%).png"



::위의 코드와 동일하지만 저장되는 이미지/pdf파일의 순서를 정해주기 위한것이다.
set export_png_sort=tabcmd.exe export "%view_url%&매개변수명%%20Country=%%i" --png --pagelayout landscape --pagesize a4 -f "해당 png를 저장할 폴더의 경로명%week%\[%%j]세부 폴더명%week%).png"





:: Tableau Server connect 
tabcmd.exe login -s https://Tableau Server 주소 -u %username% -p %password%



::한번에 여러개의 다른 대시보드도 다운이 가능하다.
tabcmd.exe export "%view_url2%" --png --pagelayout landscape --pagesize a4 -f "저장할 폴더 경로명\파일명.png"



for /f "tokens=1,2,3" %%i in (p_Country.txt) do %export_png_sort%
for /f "tokens=1,2" %%i in (p_Country.txt) do %export_png%
for /f "tokens=1,2" %%i in (p_Country.txt) do %export_pdf%

tabcmd.exe logout
echo Finish !!! 



::여기서 p_Country.txt는 각각의 매개변수에 입력할 값들을 저장한 곳이다.

::token은 아래 텍스트의 몇번째 컬럼인것인지를 표시한것(token1 = Region / token2 = 국가명 / token3= sort를 하기 위한 값 1,2,3....)

Global Global 2
NA NA 3
1.%20US US 4
2.%20Canada CI 5
728x90
반응형