@@ -47,7 +47,7 @@ def main():
47
47
logging .basicConfig (level = logging_level )
48
48
49
49
tableau_auth = TSC .PersonalAccessTokenAuth (args .token_name , args .token_value , site_id = args .site )
50
- server = TSC .Server (args .server , use_server_version = True )
50
+ server = TSC .Server (args .server , use_server_version = True , http_options = { "verify" : False } )
51
51
with server .auth .sign_in (tableau_auth ):
52
52
group_name = "SALES NORTHWEST"
53
53
# Try to create a group named "SALES NORTHWEST"
@@ -57,37 +57,36 @@ def main():
57
57
# Try to create a group named "SALES ROMANIA"
58
58
create_example_group (group_name , server )
59
59
60
- # URL Encode the name of the group that we want to filter on
61
- # i.e. turn spaces into plus signs
62
- filter_group_name = urllib .parse .quote_plus (group_name )
60
+ # we no longer need to encode the space
63
61
options = TSC .RequestOptions ()
64
- options .filter .add (
65
- TSC .Filter (TSC .RequestOptions .Field .Name , TSC .RequestOptions .Operator .Equals , filter_group_name )
66
- )
62
+ options .filter .add (TSC .Filter (TSC .RequestOptions .Field .Name , TSC .RequestOptions .Operator .Equals , group_name ))
67
63
68
64
filtered_groups , _ = server .groups .get (req_options = options )
69
65
# Result can either be a matching group or an empty list
70
66
if filtered_groups :
71
- group_name = filtered_groups .pop (). name
72
- print (group_name )
67
+ group = filtered_groups .pop ()
68
+ print (group )
73
69
else :
74
- error = f"No project named '{ filter_group_name } ' found"
70
+ error = f"No group named '{ group_name } ' found"
75
71
print (error )
76
72
73
+ print ("---" )
74
+
77
75
# Or, try the above with the django style filtering
78
76
try :
79
- group = server .groups .filter (name = filter_group_name )[0 ]
77
+ group = server .groups .filter (name = group_name )[0 ]
78
+ print (group )
80
79
except IndexError :
81
- print (f"No project named '{ filter_group_name } ' found" )
82
- else :
83
- print (group . name )
80
+ print (f"No group named '{ group_name } ' found" )
81
+
82
+ print ("====" )
84
83
85
84
options = TSC .RequestOptions ()
86
85
options .filter .add (
87
86
TSC .Filter (
88
87
TSC .RequestOptions .Field .Name ,
89
88
TSC .RequestOptions .Operator .In ,
90
- ["SALES+ NORTHWEST" , "SALES+ ROMANIA" , "this_group" ],
89
+ ["SALES NORTHWEST" , "SALES ROMANIA" , "this_group" ],
91
90
)
92
91
)
93
92
@@ -98,13 +97,20 @@ def main():
98
97
for group in matching_groups :
99
98
print (group .name )
100
99
100
+ print ("----" )
101
101
# or, try the above with the django style filtering.
102
-
103
- groups = ["SALES NORTHWEST" , "SALES ROMANIA" , "this_group" ]
104
- groups = [urllib .parse .quote_plus (group ) for group in groups ]
105
- for group in server .groups .filter (name__in = groups ).sort ("-name" ):
102
+ all_g = server .groups .all ()
103
+ print (f"Searching locally among { all_g .total_available } groups" )
104
+ for a in all_g :
105
+ print (a )
106
+ groups = [urllib .parse .quote_plus (group ) for group in ["SALES NORTHWEST" , "SALES ROMANIA" , "this_group" ]]
107
+ print (groups )
108
+
109
+ for group in server .groups .filter (name__in = groups ).order_by ("-name" ):
106
110
print (group .name )
107
111
112
+ print ("done" )
113
+
108
114
109
115
if __name__ == "__main__" :
110
116
main ()
0 commit comments