twb 5.2.5 → 5.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/bin/twb.rb +1 -0
  3. data/lib/twb.rb +1 -1
  4. data/lib/twb/{twbtest.rb → TwbTest.rb} +0 -0
  5. data/lib/twb/analysis/{annotatedfieldscsvemitter.rb → AnnotatedFieldsCSVEmitter.rb} +0 -0
  6. data/lib/twb/analysis/{calculatedfields/csvemitter.rb → CalculatedFields/CSVEmitter.rb} +0 -0
  7. data/lib/twb/analysis/{calculatedfields/calculatedfieldsanalyzer.rb → CalculatedFields/CalculatedFieldsAnalyzer.rb} +0 -0
  8. data/lib/twb/analysis/{calculatedfields/markdownemitter.rb → CalculatedFields/MarkdownEmitter.rb} +0 -0
  9. data/lib/twb/analysis/{calculatedfields → CalculatedFields}/dotanalyzer.rb +0 -0
  10. data/lib/twb/analysis/{calculatedfields → CalculatedFields}/fieldsaliasesanalyzer.rb +0 -0
  11. data/lib/twb/analysis/{calculatedfields → CalculatedFields}/groupfieldsanalyzer.rb +0 -0
  12. data/lib/twb/analysis/{calculatedfields → CalculatedFields}/t.rb +0 -0
  13. data/lib/twb/analysis/{datasources/datasourcefieldscsvemitter.rb → DataSources/DataSourceFieldsCSVEmitter.rb} +0 -0
  14. data/lib/twb/analysis/{datasources/datasourcetablefieldscsvemitter.rb → DataSources/DataSourceTableFieldsCSVEmitter.rb} +0 -0
  15. data/lib/twb/analysis/{datasources → DataSources}/categoricalcolorcodinganalyzer.rb +0 -0
  16. data/lib/twb/analysis/{datasources → DataSources}/datasourcefieldsanalyzer.rb +0 -0
  17. data/lib/twb/analysis/{datasources → DataSources}/datasourcefilesanalyzer.rb +0 -0
  18. data/lib/twb/analysis/{datasources → DataSources}/datasourceoriginsanalyzer.rb +0 -0
  19. data/lib/twb/analysis/{datasources → DataSources}/datasourcesenumerator.rb +0 -0
  20. data/lib/twb/analysis/{datasources → DataSources}/datasourceslocationsanalyzer.rb +0 -0
  21. data/lib/twb/analysis/{datasources → DataSources}/datasourcetablefieldsanalyzer.rb +0 -0
  22. data/lib/twb/analysis/{datasources → DataSources}/extractsanalyzer.rb +0 -0
  23. data/lib/twb/analysis/{datasources → DataSources}/fieldsaliasesanalyzer.rb +0 -0
  24. data/lib/twb/analysis/{datasources → DataSources}/googlesheetdatasourcesanalyzer.rb +0 -0
  25. data/lib/twb/analysis/{datasources → DataSources}/parametersanalyzer.rb +0 -0
  26. data/lib/twb/analysis/{documentedfieldscsvemitter.rb → DocumentedFieldsCSVEmitter.rb} +0 -0
  27. data/lib/twb/analysis/{documentedfieldsmarkdownemitter.rb → DocumentedFieldsMarkdownEmitter.rb} +0 -0
  28. data/lib/twb/analysis/{sheets/worksheetdatastructurecsvemitter.rb → Sheets/WorksheetDataStructureCSVEmitter.rb} +0 -0
  29. data/lib/twb/analysis/{sheets → Sheets}/analyzedashboardsheets.rb +0 -0
  30. data/lib/twb/analysis/{sheets → Sheets}/dashboardsummarizer.rb +0 -0
  31. data/lib/twb/analysis/{sheets → Sheets}/dashsheetsanalyzer.rb +0 -0
  32. data/lib/twb/analysis/{sheets → Sheets}/sheetfieldsanalyzer.rb +0 -0
  33. data/lib/twb/analysis/{sheets → Sheets}/sheetfiltersanalyzer.rb +0 -0
  34. data/lib/twb/analysis/{sheets → Sheets}/sheetfiltersanalyzera.rb +0 -0
  35. data/lib/twb/analysis/{sheets → Sheets}/sheetsintooltipanalyzer.rb +0 -0
  36. data/lib/twb/analysis/{sheets → Sheets}/sheetsourcesanalyzer.rb +0 -0
  37. data/lib/twb/analysis/{sheets → Sheets}/worksheetsummarizer.rb +0 -0
  38. data/lib/twb/columnfield.rb +64 -23
  39. data/lib/twb/countNodes.rb +98 -0
  40. data/lib/twb/datasource.rb +16 -4
  41. data/lib/twb/{finddsfields.rb → findDSFields.rb} +0 -0
  42. data/lib/twb/{identifyfields.rb → identifyFields.rb} +0 -0
  43. data/lib/twb/util/{dotfilerenderer.rb → dotFileRenderer.rb} +0 -0
  44. data/lib/twb/util/{ftppublisher.rb → ftpPublisher.rb} +0 -0
  45. data/lib/twb/util/{joinutilities.rb → joinUtilities.rb} +0 -0
  46. data/lib/twb/util/{twbdashsheetdatadotbuilder.rb → twbDashSheetDataDotBuilder.rb} +0 -0
  47. data/lib/twb/util/{twbdashsheetdatadotrenderer.rb → twbDashSheetDataDotRenderer.rb} +0 -0
  48. data/lib/twb/util/{twbdashessheetdatadotbuilder.rb → twbDashesSheetDataDotBuilder.rb} +0 -0
  49. metadata +53 -52
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 237d9d602af5e7c253e3c0df732483ecacb58d7453f88ae2037251be7ae56b52
4
- data.tar.gz: 84da2fc81295bf1a61e6699907cf78e404b7b2f8fa6c3ce5149388608547d818
3
+ metadata.gz: ccd5e3f60908b3588d6e16b24932760d10c7f529cee28c5b8c57cc6b536536e1
4
+ data.tar.gz: f11f10dacb407baa8ccad990d6ed1095970603f6863ceab276a85afd69b555ee
5
5
  SHA512:
6
- metadata.gz: f940edb531e4a001aa55ffeec2de8df038f7c14a34eca5eb23780cc12da1c4c7876fe61d3e4edb0c2640ee9e653dcd67073040689b39edcd424184182c6f9334
7
- data.tar.gz: e76e453f09bf238643a8b1f12cb93390d0068450e520b7cdd3711d2cf9b9aaa217771081280d0b7ad8ad2499fdf8aa46fabfaf6059360ef1b67fd63a5e86347d
6
+ metadata.gz: 690986db75b5487436bc403e941cf9a5ba76e1cd30a067ed7ac9e19bfeef5abd2824373748263a4129af423039e2d0bb1e30fd505c2b98c23830b6ef0fa830a9
7
+ data.tar.gz: 797b79b25e06eddf021e66c81ad0393bee4c8adf417867b720884a9cde512affe0f0319dd145b534e591b8fec9f4dd4b82453dd377ce65268d36fc8a8ce70f10
data/bin/twb.rb ADDED
@@ -0,0 +1 @@
1
+ puts "\n TWB gem here. \n"
data/lib/twb.rb CHANGED
@@ -81,5 +81,5 @@ require_relative 'twb/analysis/sheets/sheetsintooltipanalyzer'
81
81
  # Represents Tableau Workbooks, their contents, and classes that analyze and manipulate them.
82
82
  #
83
83
  module Twb
84
- VERSION = '5.2.5'
84
+ VERSION = '5.2.6'
85
85
  end
File without changes
@@ -75,22 +75,24 @@ module Twb
75
75
  @name = load('name').sub(/^\[/,'').sub(/\]$/,'')
76
76
  @caption = load 'caption'
77
77
  @uiname = @caption.nil? ? @name : @caption
78
- @dataType = load 'datatype'
79
- @userDataType = load 'user-datatype'
80
- @defaultFormat = load 'default-format'
81
- @paramDomainType = load 'param-domain-type'
82
- @type = load 'type'
83
- @value = load 'value'
84
- @alias = load 'alias'
85
- @semanticRole = load 'semantic-role'
86
- @aggregation = load 'aggregation'
87
- @autoColumn = load 'auto-column'
88
- @datatypeCustomized = load 'datatype-customized'
78
+ #--
79
+ loadAttributes @node
80
+ # @dataType = load 'datatype'
81
+ # @userDataType = load 'user-datatype'
82
+ # @defaultFormat = load 'default-format'
83
+ # @paramDomainType = load 'param-domain-type'
84
+ # @type = load 'type'
85
+ # @value = load 'value'
86
+ # @alias = load 'alias'
87
+ # @semanticRole = load 'semantic-role'
88
+ # @aggregation = load 'aggregation'
89
+ # @autoColumn = load 'auto-column'
90
+ # @datatypeCustomized = load 'datatype-customized'
89
91
  end
90
92
 
91
93
  def id
92
94
  @id ||= @id = @name.hash
93
- end
95
+ end
94
96
 
95
97
  def load nodeName
96
98
  attr = @node.attribute(nodeName)
@@ -98,17 +100,56 @@ module Twb
98
100
  return val
99
101
  end
100
102
 
101
- def role
102
- @role ||= loadRole
103
+ def loadAttributes node
104
+ # puts "augmenting with node:#{node}"
105
+ @node = node
106
+ if node.has_attribute?('aggregation') then @aggregation = node['aggregation'] end
107
+ if node.has_attribute?('alias') then @alias = node['alias'] end
108
+ if node.has_attribute?('auto-column') then @autoColumn = node['auto-column'] end
109
+ if node.has_attribute?('datatype') then @dataType = node['datatype'] end
110
+ if node.has_attribute?('datatype-customized') then @datatypeCustomized = node['datatype-customized'] end
111
+ if node.has_attribute?('default-format') then @defaultFormat = node['default-format'] end
112
+ if node.has_attribute?('param-domain-type') then @paramDomainType = node['param-domain-type'] end
113
+ if node.has_attribute?('role') then @role = node['role'] end
114
+ if node.has_attribute?('semantic-role') then @semanticRole = node['semantic-role'] end
115
+ if node.has_attribute?('type') then @type = node['type'] end
116
+ if node.has_attribute?('user-datatype') then @userDataType = node['user-datatype'] end
117
+ if node.has_attribute?('value') then @value = node['value'] end
118
+ # loadAttr @aggregation, 'aggregation'
119
+ # loadAttr @alias, 'alias'
120
+ # loadAttr @autoColumn, 'auto-column'
121
+ # loadAttr @dataType, 'datatype'
122
+ # loadAttr @datatypeCustomized, 'datatype-customized'
123
+ # loadAttr @defaultFormat, 'default-format'
124
+ # loadAttr @paramDomainType, 'param-domain-type'
125
+ # loadAttr @role, 'role'
126
+ # loadAttr @semanticRole, 'semantic-role'
127
+ # loadAttr @type, 'type'
128
+ # loadAttr @userDataType, 'user-datatype'
129
+ # loadAttr @value, 'value'
103
130
  end
104
131
 
105
- def loadRole
106
- role = @node['role']
107
- if role.nil?
108
- role = @@dataTypeRoleMap[@dataType].nil? ? @dataType : @@dataTypeRoleMap[@dataType]
109
- end
110
- return role
111
- end
132
+ # def loadAttr property, attribute
133
+ # # puts " - def loadAttr attr:#{attribute}: prop:#{property}:"
134
+ # if @node.has_attribute? attribute
135
+ # # puts " - has"
136
+ # property = @node[attribute]
137
+ # # else
138
+ # # puts " - has not"
139
+ # # end
140
+ # end
141
+
142
+ # def role
143
+ # @role ||= loadRole
144
+ # end
145
+
146
+ # def loadRole
147
+ # role = @node['role']
148
+ # if role.nil?
149
+ # role = @@dataTypeRoleMap[@dataType].nil? ? @dataType : @@dataTypeRoleMap[@dataType]
150
+ # end
151
+ # return role
152
+ # end
112
153
 
113
154
  def calcField
114
155
  @calcField ||= loadCalcField
@@ -211,7 +252,7 @@ module Twb
211
252
  end
212
253
 
213
254
  def loadProperties
214
- @properties= {}
255
+ @properties = {} if @properties.nil?
215
256
  @node.attributes.each do |name,attr|
216
257
  @properties[name] = attr.value
217
258
  end
@@ -220,7 +261,7 @@ module Twb
220
261
  end
221
262
 
222
263
  def to_s
223
- @name
264
+ "n:#{@name}: uin:#{uiname}: "
224
265
  end
225
266
 
226
267
  def <=>(other)
@@ -0,0 +1,98 @@
1
+ require 'nokogiri'
2
+ require 'csv'
3
+ require 'twb'
4
+
5
+ def init
6
+ system 'cls'
7
+ $pFile = File.open('sqlFromTwbDc.txt','w')
8
+
9
+ sqiCSV = 'TWBFieldsByType.csv'
10
+ $fieldsCSV = CSV.open(sqiCSV, 'w')
11
+ $fieldsCSV << [
12
+ 'TWB',
13
+ 'Data Connection - UI',
14
+ 'Field Name',
15
+ 'Field Type',
16
+ ]
17
+ $path = if ARGV.empty? then '**/*.twb' else ARGV[0] end
18
+ emit " "
19
+ emit " Generating SQL Create Table code for Tableau Workbook Data Connections (TWDCs)."
20
+ emit " Each TWDC will have it's own *.sql file containing the SQL code.\n "
21
+ emit " Looking for Workbooks matching: '#{$path}' - from: #{ARGV[0]}\n\n "
22
+ end
23
+
24
+ def method_name
25
+ datasources = {}
26
+ dataSourcesNode = doc.at_xpath('//workbook/datasources')
27
+ dataSourcesNodes = doc.xpath('//workbook/datasources/datasource').to_a
28
+ puts " dsn: #{dataSourcesNodes}"
29
+ datasourceNodes.each do |node|
30
+ datasource = Twb::DataSource.new(node)
31
+ datasources[datasource.name] = datasource
32
+ end
33
+ end
34
+
35
+ $localEmit = true
36
+ def emit stuff
37
+ $pFile.puts stuff
38
+ puts stuff if $localEmit
39
+ end
40
+
41
+ $paths = {
42
+ 'Relation Columns' => './connection/relation/columns/column',
43
+ 'Metadata Records' => './connection/metadata-records/metadata-record',
44
+ 'Columns' => './column',
45
+ }
46
+
47
+ def proc file
48
+ emit "\n == #{file}"
49
+ end
50
+
51
+ def process file
52
+ emit "\n == #{file}"
53
+ doc = Nokogiri::XML(open(file))
54
+ dataSourcesNodes = doc.xpath('//workbook/datasources/datasource')
55
+ dataSourcesNodes.each do |ds|
56
+ emit "\n dc: #{ds.attribute('caption')}"
57
+ emit " dn: #{ds.attribute('name')}\n ---"
58
+ typeCounts = {}
59
+ $paths.each do |type, path|
60
+ nodes = ds.xpath(path).to_a
61
+ # emit " : %3i %-17s %-s" % [nodes.size, type, path]
62
+ typeCnt = nodes.size
63
+ nodes.each do |n|
64
+ $fieldsCSV << [file,ds.attribute('name'),n.attribute('name'),type]
65
+ end
66
+ if type == 'Columns' then
67
+ calcCnt = 0
68
+ nodes.each do |n|
69
+ calc = n.xpath('./calculation')
70
+ # emit " c: #{calc.size} "
71
+ calcCnt += calc.size
72
+ end
73
+ # emit ' ---'
74
+ # emit " c#: %3i " % [calcCnt]
75
+ # emit " !c#: %3i " % [nodes.size - calcCnt]
76
+ typeCounts['Columns'] = nodes.size
77
+ typeCounts['Columns - calc'] = calcCnt
78
+ typeCounts['Columns - not calc'] = nodes.size - calcCnt
79
+ else
80
+ typeCounts[type] = typeCnt
81
+ end
82
+ end
83
+ # emit ' ---'
84
+ typeCounts.each do |t,c|
85
+ emit " tc: %3i %-s" % [c, t]
86
+ end
87
+ end
88
+ end
89
+
90
+ init
91
+
92
+ $paths.each do |path|
93
+ emit " p: #{path}"
94
+ end
95
+
96
+ Dir.glob($path) {|twb| process twb }
97
+
98
+ emit "\n\n== Done ==\n "
@@ -255,11 +255,23 @@ module Twb
255
255
  @columnFieldsMap = {}
256
256
  nodes = @node.xpath('.//column')
257
257
  nodes.each do |n|
258
- field = Twb::ColumnField.new n, self
259
- @columnFields << field
260
- @columnFieldsMap[field.uiname] = field
261
- @columnFieldsMap[field.name] = field
258
+ # puts " "
259
+ # puts @columnFieldsMap.keys.inspect
260
+ name = n.attribute('name').text.sub(/^\[/,'').sub(/\]$/,'')
261
+ loaded = @columnFieldsMap.has_key? name
262
+ if loaded
263
+ # puts "LOADED"
264
+ field = @columnFieldsMap[name]
265
+ # puts "#{field.class}"
266
+ field.loadAttributes(n)
267
+ else
268
+ field = Twb::ColumnField.new n, self
269
+ @columnFieldsMap[field.uiname] = field
270
+ @columnFieldsMap[field.name] = field
271
+ end
272
+ # puts "name:#{name}: \t nn:#{field.name}:\t loaded?:#{loaded} node:#{n}:"
262
273
  end
274
+ @columnFields = @columnFieldsMap.values
263
275
  return @columnFields
264
276
  end
265
277
 
File without changes
File without changes
File without changes
File without changes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twb
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.2.5
4
+ version: 5.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Gerrard
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-17 00:00:00.000000000 Z
11
+ date: 2021-04-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: creek
@@ -34,22 +34,22 @@ dependencies:
34
34
  name: kramdown
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '1.17'
40
37
  - - ">="
41
38
  - !ruby/object:Gem::Version
42
39
  version: 1.17.0
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '1.17'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - "~>"
48
- - !ruby/object:Gem::Version
49
- version: '1.17'
50
47
  - - ">="
51
48
  - !ruby/object:Gem::Version
52
49
  version: 1.17.0
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '1.17'
53
53
  description: A sollection of Ruby classes designed for accessing and recording information
54
54
  about, and for manipulating, Tableau Workbooks and their contents.
55
55
  email: Chris@Gerrard.net
@@ -57,48 +57,51 @@ executables: []
57
57
  extensions: []
58
58
  extra_rdoc_files: []
59
59
  files:
60
+ - bin/twb.rb
60
61
  - lib/t.rb
61
62
  - lib/tfl/Flow.rb
62
63
  - lib/twb.rb
64
+ - lib/twb/TwbTest.rb
63
65
  - lib/twb/action.rb
64
- - lib/twb/analysis/annotatedfieldscsvemitter.rb
65
- - lib/twb/analysis/calculatedfields/calculatedfieldsanalyzer.rb
66
- - lib/twb/analysis/calculatedfields/csvemitter.rb
67
- - lib/twb/analysis/calculatedfields/dotanalyzer.rb
68
- - lib/twb/analysis/calculatedfields/fieldsaliasesanalyzer.rb
69
- - lib/twb/analysis/calculatedfields/groupfieldsanalyzer.rb
70
- - lib/twb/analysis/calculatedfields/markdownemitter.rb
71
- - lib/twb/analysis/calculatedfields/t.rb
72
- - lib/twb/analysis/datasources/categoricalcolorcodinganalyzer.rb
73
- - lib/twb/analysis/datasources/datasourcefieldsanalyzer.rb
74
- - lib/twb/analysis/datasources/datasourcefieldscsvemitter.rb
75
- - lib/twb/analysis/datasources/datasourcefilesanalyzer.rb
76
- - lib/twb/analysis/datasources/datasourceoriginsanalyzer.rb
77
- - lib/twb/analysis/datasources/datasourcesenumerator.rb
78
- - lib/twb/analysis/datasources/datasourceslocationsanalyzer.rb
79
- - lib/twb/analysis/datasources/datasourcetablefieldsanalyzer.rb
80
- - lib/twb/analysis/datasources/datasourcetablefieldscsvemitter.rb
81
- - lib/twb/analysis/datasources/extractsanalyzer.rb
82
- - lib/twb/analysis/datasources/fieldsaliasesanalyzer.rb
83
- - lib/twb/analysis/datasources/googlesheetdatasourcesanalyzer.rb
84
- - lib/twb/analysis/datasources/parametersanalyzer.rb
85
- - lib/twb/analysis/documentedfieldscsvemitter.rb
86
- - lib/twb/analysis/documentedfieldsmarkdownemitter.rb
87
- - lib/twb/analysis/sheets/analyzedashboardsheets.rb
88
- - lib/twb/analysis/sheets/dashboardsummarizer.rb
89
- - lib/twb/analysis/sheets/dashsheetsanalyzer.rb
90
- - lib/twb/analysis/sheets/sheetfieldsanalyzer.rb
91
- - lib/twb/analysis/sheets/sheetfiltersanalyzer.rb
92
- - lib/twb/analysis/sheets/sheetfiltersanalyzera.rb
93
- - lib/twb/analysis/sheets/sheetsintooltipanalyzer.rb
94
- - lib/twb/analysis/sheets/sheetsourcesanalyzer.rb
95
- - lib/twb/analysis/sheets/worksheetdatastructurecsvemitter.rb
96
- - lib/twb/analysis/sheets/worksheetsummarizer.rb
66
+ - lib/twb/analysis/AnnotatedFieldsCSVEmitter.rb
67
+ - lib/twb/analysis/CalculatedFields/CSVEmitter.rb
68
+ - lib/twb/analysis/CalculatedFields/CalculatedFieldsAnalyzer.rb
69
+ - lib/twb/analysis/CalculatedFields/MarkdownEmitter.rb
70
+ - lib/twb/analysis/CalculatedFields/dotanalyzer.rb
71
+ - lib/twb/analysis/CalculatedFields/fieldsaliasesanalyzer.rb
72
+ - lib/twb/analysis/CalculatedFields/groupfieldsanalyzer.rb
73
+ - lib/twb/analysis/CalculatedFields/t.rb
74
+ - lib/twb/analysis/DataSources/DataSourceFieldsCSVEmitter.rb
75
+ - lib/twb/analysis/DataSources/DataSourceTableFieldsCSVEmitter.rb
76
+ - lib/twb/analysis/DataSources/categoricalcolorcodinganalyzer.rb
77
+ - lib/twb/analysis/DataSources/datasourcefieldsanalyzer.rb
78
+ - lib/twb/analysis/DataSources/datasourcefilesanalyzer.rb
79
+ - lib/twb/analysis/DataSources/datasourceoriginsanalyzer.rb
80
+ - lib/twb/analysis/DataSources/datasourcesenumerator.rb
81
+ - lib/twb/analysis/DataSources/datasourceslocationsanalyzer.rb
82
+ - lib/twb/analysis/DataSources/datasourcetablefieldsanalyzer.rb
83
+ - lib/twb/analysis/DataSources/extractsanalyzer.rb
84
+ - lib/twb/analysis/DataSources/fieldsaliasesanalyzer.rb
85
+ - lib/twb/analysis/DataSources/googlesheetdatasourcesanalyzer.rb
86
+ - lib/twb/analysis/DataSources/parametersanalyzer.rb
87
+ - lib/twb/analysis/DocumentedFieldsCSVEmitter.rb
88
+ - lib/twb/analysis/DocumentedFieldsMarkdownEmitter.rb
89
+ - lib/twb/analysis/Sheets/WorksheetDataStructureCSVEmitter.rb
90
+ - lib/twb/analysis/Sheets/analyzedashboardsheets.rb
91
+ - lib/twb/analysis/Sheets/dashboardsummarizer.rb
92
+ - lib/twb/analysis/Sheets/dashsheetsanalyzer.rb
93
+ - lib/twb/analysis/Sheets/sheetfieldsanalyzer.rb
94
+ - lib/twb/analysis/Sheets/sheetfiltersanalyzer.rb
95
+ - lib/twb/analysis/Sheets/sheetfiltersanalyzera.rb
96
+ - lib/twb/analysis/Sheets/sheetsintooltipanalyzer.rb
97
+ - lib/twb/analysis/Sheets/sheetsourcesanalyzer.rb
98
+ - lib/twb/analysis/Sheets/worksheetsummarizer.rb
97
99
  - lib/twb/analysis/workbooksummaryanalyzer.rb
98
100
  - lib/twb/calculatedfield.rb
99
101
  - lib/twb/codedfield.rb
100
102
  - lib/twb/columnfield.rb
101
103
  - lib/twb/connection.rb
104
+ - lib/twb/countNodes.rb
102
105
  - lib/twb/dashboard.rb
103
106
  - lib/twb/datasource.rb
104
107
  - lib/twb/dbfield.rb
@@ -107,14 +110,14 @@ files:
107
110
  - lib/twb/docdashboardwebvert.rb
108
111
  - lib/twb/field.rb
109
112
  - lib/twb/fieldcalculation.rb
110
- - lib/twb/finddsfields.rb
113
+ - lib/twb/findDSFields.rb
111
114
  - lib/twb/graph.rb
112
115
  - lib/twb/graphedges.rb
113
116
  - lib/twb/graphnode.rb
114
117
  - lib/twb/groupfield.rb
115
118
  - lib/twb/hashtohtml.rb
116
119
  - lib/twb/htmllistcollapsible.rb
117
- - lib/twb/identifyfields.rb
120
+ - lib/twb/identifyFields.rb
118
121
  - lib/twb/listXMLNodePathsAndAttributes.rb
119
122
  - lib/twb/localfield.rb
120
123
  - lib/twb/mappedfield.rb
@@ -127,15 +130,14 @@ files:
127
130
  - lib/twb/tabtool.rb
128
131
  - lib/twb/there.rb
129
132
  - lib/twb/twbcodedfield.rb
130
- - lib/twb/twbtest.rb
131
133
  - lib/twb/util/atomizecsvrecords.rb
132
134
  - lib/twb/util/csvrecordsatomizer.rb
133
135
  - lib/twb/util/cypher.rb
134
136
  - lib/twb/util/cypherpython.rb
135
137
  - lib/twb/util/docprep.rb
136
- - lib/twb/util/dotfilerenderer.rb
138
+ - lib/twb/util/dotFileRenderer.rb
137
139
  - lib/twb/util/fielddomainloader.rb
138
- - lib/twb/util/ftppublisher.rb
140
+ - lib/twb/util/ftpPublisher.rb
139
141
  - lib/twb/util/gml.rb
140
142
  - lib/twb/util/gmledge.rb
141
143
  - lib/twb/util/graph.rb
@@ -144,11 +146,11 @@ files:
144
146
  - lib/twb/util/graphnode.rb
145
147
  - lib/twb/util/hashtohtml.rb
146
148
  - lib/twb/util/htmllistcollapsible.rb
147
- - lib/twb/util/joinutilities.rb
149
+ - lib/twb/util/joinUtilities.rb
148
150
  - lib/twb/util/tabgraph.rb
149
- - lib/twb/util/twbdashessheetdatadotbuilder.rb
150
- - lib/twb/util/twbdashsheetdatadotbuilder.rb
151
- - lib/twb/util/twbdashsheetdatadotrenderer.rb
151
+ - lib/twb/util/twbDashSheetDataDotBuilder.rb
152
+ - lib/twb/util/twbDashSheetDataDotRenderer.rb
153
+ - lib/twb/util/twbDashesSheetDataDotBuilder.rb
152
154
  - lib/twb/util/xraydashboards.rb
153
155
  - lib/twb/window.rb
154
156
  - lib/twb/workbook.rb
@@ -188,8 +190,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
188
190
  - !ruby/object:Gem::Version
189
191
  version: '0'
190
192
  requirements: []
191
- rubyforge_project:
192
- rubygems_version: 2.7.6
193
+ rubygems_version: 3.0.3
193
194
  signing_key:
194
195
  specification_version: 4
195
196
  summary: Classes for accessing Tableau Workbooks and their contents.