Filter parameters in live connection are ignored during PDF or CSV generation

Đang mở
#1,438 7 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
50/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
python
Lĩnh vực
api

Hướng nghiên cứu

Start by reproducing the issue with the provided Python snippet against a workbook using both Impala extract and Oracle live connections. Compare PDF or CSV output when the extract and live-connection filters are supplied through PDFRequestOptions; done means all specified filters affect the generated file. Check the seven existing comments for additional reproduction details before choosing an implementation path.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

help wanted needs investigation Server-Side Enhancement

Describe the bug
Our workbooks contain data sources in extract mode for performance optimization. However, some data sources that are required for annotating the data need to remain in live connection mode to enhance the user experience. When we generate a pdf or csv from a view using the TSC package, all parameters in the extract are considered by the code, but the filters specific to selecting data in the live connection are ignored.

Versions
Details of your environment, including:

  • REST API version: 3.21
  • Python version: 3.9
  • TSC library version: 0.31

To Reproduce
Steps to reproduce the behavior. Please include a code snippet where possible.
We have a workbook with Impala connection (Extract) and oracle connection (Live connection).

Python code:

import tableauserverclient as TSC

SERVER_URL = 'your_server_url'
TOKEN_NAME = 'your_token_name'
TOKEN_VALUE = 'your_token_value'
SITE_NAME = 'your_site_name'
VIEW_NAME = 'your_view_name'
WORKBOOK_ID= 'your_workbook_id'

# initiate server connection 
server = TSC.Server(SERVER_URL, use_server_version=True)

# Use Personal Access Token for authentication
tableau_auth = TSC.PersonalAccessTokenAuth(token_name=TOKEN_NAME, personal_access_token=TOKEN_VALUE,
                                                site_id=SITE_NAME)
server.add_http_options({'verify': False})
server.version = '3.21'
server.auth.sign_in(tableau_auth)

# get workbook object 
workbook = server.workbooks.get_by_id(WORKBOOK_ID)

# populate view and specify filter parameters on the worksheet
server.workbooks.populate_views(workbook)
# Find the specific view by name
 view = next((v for v in workbook.views if v.name == VIEW_NAME), None)
req = TSC.PDFRequestOptions(maxage=-1, page_type='unspecified', orientation='landscape', viz_width=1200,
                                     viz_height=1000)
req.vf('country', 'Germany')  # parameter in extract
req.vf('company', 'abc')  # parameter in extract
req.vf('selected', 1)   # parameter in live connection

# populate pdf file
server.views.populate_pdf(view, req_options=req)

# write pdf file
output_file = "test.pdf"
 with open(output_file, 'wb') as file:
         file.write(view.pdf)

Results
What are the results or error messages received?
The PDF generated with the above code produces a report that ignores the "selected" parameter. The expected behavior is that the PDF should be generated considering all specified parameters, including those associated with the live connection.

NOTE: Be careful not to post user names, passwords, auth tokens or any other private or sensitive information.

Ngôn ngữ chính
Python
Star
716
Fork
446
Merge trung bình
8 ngày 8 giờ
Pull request đã merge (30 ngày)
2

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của tableau/server-client-python

Tất cả issue của tableau/server-client-python

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.