사용자 지정 뷰가 있는 콘텐츠 유지 관리
콘텐츠 작성자는 통합 문서 및 데이터 원본을 업데이트하면 최종 사용자에게 어떤 영향을 미칠 수 있는지 이해하는 것이 중요합니다. 사용자 지정 뷰는 비주얼리제이션 사용 방식을 개별적으로 맞추는 인기 있는 방법이지만 원본 콘텐츠가 변경되면 사용자 지정 뷰가 손상될 수 있습니다. 가능한 경우 사용자 지정 뷰에 영향을 주는 것으로 알려진 변경을 하지 마십시오. 변경해야 하는 경우 이 항목의 뒷부분에 설명된 단계를 따르십시오.
일반적으로 사용자 지정 뷰를 사용하는 것으로 알려진 콘텐츠로 작업할 때 몇 가지 모범 사례가 있습니다.
- 안정적인 콘텐츠에 대한 사용자 지정 뷰만 생성하도록 최종 사용자에게 조언하십시오.
- 프로젝트나 이름 지정 시스템을 사용하여 수정 중인 통합 문서를 식별하고 사용자에게 사용자 지정 뷰를 만들지 않도록 권장하십시오.
- 준비 또는 개발 환경에서 변경 사항을 테스트하십시오. 예상되는 필터, 사용자 동작, 매개 변수 설정 및 기타 사용자 지정을 나타내는 사용자 지정 뷰를 테스트하십시오.
- 사용자 지정 뷰를 손상시킬 수 있는 변경 사항을 게시하기 전에 사용자에게 사전에 알리십시오. (Tableau의 REST API에서 사용자 지정 뷰 메서드를 사용하여(링크가 새 창에서 열림) 통합 문서에 적용된 모든 사용자 지정 뷰 목록을 검색하십시오.)
사용자 지정 뷰에 영향을 미치는 것으로 알려진 변경 사항
사용자 지정 뷰에 미치는 영향을 확인하기 위해 변경 사항을 테스트하는 것이 가장 좋지만 사용자 지정 뷰에 영향을 미치는 것으로 알려진 일부 업데이트를 알려드리겠습니다.
이는 전체 목록은 아니며 안내용으로만 제공됩니다.
통합 문서 변경
- 이름 변경. 통합 문서(또는 사용자 지정 뷰가 연결된 시트)의 이름을 변경하면 사용자 지정 뷰가 손상됩니다.
- 매개 변수. 매개 변수를 추가하거나 제거하면 사용자 지정 뷰가 손상되거나 예상대로 업데이트되지 않을 수 있습니다.
- 원본 콘텐츠에 매개 변수가 추가되면 사용자 지정 뷰가 손상될 수 있습니다.
- 매개 변수 컨트롤이 제거되면 해당 입력을 사용한 계산된 필드는 마지막 값을 유지하며 더 이상 조정할 수 없습니다.
- 필터. 필터를 제거하면 필터 컨트롤이 제거되지만 데이터는 필터링된 상태로 남습니다.
- 일반적으로 원본 콘텐츠에서 필터가 삭제되면 해당 필터를 사용한 사용자 지정 뷰는 계속 작동합니다. 그러나 데이터는 필터 컨트롤 없이 필터링된 상태로 유지됩니다. 이는 사용자가 사용자 지정 뷰에서 필터 선택을 변경할 수 없음을 의미합니다.
- 슬라이더에서 기준 날짜로 필터 컨트롤을 변경해도 예상대로 기준 날짜를 정확하게 반영하도록 필터가 조정되지 않습니다.
- 사용자 지정 뷰를 사용하여 필터 선택을 제어하는 경우 대신 공유된 URL에 필터 내장 매개 변수를 사용하는 것이 좋습니다.
- 시트 숨기기. 시트를 숨김으로 설정하면 나중에 숨김이 해제되더라도 해당 시트의 사용자 지정 뷰가 손상됩니다.
- 다시 게시. 통합 문서를 삭제하고 다시 게시하면 사용자 지정 뷰가 손상됩니다.
데이터 원본 변경
- 데이터 원본 변경. 데이터 원본 바꾸기 기능을 사용하여 데이터 원본을 바꾸거나 내장 데이터 원본을 동일한 데이터 원본의 게시된 복사본으로 바꾸면 사용자 지정 뷰가 손상됩니다.
- 데이터 유형. 사용자 지정 뷰와 관련된 필드의 데이터 유형을 변경하면 사용자 지정 뷰가 손상됩니다.
- 필드 제거. 사용자 지정 뷰의 기반이 되는 필드, 계산, 그룹 또는 집합을 제거하면 사용자 지정 뷰가 손상됩니다.
콘텐츠를 안전하게 업데이트
다음은 기존 사용자 지정 뷰가 손상될 위험을 최소화하는 일련의 모범 사례입니다.
- 통합 문서 편집과 데이터 원본 변경을 별도로 수행합니다.
- 데이터 원본이 바뀐 통합 문서를 다시 게시하지 않습니다.
- 통합 문서 또는 데이터 원본의 로컬 버전을 편집하고 동일한 이름으로 다시 게시합니다.
통합 문서 수정
다음 단계에서는 통합 문서가 별도로 게시된 데이터 원본에 대한 라이브 연결을 사용하고 기존 사용자 지정 뷰가 있다고 가정합니다.
웹 편집으로 통합 문서 수정
웹 편집은 통합 문서를 수정하는 기본 방법입니다. 필요한 경우 Tableau Desktop만 사용하십시오.
- 사용자 지정 뷰를 손상시키는 것으로 알려진 앞서 언급된 항목을 피하면서 브라우저에서 통합 문서를 편집합니다.
- 데이터를 변경해야 하는 경우 지금 변경하지 마십시오. 데이터 원본 수정에 관한 섹션을 참조하십시오.
- 통합 문서를 같은 위치에 같은 이름으로 게시하고 기존 버전을 덮어써서 저장합니다.
Tableau Desktop에서 통합 문서 수정
가능하면 브라우저에서 통합 문서를 수정합니다. 필요한 경우 Tableau Desktop만 사용하십시오.
- 통합 문서의 로컬 버전을 엽니다(필요한 경우 통합 문서를 먼저 다운로드해야 함).
- 사용자 지정 뷰를 손상시키는 것으로 알려진 앞서 언급된 항목을 피하면서 통합 문서를 편집합니다.
- 데이터를 변경해야 하는 경우 지금 변경하지 마십시오. 데이터 원본 수정에 관한 섹션을 참조하십시오.
- 통합 문서를 같은 위치에 같은 이름으로 게시하여 기존 버전을 바꿉니다.
- "게시된 데이터 원본을 사용하도록 통합 문서를 업데이트"하는 옵션을 선택하지 않습니다.
데이터 원본 수정
- 통합 문서를 다운로드하고 데이터 원본의 로컬 복사본을 만들어 Tableau Desktop에서 데이터 원본의 로컬 버전을 엽니다.
- 통합 문서를 다운로드하여 Tableau Desktop에서 엽니다.
- 데이터 원본을 마우스 오른쪽 단추로 클릭하고 "로컬 복사본 만들기"를 선택합니다.
- 새 데이터 원본을 마우스 오른쪽 단추로 클릭하고 "데이터 원본 바꾸기…"를 선택합니다.
- 게시된 데이터 원본에 대한 기존 연결을 새로 만든 로컬 복사본으로 바꿉니다.
참고: 통합 문서에서 로컬 버전을 사용하면 통합 문서에서 직접 데이터 원본 변경 사항을 확인할 수 있으므로 선호되는 방법입니다. 또는 데이터 원본을 다운로드하거나 로컬에 저장된 복사본을 사용할 수 있습니다.
- 사용자 지정 뷰를 손상시키는 것으로 알려진 앞서 언급된 항목을 피하면서 데이터 원본을 편집합니다.
- 데이터 원본을 게시합니다.
- 동일한 이름을 사용하고 기존 데이터 원본을 덮어써서 저장합니다.
- "게시된 데이터 원본을 사용하도록 통합 문서를 업데이트"하는 옵션을 선택하지 않습니다.
- 수정된 데이터 원본으로 통합 문서를 게시하지 않습니다. 통합 문서 콘텐츠를 변경해야 하는 경우 통합 문서 수정에 대한 섹션을 참조하십시오.
손상된 사용자 지정 뷰 조사
참고: 이 섹션에서는 사용자가 XML 및 기본 명령줄 상호 작용에 익숙하다고 가정합니다.
.twb 통합 문서 파일에서 통합 문서의 XML에는 통합 문서 요소에 대한 식별 태그가 포함되어 있습니다. 사용자 지정 뷰가 생성되면 대화형 요소(예: 필터 또는 값 설정, 매개 변수 또는 선택한 마크) 및 해당 값의 스냅샷이 생성됩니다. 사용자 지정 뷰에 액세스하면 Tableau는 사용자 지정 뷰와 함께 저장된 특성 값을 관련 요소 ID에 적용합니다. 요소 ID가 변경되거나 특성 값을 로드할 수 없는 경우 사용자 지정 뷰가 손상됩니다.
변경 전과 후의 .twb를 비교하여 사용자 지정 뷰를 손상시킨 변경 사항을 식별할 수 있습니다.
- 사용자 지정 뷰가 작동할 때 통합 문서의 .twb가 필요합니다(변경하기 전에 콘텐츠 복사본 저장).
- 통합 문서의 또 다른 복사본에서 사용자 지정 뷰를 손상시킬 것으로 생각되는 변경을 수행한 후 다른 .twb로 저장합니다.
- 명령줄에서 다음 명령을 실행합니다(1단계의 파일을 file1.twb에 대입, 2단계의 파일을 file2.twb에 대입).
vdmdiff file1.twb file2.twb
- 파일 간의 변경 사항이 하이라이트됩니다.
변경될 경우 사용자 지정 뷰를 손상시키는 것으로 알려진 일부 ID 또는 특성 값([괄호]로 묶임)은 다음과 같습니다.
<datasources>
<datasource name='[ID]'>
<worksheets>
<worksheet name='[ID]'>
<table>
<view>
<datasource-dependencies datasource='[ID]'>
<column datatype='[Value]' name='[Value]'>
<dashboards>
<dashboard name='[ID]'>