server-client-python icon indicating copy to clipboard operation
server-client-python copied to clipboard

We are trying to list our schedules, and this interval cannot be parsed properly.

Open casey-crawford-cfa opened this issue 10 months ago • 0 comments

Tableau Support: https://help.salesforce.com/s/case-view?caseId=500Hx00000kv5y9IAA

Describe the bug A clear and concise description of what the bug is.

We are trying to list our schedules, and this interval cannot be parsed properly.  

Schedule:
Every 7th, 8th, 9th, 10th, 15th day of the month, at 7:00 AM  

Versions Details of your environment, including:

  • Tableau Server version (or note if using Tableau Online)
    • Tableau Server Version: 2022.3.9 (20223.23.0811.1400) 64-bit Linux .
    • Tableau Server Version: 2024.2.2 (20242.24.0807.0327) 64-bit Linux
  • Python version
    • Python 3.12.6 .
  • TSC library version
    • tableauserverclient-0.36

To Reproduce Steps to reproduce the behavior. Please include a code snippet where possible.

tableau_auth = TSC.PersonalAccessTokenAuth(tableau_username, tableau_password)
server = TSC.Server(tableau_server, use_server_version=True)
with server.auth.sign_in(tableau_auth):
   server.schedules.get_by_id('UUID')

Results What are the results or error messages received?

INFO:TSC:Querying a single schedule by id (35d6458e-ddeb-4b95-b941-9ba03c7ead4d)
INFO:TSC:Signed out
Traceback (most recent call last):
  File "/MY_REPO/_develop_schedules.py", line 75, in <module>
    server.schedules.get_by_id('UUID')
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/server/endpoint/endpoint.py", line 274, in wrapper
    return func(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/server/endpoint/schedules_endpoint.py", line 48, in get_by_id
    return ScheduleItem.from_response(server_response.content, self.parent_srv.namespace)[0]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/models/schedule_item.py", line 202, in from_response
    return cls.from_element(parsed_response, ns)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/models/schedule_item.py", line 223, in from_element
    ) = cls._parse_element(schedule_xml, ns)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/models/schedule_item.py", line 316, in _parse_element
    interval_item = ScheduleItem._parse_interval_item(frequency_detail_elem, frequency, ns)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/models/schedule_item.py", line 294, in _parse_interval_item
    return MonthlyInterval(start_time, tuple(interval_values))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/models/interval_item.py", line 222, in __init__
    self.interval = interval_value
    ^^^^^^^^^^^^^
  File "/VENV_PYTHON_PATH/site-packages/tableauserverclient/models/interval_item.py", line 276, in interval
    raise ValueError(error)
ValueError: Invalid monthly interval: Customized Monthly

casey-crawford-cfa avatar Mar 06 '25 20:03 casey-crawford-cfa