twb 5.2.6 → 5.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/twb.rb +0 -0
- data/lib/t.rb +0 -0
- data/lib/tfl/Flow.rb +0 -0
- data/lib/twb/TwbTest.rb +0 -0
- data/lib/twb/action.rb +0 -0
- data/lib/twb/analysis/AnnotatedFieldsCSVEmitter.rb +1 -1
- data/lib/twb/analysis/CalculatedFields/CSVEmitter.rb +4 -2
- data/lib/twb/analysis/CalculatedFields/CalculatedFieldsAnalyzer.rb +48 -44
- data/lib/twb/analysis/CalculatedFields/MarkdownEmitter.rb +0 -0
- data/lib/twb/analysis/CalculatedFields/dotanalyzer.rb +0 -0
- data/lib/twb/analysis/CalculatedFields/fieldsaliasesanalyzer.rb +0 -0
- data/lib/twb/analysis/CalculatedFields/groupfieldsanalyzer.rb +3 -1
- data/lib/twb/analysis/CalculatedFields/t.rb +0 -0
- data/lib/twb/analysis/DataSources/DataSourceFieldsCSVEmitter.rb +31 -20
- data/lib/twb/analysis/DataSources/DataSourceTableFieldsCSVEmitter.rb +0 -0
- data/lib/twb/analysis/DataSources/categoricalcolorcodinganalyzer.rb +21 -6
- data/lib/twb/analysis/DataSources/datasourcefieldsanalyzer.rb +97 -204
- data/lib/twb/analysis/DataSources/datasourcefilesanalyzer.rb +18 -8
- data/lib/twb/analysis/DataSources/datasourceoriginsanalyzer.rb +16 -2
- data/lib/twb/analysis/DataSources/datasourcesenumerator.rb +28 -28
- data/lib/twb/analysis/DataSources/datasourceslocationsanalyzer.rb +0 -0
- data/lib/twb/analysis/DataSources/datasourcetablefieldsanalyzer.rb +0 -0
- data/lib/twb/analysis/DataSources/extractsanalyzer.rb +19 -66
- data/lib/twb/analysis/DataSources/fieldsaliasesanalyzer.rb +18 -23
- data/lib/twb/analysis/DataSources/googlesheetdatasourcesanalyzer.rb +0 -0
- data/lib/twb/analysis/DataSources/parametersanalyzer.rb +0 -0
- data/lib/twb/analysis/DocumentedFieldsCSVEmitter.rb +1 -1
- data/lib/twb/analysis/DocumentedFieldsMarkdownEmitter.rb +0 -0
- data/lib/twb/analysis/Sheets/WorksheetDataStructureCSVEmitter.rb +0 -0
- data/lib/twb/analysis/Sheets/analyzedashboardsheets.rb +0 -0
- data/lib/twb/analysis/Sheets/dashboardsummarizer.rb +13 -11
- data/lib/twb/analysis/Sheets/dashsheetsanalyzer.rb +16 -12
- data/lib/twb/analysis/Sheets/sheetfieldsanalyzer.rb +25 -16
- data/lib/twb/analysis/Sheets/sheetfiltersanalyzer.rb +48 -19
- data/lib/twb/analysis/Sheets/sheetfiltersanalyzera.rb +19 -19
- data/lib/twb/analysis/Sheets/sheetsintooltipanalyzer.rb +16 -23
- data/lib/twb/analysis/Sheets/sheetsourcesanalyzer.rb +0 -0
- data/lib/twb/analysis/Sheets/worksheetsummarizer.rb +23 -30
- data/lib/twb/analysis/workbooksummaryanalyzer.rb +12 -1
- data/lib/twb/calculatedfield.rb +0 -0
- data/lib/twb/codedfield.rb +0 -0
- data/lib/twb/columnfield.rb +23 -64
- data/lib/twb/connection.rb +0 -0
- data/lib/twb/countNodes.rb +0 -0
- data/lib/twb/dashboard.rb +0 -0
- data/lib/twb/datasource.rb +4 -16
- data/lib/twb/dbfield.rb +0 -0
- data/lib/twb/docdashboard.rb +0 -0
- data/lib/twb/docdashboardimagevert.rb +0 -0
- data/lib/twb/docdashboardwebvert.rb +0 -0
- data/lib/twb/field.rb +0 -0
- data/lib/twb/fieldcalculation.rb +0 -0
- data/lib/twb/findDSFields.rb +0 -0
- data/lib/twb/graph.rb +0 -0
- data/lib/twb/graphedges.rb +0 -0
- data/lib/twb/graphnode.rb +0 -0
- data/lib/twb/groupfield.rb +0 -0
- data/lib/twb/hashtohtml.rb +0 -0
- data/lib/twb/htmllistcollapsible.rb +0 -0
- data/lib/twb/identifyFields.rb +0 -0
- data/lib/twb/listXMLNodePathsAndAttributes.rb +0 -0
- data/lib/twb/localfield.rb +0 -0
- data/lib/twb/mappedfield.rb +0 -0
- data/lib/twb/metadatafield.rb +0 -0
- data/lib/twb/parameter.rb +0 -0
- data/lib/twb/quickfilter.rb +0 -0
- data/lib/twb/storyboard.rb +0 -0
- data/lib/twb/tabclass.rb +1 -1
- data/lib/twb/tabtest.rb +0 -0
- data/lib/twb/tabtool.rb +3 -23
- data/lib/twb/there.rb +0 -0
- data/lib/twb/twbcodedfield.rb +0 -0
- data/lib/twb/util/atomizecsvrecords.rb +1 -1
- data/lib/twb/util/csvrecordsatomizer.rb +0 -0
- data/lib/twb/util/cypher.rb +0 -0
- data/lib/twb/util/cypherpython.rb +0 -0
- data/lib/twb/util/docprep.rb +0 -0
- data/lib/twb/util/dotFileRenderer.rb +0 -0
- data/lib/twb/util/fielddomainloader.rb +0 -0
- data/lib/twb/util/ftpPublisher.rb +0 -0
- data/lib/twb/util/gml.rb +0 -0
- data/lib/twb/util/gmledge.rb +0 -0
- data/lib/twb/util/graph.rb +0 -0
- data/lib/twb/util/graphedge.rb +0 -0
- data/lib/twb/util/graphedges.rb +0 -0
- data/lib/twb/util/graphnode.rb +0 -0
- data/lib/twb/util/hashtohtml.rb +0 -0
- data/lib/twb/util/htmllistcollapsible.rb +0 -0
- data/lib/twb/util/joinUtilities.rb +0 -0
- data/lib/twb/util/tabgraph.rb +0 -0
- data/lib/twb/util/twbDashSheetDataDotBuilder.rb +0 -0
- data/lib/twb/util/twbDashSheetDataDotRenderer.rb +0 -0
- data/lib/twb/util/twbDashesSheetDataDotBuilder.rb +0 -0
- data/lib/twb/util/xraydashboards.rb +0 -0
- data/lib/twb/window.rb +0 -0
- data/lib/twb/workbook.rb +13 -13
- data/lib/twb/worksheet.rb +0 -0
- data/lib/twb.rb +5 -1
- data/t.rb +0 -0
- data/test/fieldAliases.rb +0 -0
- data/test/testDashboardXRay.rb +0 -0
- data/test/testDocDashboard.rb +0 -0
- data/test/testDocDashboardCreate.rb +0 -0
- data/test/testDocDashboardImageVert.rb +0 -0
- data/test/testDocDashboardWebVert.rb +0 -0
- data/test/testDotFileRenderer.rb +0 -0
- data/test/testFieldAliases.rb +0 -0
- data/test/testFieldCalculation.rb +0 -0
- data/test/testFieldDomainLoaded.rb +0 -0
- data/test/testFieldDomainLoader.rb +0 -0
- data/test/testHTMLList.rb +0 -0
- data/test/testTwbDashSheetDataDotBuilder.rb +0 -0
- data/test/testTwbGem.rb +0 -0
- data/test/testTwbWrite.rb +0 -0
- metadata +11 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5c63301e4ed2102bfb1dc8263c66330ca45fea8bede79feefcd199d2e8625fc9
|
|
4
|
+
data.tar.gz: fcda0eece84eb97ee0dc86610c64cb89719eba4228e9c6609b48715fc2d6e472
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e12b541cd7e2db7743f2da2695629fafb9cdc3c0401d4c84d0ac2fe1218016d15ad2aae248225966c075435e7d10c028b1aea6bb460ef54220bfd94a0e340d9f
|
|
7
|
+
data.tar.gz: 937fc66db0cf3406d0f08721afc5dd5452d9c5d5bc324c737add7553b7cb6625a44f09244fa91eeea9a164037961ca03bd91065d756baefc4d21edc578e94f71
|
data/bin/twb.rb
CHANGED
|
File without changes
|
data/lib/t.rb
CHANGED
|
File without changes
|
data/lib/tfl/Flow.rb
CHANGED
|
File without changes
|
data/lib/twb/TwbTest.rb
CHANGED
|
File without changes
|
data/lib/twb/action.rb
CHANGED
|
File without changes
|
|
@@ -29,7 +29,8 @@ module CalculatedFields
|
|
|
29
29
|
@calcFieldsContents = 'Calculated Fields with Formulas'
|
|
30
30
|
@calcFieldsType = 'CalculatedFieldsWithFormulas'
|
|
31
31
|
@calcFieldsHeader = ['Record #',
|
|
32
|
-
'Workbook',
|
|
32
|
+
'Workbook',
|
|
33
|
+
'Workbook Directory',
|
|
33
34
|
'Data Source Name (tech)', 'Data Source Caption', 'Data Source Name',
|
|
34
35
|
'Field Name (tech)', 'Field Caption', 'Field Name',
|
|
35
36
|
'Data Source + Field Name (tech)',
|
|
@@ -43,7 +44,8 @@ module CalculatedFields
|
|
|
43
44
|
@refFieldsContents = 'Fields referenced in Calculated Fields Formulae'
|
|
44
45
|
@refFieldsType = 'CalculatedFieldsReferencedFields'
|
|
45
46
|
@refFieldsHeader = ['Record #',
|
|
46
|
-
'Workbook',
|
|
47
|
+
'Workbook',
|
|
48
|
+
'Workbook Directory',
|
|
47
49
|
'Data Source Name (tech)', 'Data Source Caption', 'Data Source Name',
|
|
48
50
|
'Field Name (tech)', 'Field Caption', 'Field Name',
|
|
49
51
|
'Referenced Field',
|
|
@@ -36,6 +36,7 @@ module Analysis
|
|
|
36
36
|
@@calcFieldsCSVFileName = 'CalculatedFields.csv'
|
|
37
37
|
@@calcFieldsCSVFileHeader = ['Record #',
|
|
38
38
|
'Workbook',
|
|
39
|
+
'Workbook Directory',
|
|
39
40
|
# 'Workbook Modified',
|
|
40
41
|
'Data Source', 'Data Source Caption', 'Data Source Name (tech)',
|
|
41
42
|
'Field Name', 'Field Caption', 'Field Name (tech)',
|
|
@@ -52,9 +53,9 @@ module Analysis
|
|
|
52
53
|
]
|
|
53
54
|
|
|
54
55
|
@@calcLinesCSVFileName = 'CalculatedFieldsFormulaLines.csv'
|
|
55
|
-
@@calcLinesCSVFileHeader = ['
|
|
56
|
+
@@calcLinesCSVFileHeader = ['Record #',
|
|
56
57
|
'Workbook',
|
|
57
|
-
|
|
58
|
+
'Workbook Directory',
|
|
58
59
|
'Data Source', 'Data Source Caption', 'Data Source Name (tech)',
|
|
59
60
|
'Field Name', 'Field Caption', 'Field Name (tech)',
|
|
60
61
|
'Formula', 'Formula Line #', 'Formula Line'
|
|
@@ -63,7 +64,7 @@ module Analysis
|
|
|
63
64
|
@@formFieldsCSVFileName = 'CalculatedFieldsReferenced.csv'
|
|
64
65
|
@@formFieldsCSVFileHeader = ['Record #',
|
|
65
66
|
'Workbook',
|
|
66
|
-
|
|
67
|
+
'Workbook Directory',
|
|
67
68
|
'Data Source',
|
|
68
69
|
'Field - Calculated',
|
|
69
70
|
'Formula (tech)',
|
|
@@ -206,6 +207,7 @@ module Analysis
|
|
|
206
207
|
csvRec = [
|
|
207
208
|
@calculatedFieldsCount += 1,
|
|
208
209
|
@twb.name,
|
|
210
|
+
@twb.dir,
|
|
209
211
|
# @modTime,
|
|
210
212
|
ds.uiname,
|
|
211
213
|
ds.caption,
|
|
@@ -236,6 +238,7 @@ module Analysis
|
|
|
236
238
|
emit "@@ resolved line:: => '#{fl}'"
|
|
237
239
|
fieldFormulaLines << [ @calculatedFieldsCount, # 'Calc Field #',
|
|
238
240
|
@twb.name, # 'Workbook',
|
|
241
|
+
@twb.dir, # "workbook Directory
|
|
239
242
|
# @modTime,
|
|
240
243
|
ds.uiname, # 'Data Source',
|
|
241
244
|
ds.caption, # 'Data Source Caption',
|
|
@@ -255,6 +258,7 @@ module Analysis
|
|
|
255
258
|
@csvFormulaFields << [
|
|
256
259
|
@referencedFieldsCount += 1,
|
|
257
260
|
@twb.name,
|
|
261
|
+
@twb.dir,
|
|
258
262
|
# @modTime,
|
|
259
263
|
rf.dataSourceName, # ds.uiname,
|
|
260
264
|
calcField.uiname,
|
|
@@ -310,47 +314,47 @@ module Analysis
|
|
|
310
314
|
end
|
|
311
315
|
|
|
312
316
|
# def mapTwb
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
317
|
+
# twb = @twb.name
|
|
318
|
+
# rootFields = @twbRootFields
|
|
319
|
+
# dotStuff = initDot twb
|
|
320
|
+
# dotFile = dotStuff[:file]
|
|
321
|
+
# dotFileName = dotStuff[:name]
|
|
322
|
+
# dotFile.puts "\n // subgraph cluster_1 {"
|
|
323
|
+
# dotFile.puts " // color= grey;"
|
|
324
|
+
# dotFile.puts ""
|
|
325
|
+
# edgesAsStrings = SortedSet.new
|
|
326
|
+
# # this two step process coalesces the edges into a unique set, avoiding duplicating the dot
|
|
327
|
+
# # file entries, and can be shrunk when graph edges expose the bits necessary for management by Set
|
|
328
|
+
# emit "\n========================\nLoading Edges\n========================\n From DC? Referenced? Edge \n %s %s %s" % ['--------', '-----------', '-'*45]
|
|
329
|
+
# @edges.each do |e|
|
|
330
|
+
# # don't want to emit edge which is from a Data Connection to a
|
|
331
|
+
# # Calculated Field which is also referenced by another calculated field
|
|
332
|
+
# isFromDC = e.from.type == :TwbDataConnection
|
|
333
|
+
# isRefField = @referencedFields.include?(e.to.id)
|
|
334
|
+
# edgesAsStrings.add(e.dot) unless isFromDC && isRefField
|
|
335
|
+
# # emit " ES #{e.dot}"
|
|
336
|
+
# # emit " ES from #{e.from}"
|
|
337
|
+
# # emit " ES to #{e.to}"
|
|
338
|
+
# end
|
|
339
|
+
# emit "------------------------\n "
|
|
340
|
+
# edgesAsStrings.each do |es|
|
|
341
|
+
# dotFile.puts " #{es}"
|
|
342
|
+
# end
|
|
343
|
+
# emit "========================\n "
|
|
344
|
+
# dotFile.puts ""
|
|
345
|
+
# dotFile.puts " // }"
|
|
346
|
+
# dotFile.puts "\n\n // 4 NODES --------------------------------------------------------------------"
|
|
347
|
+
# @nodes.each do |n|
|
|
348
|
+
# dotFile.puts n.dotLabel
|
|
349
|
+
# end
|
|
350
|
+
# dotFile.puts "\n\n // 5--------------------------------------------------------------------"
|
|
351
|
+
# emitTypes( dotFile )
|
|
352
|
+
# closeDot( dotFile, twb )
|
|
353
|
+
# emit "Rendering DOT file - #{twb}"
|
|
354
|
+
# renderDot(twb,dotFileName,'pdf')
|
|
355
|
+
# renderDot(twb,dotFileName,'png')
|
|
356
|
+
# renderDot(twb,dotFileName,'svg')
|
|
357
|
+
# # emitEdges
|
|
354
358
|
# end
|
|
355
359
|
|
|
356
360
|
def cypher twbName
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -31,7 +31,9 @@ module Analysis
|
|
|
31
31
|
#--
|
|
32
32
|
docFileName = docFile('GroupFields.csv')
|
|
33
33
|
@csv = CSV.open(docFileName,'w')
|
|
34
|
-
@csv << ['Workbook',
|
|
34
|
+
@csv << [ 'Workbook',
|
|
35
|
+
'Workbook Directory',
|
|
36
|
+
'Data Source','Field','Group','Member']
|
|
35
37
|
addDocFile @csv, docFileName, "Workbooks, Data Sources, and their Grouped Fields"
|
|
36
38
|
#--
|
|
37
39
|
@twbCount = 0
|
|
File without changes
|
|
@@ -28,26 +28,26 @@ module DataSources
|
|
|
28
28
|
attr_reader :dsCount, :fieldsCount
|
|
29
29
|
|
|
30
30
|
# @@csvHeader = ['Record #',
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
31
|
+
# 'Workbook',
|
|
32
|
+
# 'Workbook Directory',
|
|
33
|
+
# 'Data Source',
|
|
34
|
+
# 'Field',
|
|
35
|
+
# 'Twb Type',
|
|
36
|
+
# 'Hidden', # props[:hidden],
|
|
37
|
+
# 'Type - Column', # props[:columnField],
|
|
38
|
+
# 'Type - Calculated', # props[:calculatedField],
|
|
39
|
+
# 'Type - Db', # props[:dbField],
|
|
40
|
+
# 'Type - Mapped', # props[:mappedField]
|
|
41
|
+
# 'Type - MetaData', # props[:mappedField]
|
|
42
42
|
# ]
|
|
43
43
|
# @@csvFileType = 'TwbDataSourceFields'
|
|
44
44
|
# @@csvFileName = @@csvFileType + '.csv'
|
|
45
45
|
|
|
46
46
|
@@fullFileType = 'TwbDataSourceFieldsDetails'
|
|
47
47
|
@@fullFileName = @@fullFileType + '.csv'
|
|
48
|
-
@@fullHeader = ['
|
|
48
|
+
@@fullHeader = ['Record #',
|
|
49
49
|
'Workbook',
|
|
50
|
-
'Workbook
|
|
50
|
+
'Workbook Directory',
|
|
51
51
|
'Data Source',
|
|
52
52
|
'Field',
|
|
53
53
|
'Field - source',
|
|
@@ -59,9 +59,9 @@ module DataSources
|
|
|
59
59
|
|
|
60
60
|
# @@techFileType = 'TwbDataSourceFieldsTech'
|
|
61
61
|
# @@techFileName = @@techFileType + '.csv'
|
|
62
|
-
# @@techHeader = ['
|
|
62
|
+
# @@techHeader = ['Record #',
|
|
63
63
|
# 'Workbook',
|
|
64
|
-
# 'Workbook
|
|
64
|
+
# 'Workbook Directory',
|
|
65
65
|
# 'Data Source',
|
|
66
66
|
# 'Field',
|
|
67
67
|
# 'Field Type',
|
|
@@ -82,11 +82,22 @@ module DataSources
|
|
|
82
82
|
docFileName = docFile(@@fullFileName)
|
|
83
83
|
@sheetFieldsCSV = CSV.open( docFileName,@csvMode)
|
|
84
84
|
unless @csvAdd
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
85
|
+
@sheetFieldsCSV << [ 'Record #',
|
|
86
|
+
'Workbook',
|
|
87
|
+
'Workbook Directory',
|
|
88
|
+
'Workbook Modified',
|
|
89
|
+
'Worksheet',
|
|
90
|
+
'Filter Type',
|
|
91
|
+
'Operation',
|
|
92
|
+
'Data Source',
|
|
93
|
+
'Field',
|
|
94
|
+
'Value',
|
|
95
|
+
'Alias',
|
|
96
|
+
'Alias?',
|
|
97
|
+
'Operation Mode',
|
|
98
|
+
'Include Null?',
|
|
99
|
+
'Kind'
|
|
100
|
+
]
|
|
90
101
|
end
|
|
91
102
|
addDocFile @sheetFieldsCSV, docFileName, "Workbooks, Worksheets and the sheets' Quick Filters"
|
|
92
103
|
#--
|
|
File without changes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# categoricalColorCodingAnalyzer.rb Copyright (C) 2018 Chris Gerrard
|
|
1
|
+
# categoricalColorCodingAnalyzer.rb Copyright (C) 2018,2024 Chris Gerrard
|
|
2
2
|
#
|
|
3
3
|
# This program is free software: you can redistribute it and/or modify
|
|
4
4
|
# it under the terms of the GNU General Public License as published by
|
|
@@ -31,7 +31,15 @@ module Analysis
|
|
|
31
31
|
#--
|
|
32
32
|
docFileName = docFile('CategoricalColorMappings.csv')
|
|
33
33
|
$csv = CSV.open(docFileName,'w')
|
|
34
|
-
$csv << [
|
|
34
|
+
$csv << [ 'Workbook',
|
|
35
|
+
'Workbook Directory',
|
|
36
|
+
'Data Source',
|
|
37
|
+
'Field Code',
|
|
38
|
+
'Field Tech',
|
|
39
|
+
'Field',
|
|
40
|
+
'Value',
|
|
41
|
+
'Colour'
|
|
42
|
+
]
|
|
35
43
|
addDocFile docFileName, "Workbooks, Data Sources, Fields, and the Fields' members' categorical color codings."
|
|
36
44
|
#--
|
|
37
45
|
@twbCnt = 0
|
|
@@ -49,8 +57,8 @@ module Analysis
|
|
|
49
57
|
|
|
50
58
|
def processTWB twb
|
|
51
59
|
@twb = twb
|
|
52
|
-
twbName = twb.name
|
|
53
|
-
twbDir = twb.dir
|
|
60
|
+
twbName = @twb.name
|
|
61
|
+
twbDir = @twb.dir
|
|
54
62
|
emit " -- #{twbName}"
|
|
55
63
|
@twbCnt += 1
|
|
56
64
|
@twbDomainsLoaded = false
|
|
@@ -85,8 +93,15 @@ module Analysis
|
|
|
85
93
|
end
|
|
86
94
|
end
|
|
87
95
|
end
|
|
88
|
-
|
|
89
|
-
|
|
96
|
+
$csv << [ @twb.name,
|
|
97
|
+
@twb.dir,
|
|
98
|
+
dsName,
|
|
99
|
+
fieldCode,
|
|
100
|
+
fieldTech,
|
|
101
|
+
fieldUI,
|
|
102
|
+
value,
|
|
103
|
+
color
|
|
104
|
+
]
|
|
90
105
|
puts "VALUE: #{value}"
|
|
91
106
|
end
|
|
92
107
|
end
|