gooddata-edge 0.6.27.edge

Sign up to get free protection for your applications and to get access to all the features.
Files changed (364) hide show
  1. checksums.yaml +7 -0
  2. data/.document +5 -0
  3. data/.gitignore +36 -0
  4. data/.rspec +3 -0
  5. data/.rubocop.yml +89 -0
  6. data/.yardopts +22 -0
  7. data/CHANGELOG.md +196 -0
  8. data/CLI.md +439 -0
  9. data/DEPENDENCIES.md +817 -0
  10. data/Gemfile +4 -0
  11. data/Guardfile +5 -0
  12. data/LICENSE +22 -0
  13. data/LICENSE.rb +5 -0
  14. data/README.md +75 -0
  15. data/Rakefile +179 -0
  16. data/TODO.md +32 -0
  17. data/authors.sh +4 -0
  18. data/bin/gooddata +7 -0
  19. data/dependency_decisions.yml +104 -0
  20. data/gooddata +9 -0
  21. data/gooddata.gemspec +63 -0
  22. data/lib/gooddata.rb +31 -0
  23. data/lib/gooddata/app/app.rb +16 -0
  24. data/lib/gooddata/bricks/base_downloader.rb +86 -0
  25. data/lib/gooddata/bricks/brick.rb +38 -0
  26. data/lib/gooddata/bricks/bricks.rb +15 -0
  27. data/lib/gooddata/bricks/middleware/aws_middleware.rb +29 -0
  28. data/lib/gooddata/bricks/middleware/base_middleware.rb +56 -0
  29. data/lib/gooddata/bricks/middleware/bench_middleware.rb +24 -0
  30. data/lib/gooddata/bricks/middleware/bulk_salesforce_middleware.rb +37 -0
  31. data/lib/gooddata/bricks/middleware/decode_params_middleware.rb +20 -0
  32. data/lib/gooddata/bricks/middleware/fs_download_middleware.rb +48 -0
  33. data/lib/gooddata/bricks/middleware/fs_upload_middleware.rb +36 -0
  34. data/lib/gooddata/bricks/middleware/gooddata_middleware.rb +39 -0
  35. data/lib/gooddata/bricks/middleware/logger_middleware.rb +29 -0
  36. data/lib/gooddata/bricks/middleware/middleware.rb +12 -0
  37. data/lib/gooddata/bricks/middleware/restforce_middleware.rb +61 -0
  38. data/lib/gooddata/bricks/middleware/stdout_middleware.rb +23 -0
  39. data/lib/gooddata/bricks/middleware/twitter_middleware.rb +29 -0
  40. data/lib/gooddata/bricks/middleware/undot_params_middleware.rb +37 -0
  41. data/lib/gooddata/bricks/pipeline.rb +32 -0
  42. data/lib/gooddata/bricks/utils.rb +18 -0
  43. data/lib/gooddata/cli/cli.rb +27 -0
  44. data/lib/gooddata/cli/commands/auth_cmd.rb +29 -0
  45. data/lib/gooddata/cli/commands/domain_cmd.rb +28 -0
  46. data/lib/gooddata/cli/commands/project_cmd.rb +45 -0
  47. data/lib/gooddata/cli/hooks.rb +57 -0
  48. data/lib/gooddata/cli/shared.rb +61 -0
  49. data/lib/gooddata/cli/terminal.rb +20 -0
  50. data/lib/gooddata/client.rb +67 -0
  51. data/lib/gooddata/commands/api.rb +64 -0
  52. data/lib/gooddata/commands/auth.rb +107 -0
  53. data/lib/gooddata/commands/base.rb +12 -0
  54. data/lib/gooddata/commands/commands.rb +12 -0
  55. data/lib/gooddata/commands/datasets.rb +148 -0
  56. data/lib/gooddata/commands/datawarehouse.rb +20 -0
  57. data/lib/gooddata/commands/domain.rb +40 -0
  58. data/lib/gooddata/commands/process.rb +67 -0
  59. data/lib/gooddata/commands/project.rb +175 -0
  60. data/lib/gooddata/commands/projects.rb +20 -0
  61. data/lib/gooddata/commands/role.rb +36 -0
  62. data/lib/gooddata/commands/runners.rb +47 -0
  63. data/lib/gooddata/commands/scaffold.rb +69 -0
  64. data/lib/gooddata/commands/user.rb +39 -0
  65. data/lib/gooddata/connection.rb +127 -0
  66. data/lib/gooddata/core/core.rb +12 -0
  67. data/lib/gooddata/core/logging.rb +105 -0
  68. data/lib/gooddata/core/nil_logger.rb +23 -0
  69. data/lib/gooddata/core/project.rb +74 -0
  70. data/lib/gooddata/core/rest.rb +149 -0
  71. data/lib/gooddata/core/user.rb +20 -0
  72. data/lib/gooddata/data/data.rb +12 -0
  73. data/lib/gooddata/data/guesser.rb +122 -0
  74. data/lib/gooddata/exceptions/attr_element_not_found.rb +16 -0
  75. data/lib/gooddata/exceptions/command_failed.rb +11 -0
  76. data/lib/gooddata/exceptions/exceptions.rb +12 -0
  77. data/lib/gooddata/exceptions/execution_limit_exceeded.rb +13 -0
  78. data/lib/gooddata/exceptions/filter_maqlization.rb +16 -0
  79. data/lib/gooddata/exceptions/malformed_user.rb +15 -0
  80. data/lib/gooddata/exceptions/no_project_error.rb +15 -0
  81. data/lib/gooddata/exceptions/object_migration.rb +32 -0
  82. data/lib/gooddata/exceptions/project_not_found.rb +13 -0
  83. data/lib/gooddata/exceptions/segment_not_empty.rb +18 -0
  84. data/lib/gooddata/exceptions/uncomputable_report.rb +13 -0
  85. data/lib/gooddata/exceptions/user_in_different_domain.rb +15 -0
  86. data/lib/gooddata/exceptions/validation_error.rb +16 -0
  87. data/lib/gooddata/extensions/big_decimal.rb +17 -0
  88. data/lib/gooddata/extensions/enumerable.rb +39 -0
  89. data/lib/gooddata/extensions/extensions.rb +10 -0
  90. data/lib/gooddata/extensions/false.rb +15 -0
  91. data/lib/gooddata/extensions/hash.rb +38 -0
  92. data/lib/gooddata/extensions/nil.rb +15 -0
  93. data/lib/gooddata/extensions/numeric.rb +15 -0
  94. data/lib/gooddata/extensions/object.rb +27 -0
  95. data/lib/gooddata/extensions/symbol.rb +15 -0
  96. data/lib/gooddata/extensions/true.rb +15 -0
  97. data/lib/gooddata/extract.rb +21 -0
  98. data/lib/gooddata/goodzilla/goodzilla.rb +159 -0
  99. data/lib/gooddata/helpers/auth_helpers.rb +75 -0
  100. data/lib/gooddata/helpers/csv_helper.rb +61 -0
  101. data/lib/gooddata/helpers/data_helper.rb +116 -0
  102. data/lib/gooddata/helpers/global_helpers.rb +331 -0
  103. data/lib/gooddata/helpers/global_helpers_params.rb +172 -0
  104. data/lib/gooddata/helpers/helpers.rb +10 -0
  105. data/lib/gooddata/mixins/author.rb +26 -0
  106. data/lib/gooddata/mixins/content_getter.rb +15 -0
  107. data/lib/gooddata/mixins/content_property_reader.rb +17 -0
  108. data/lib/gooddata/mixins/content_property_writer.rb +17 -0
  109. data/lib/gooddata/mixins/contributor.rb +20 -0
  110. data/lib/gooddata/mixins/data_getter.rb +15 -0
  111. data/lib/gooddata/mixins/data_property_reader.rb +19 -0
  112. data/lib/gooddata/mixins/data_property_writer.rb +19 -0
  113. data/lib/gooddata/mixins/inspector.rb +53 -0
  114. data/lib/gooddata/mixins/is_attribute.rb +17 -0
  115. data/lib/gooddata/mixins/is_dimension.rb +17 -0
  116. data/lib/gooddata/mixins/is_fact.rb +17 -0
  117. data/lib/gooddata/mixins/is_label.rb +19 -0
  118. data/lib/gooddata/mixins/links.rb +15 -0
  119. data/lib/gooddata/mixins/md_finders.rb +77 -0
  120. data/lib/gooddata/mixins/md_grantees.rb +42 -0
  121. data/lib/gooddata/mixins/md_id_to_uri.rb +34 -0
  122. data/lib/gooddata/mixins/md_json.rb +15 -0
  123. data/lib/gooddata/mixins/md_lock.rb +87 -0
  124. data/lib/gooddata/mixins/md_object_id.rb +15 -0
  125. data/lib/gooddata/mixins/md_object_indexer.rb +64 -0
  126. data/lib/gooddata/mixins/md_object_query.rb +128 -0
  127. data/lib/gooddata/mixins/md_relations.rb +43 -0
  128. data/lib/gooddata/mixins/meta_getter.rb +17 -0
  129. data/lib/gooddata/mixins/meta_property_reader.rb +19 -0
  130. data/lib/gooddata/mixins/meta_property_writer.rb +19 -0
  131. data/lib/gooddata/mixins/mixins.rb +19 -0
  132. data/lib/gooddata/mixins/not_attribute.rb +17 -0
  133. data/lib/gooddata/mixins/not_exportable.rb +15 -0
  134. data/lib/gooddata/mixins/not_fact.rb +17 -0
  135. data/lib/gooddata/mixins/not_group.rb +17 -0
  136. data/lib/gooddata/mixins/not_label.rb +19 -0
  137. data/lib/gooddata/mixins/not_metric.rb +19 -0
  138. data/lib/gooddata/mixins/obj_id.rb +15 -0
  139. data/lib/gooddata/mixins/rest_getters.rb +17 -0
  140. data/lib/gooddata/mixins/rest_resource.rb +47 -0
  141. data/lib/gooddata/mixins/root_key_getter.rb +15 -0
  142. data/lib/gooddata/mixins/root_key_setter.rb +15 -0
  143. data/lib/gooddata/mixins/timestamps.rb +19 -0
  144. data/lib/gooddata/mixins/to_json.rb +11 -0
  145. data/lib/gooddata/mixins/uri_getter.rb +9 -0
  146. data/lib/gooddata/models/blueprint/anchor_field.rb +64 -0
  147. data/lib/gooddata/models/blueprint/attribute_field.rb +29 -0
  148. data/lib/gooddata/models/blueprint/blueprint.rb +11 -0
  149. data/lib/gooddata/models/blueprint/blueprint_field.rb +70 -0
  150. data/lib/gooddata/models/blueprint/dashboard_builder.rb +30 -0
  151. data/lib/gooddata/models/blueprint/dataset_blueprint.rb +449 -0
  152. data/lib/gooddata/models/blueprint/date_dimension.rb +14 -0
  153. data/lib/gooddata/models/blueprint/fact_field.rb +20 -0
  154. data/lib/gooddata/models/blueprint/label_field.rb +43 -0
  155. data/lib/gooddata/models/blueprint/project_blueprint.rb +746 -0
  156. data/lib/gooddata/models/blueprint/project_builder.rb +83 -0
  157. data/lib/gooddata/models/blueprint/reference_field.rb +43 -0
  158. data/lib/gooddata/models/blueprint/schema_blueprint.rb +160 -0
  159. data/lib/gooddata/models/blueprint/schema_builder.rb +89 -0
  160. data/lib/gooddata/models/blueprint/to_manifest.rb +181 -0
  161. data/lib/gooddata/models/blueprint/to_wire.rb +154 -0
  162. data/lib/gooddata/models/client.rb +182 -0
  163. data/lib/gooddata/models/client_synchronization_result.rb +31 -0
  164. data/lib/gooddata/models/client_synchronization_result_details.rb +41 -0
  165. data/lib/gooddata/models/datawarehouse.rb +92 -0
  166. data/lib/gooddata/models/domain.rb +479 -0
  167. data/lib/gooddata/models/execution.rb +115 -0
  168. data/lib/gooddata/models/execution_detail.rb +81 -0
  169. data/lib/gooddata/models/from_wire.rb +160 -0
  170. data/lib/gooddata/models/invitation.rb +75 -0
  171. data/lib/gooddata/models/links.rb +50 -0
  172. data/lib/gooddata/models/membership.rb +441 -0
  173. data/lib/gooddata/models/metadata.rb +272 -0
  174. data/lib/gooddata/models/metadata/attribute.rb +134 -0
  175. data/lib/gooddata/models/metadata/dashboard.rb +108 -0
  176. data/lib/gooddata/models/metadata/dashboard/dashboard_item.rb +76 -0
  177. data/lib/gooddata/models/metadata/dashboard/filter_apply_item.rb +37 -0
  178. data/lib/gooddata/models/metadata/dashboard/filter_item.rb +64 -0
  179. data/lib/gooddata/models/metadata/dashboard/geo_chart_item.rb +56 -0
  180. data/lib/gooddata/models/metadata/dashboard/headline_item.rb +56 -0
  181. data/lib/gooddata/models/metadata/dashboard/iframe_item.rb +46 -0
  182. data/lib/gooddata/models/metadata/dashboard/report_item.rb +92 -0
  183. data/lib/gooddata/models/metadata/dashboard/text_item.rb +55 -0
  184. data/lib/gooddata/models/metadata/dashboard_tab.rb +141 -0
  185. data/lib/gooddata/models/metadata/dataset.rb +64 -0
  186. data/lib/gooddata/models/metadata/dimension.rb +54 -0
  187. data/lib/gooddata/models/metadata/fact.rb +44 -0
  188. data/lib/gooddata/models/metadata/label.rb +128 -0
  189. data/lib/gooddata/models/metadata/metadata.rb +12 -0
  190. data/lib/gooddata/models/metadata/metric.rb +198 -0
  191. data/lib/gooddata/models/metadata/report.rb +247 -0
  192. data/lib/gooddata/models/metadata/report_definition.rb +264 -0
  193. data/lib/gooddata/models/metadata/scheduled_mail.rb +274 -0
  194. data/lib/gooddata/models/metadata/scheduled_mail/dashboard_attachment.rb +62 -0
  195. data/lib/gooddata/models/metadata/scheduled_mail/report_attachment.rb +64 -0
  196. data/lib/gooddata/models/metadata/variable.rb +91 -0
  197. data/lib/gooddata/models/model.rb +282 -0
  198. data/lib/gooddata/models/models.rb +12 -0
  199. data/lib/gooddata/models/module_constants.rb +31 -0
  200. data/lib/gooddata/models/process.rb +316 -0
  201. data/lib/gooddata/models/profile.rb +426 -0
  202. data/lib/gooddata/models/project.rb +1514 -0
  203. data/lib/gooddata/models/project_creator.rb +126 -0
  204. data/lib/gooddata/models/project_metadata.rb +67 -0
  205. data/lib/gooddata/models/project_role.rb +79 -0
  206. data/lib/gooddata/models/report_data_result.rb +266 -0
  207. data/lib/gooddata/models/schedule.rb +518 -0
  208. data/lib/gooddata/models/segment.rb +201 -0
  209. data/lib/gooddata/models/tab_builder.rb +27 -0
  210. data/lib/gooddata/models/user_filters/mandatory_user_filter.rb +76 -0
  211. data/lib/gooddata/models/user_filters/user_filter.rb +100 -0
  212. data/lib/gooddata/models/user_filters/user_filter_builder.rb +512 -0
  213. data/lib/gooddata/models/user_filters/user_filters.rb +13 -0
  214. data/lib/gooddata/models/user_filters/variable_user_filter.rb +31 -0
  215. data/lib/gooddata/models/user_group.rb +241 -0
  216. data/lib/gooddata/rest/README.md +37 -0
  217. data/lib/gooddata/rest/client.rb +389 -0
  218. data/lib/gooddata/rest/connection.rb +765 -0
  219. data/lib/gooddata/rest/object.rb +69 -0
  220. data/lib/gooddata/rest/object_factory.rb +76 -0
  221. data/lib/gooddata/rest/resource.rb +27 -0
  222. data/lib/gooddata/rest/rest.rb +24 -0
  223. data/lib/gooddata/version.rb +23 -0
  224. data/lib/templates/bricks/brick.rb.erb +7 -0
  225. data/lib/templates/bricks/main.rb.erb +5 -0
  226. data/lib/templates/project/Goodfile.erb +4 -0
  227. data/lib/templates/project/data/commits.csv +4 -0
  228. data/lib/templates/project/data/devs.csv +4 -0
  229. data/lib/templates/project/data/repos.csv +3 -0
  230. data/lib/templates/project/model/model.rb.erb +20 -0
  231. data/spec/bricks/bricks_spec.rb +112 -0
  232. data/spec/bricks/default-config.json +8 -0
  233. data/spec/data/.gooddata +4 -0
  234. data/spec/data/blueprints/additional_dataset_module.json +32 -0
  235. data/spec/data/blueprints/big_blueprint_not_pruned.json +2079 -0
  236. data/spec/data/blueprints/invalid_blueprint.json +103 -0
  237. data/spec/data/blueprints/m_n_model.json +104 -0
  238. data/spec/data/blueprints/model_module.json +25 -0
  239. data/spec/data/blueprints/test_blueprint.json +38 -0
  240. data/spec/data/blueprints/test_project_model_spec.json +106 -0
  241. data/spec/data/cc/data/source/commits.csv +4 -0
  242. data/spec/data/cc/data/source/devs.csv +4 -0
  243. data/spec/data/cc/data/source/repos.csv +3 -0
  244. data/spec/data/cc/devel.prm +0 -0
  245. data/spec/data/cc/graph/graph.grf +11 -0
  246. data/spec/data/cc/workspace.prm +19 -0
  247. data/spec/data/column_based_permissions.csv +7 -0
  248. data/spec/data/column_based_permissions2.csv +6 -0
  249. data/spec/data/gd_gse_data_blueprint.json +1371 -0
  250. data/spec/data/gd_gse_data_manifest.json +1424 -0
  251. data/spec/data/gd_gse_data_model.json +1772 -0
  252. data/spec/data/gooddata_version_process/gooddata_version.rb +9 -0
  253. data/spec/data/gooddata_version_process/gooddata_version.zip +0 -0
  254. data/spec/data/hello_world_process/hello_world.rb +9 -0
  255. data/spec/data/hello_world_process/hello_world.zip +0 -0
  256. data/spec/data/line_based_permissions.csv +3 -0
  257. data/spec/data/manifests/test_blueprint.json +32 -0
  258. data/spec/data/manifests/test_project.json +107 -0
  259. data/spec/data/reports/left_attr_report.json +108 -0
  260. data/spec/data/reports/metric_only_one_line.json +83 -0
  261. data/spec/data/reports/report_1.json +197 -0
  262. data/spec/data/reports/top_attr_report.json +108 -0
  263. data/spec/data/ruby_params_process/ruby_params.rb +9 -0
  264. data/spec/data/ruby_process/deep_files/deep_stuff.txt +1 -0
  265. data/spec/data/ruby_process/process.rb +8 -0
  266. data/spec/data/ruby_process/stuff.txt +1 -0
  267. data/spec/data/superfluous_titles_view.json +81 -0
  268. data/spec/data/test-ci-data.csv +2 -0
  269. data/spec/data/users.csv +12 -0
  270. data/spec/data/wire_models/model_view.json +1775 -0
  271. data/spec/data/wire_models/nu_model.json +3046 -0
  272. data/spec/data/wire_models/test_blueprint.json +63 -0
  273. data/spec/data/wire_test_project.json +150 -0
  274. data/spec/environment/default.rb +41 -0
  275. data/spec/environment/develop.rb +31 -0
  276. data/spec/environment/environment.rb +18 -0
  277. data/spec/environment/hotfix.rb +21 -0
  278. data/spec/environment/production.rb +35 -0
  279. data/spec/environment/release.rb +21 -0
  280. data/spec/environment/staging.rb +30 -0
  281. data/spec/environment/staging_3.rb +36 -0
  282. data/spec/helpers/blueprint_helper.rb +26 -0
  283. data/spec/helpers/cli_helper.rb +36 -0
  284. data/spec/helpers/connection_helper.rb +41 -0
  285. data/spec/helpers/crypto_helper.rb +17 -0
  286. data/spec/helpers/csv_helper.rb +18 -0
  287. data/spec/helpers/process_helper.rb +33 -0
  288. data/spec/helpers/project_helper.rb +59 -0
  289. data/spec/helpers/schedule_helper.rb +31 -0
  290. data/spec/helpers/spec_helper.rb +15 -0
  291. data/spec/integration/blueprint_updates_spec.rb +101 -0
  292. data/spec/integration/blueprint_with_grain_spec.rb +72 -0
  293. data/spec/integration/clients_spec.rb +134 -0
  294. data/spec/integration/command_datawarehouse_spec.rb +39 -0
  295. data/spec/integration/command_projects_spec.rb +32 -0
  296. data/spec/integration/create_from_template_spec.rb +22 -0
  297. data/spec/integration/create_project_spec.rb +24 -0
  298. data/spec/integration/date_dim_switch_spec.rb +142 -0
  299. data/spec/integration/deprecated_load_spec.rb +58 -0
  300. data/spec/integration/full_process_schedule_spec.rb +298 -0
  301. data/spec/integration/full_project_spec.rb +569 -0
  302. data/spec/integration/over_to_user_filters_spec.rb +94 -0
  303. data/spec/integration/partial_md_export_import_spec.rb +42 -0
  304. data/spec/integration/project_spec.rb +264 -0
  305. data/spec/integration/rest_spec.rb +213 -0
  306. data/spec/integration/schedule_spec.rb +626 -0
  307. data/spec/integration/segments_spec.rb +141 -0
  308. data/spec/integration/user_filters_spec.rb +290 -0
  309. data/spec/integration/user_group_spec.rb +127 -0
  310. data/spec/integration/variables_spec.rb +188 -0
  311. data/spec/logging_in_logging_out_spec.rb +93 -0
  312. data/spec/spec_helper.rb +95 -0
  313. data/spec/unit/bricks/bricks_spec.rb +35 -0
  314. data/spec/unit/bricks/middleware/aws_middelware_spec.rb +51 -0
  315. data/spec/unit/bricks/middleware/bench_middleware_spec.rb +15 -0
  316. data/spec/unit/bricks/middleware/bulk_salesforce_middleware_spec.rb +15 -0
  317. data/spec/unit/bricks/middleware/gooddata_middleware_spec.rb +15 -0
  318. data/spec/unit/bricks/middleware/logger_middleware_spec.rb +15 -0
  319. data/spec/unit/bricks/middleware/restforce_middleware_spec.rb +15 -0
  320. data/spec/unit/bricks/middleware/stdout_middleware_spec.rb +15 -0
  321. data/spec/unit/bricks/middleware/twitter_middleware_spec.rb +15 -0
  322. data/spec/unit/cli/cli_spec.rb +17 -0
  323. data/spec/unit/cli/commands/cmd_auth_spec.rb +17 -0
  324. data/spec/unit/commands/command_projects_spec.rb +22 -0
  325. data/spec/unit/core/connection_spec.rb +57 -0
  326. data/spec/unit/core/logging_spec.rb +133 -0
  327. data/spec/unit/core/nil_logger_spec.rb +13 -0
  328. data/spec/unit/core/project_spec.rb +54 -0
  329. data/spec/unit/extensions/hash_spec.rb +23 -0
  330. data/spec/unit/godzilla/goodzilla_spec.rb +78 -0
  331. data/spec/unit/helpers/csv_helper_spec.rb +22 -0
  332. data/spec/unit/helpers/data_helper_spec.rb +61 -0
  333. data/spec/unit/helpers/global_helpers_spec.rb +111 -0
  334. data/spec/unit/helpers_spec.rb +86 -0
  335. data/spec/unit/models/blueprint/attributes_spec.rb +29 -0
  336. data/spec/unit/models/blueprint/dataset_spec.rb +121 -0
  337. data/spec/unit/models/blueprint/labels_spec.rb +44 -0
  338. data/spec/unit/models/blueprint/project_blueprint_spec.rb +648 -0
  339. data/spec/unit/models/blueprint/reference_spec.rb +29 -0
  340. data/spec/unit/models/blueprint/schema_builder_spec.rb +38 -0
  341. data/spec/unit/models/blueprint/to_wire_spec.rb +174 -0
  342. data/spec/unit/models/domain_spec.rb +144 -0
  343. data/spec/unit/models/execution_spec.rb +108 -0
  344. data/spec/unit/models/from_wire_spec.rb +296 -0
  345. data/spec/unit/models/invitation_spec.rb +17 -0
  346. data/spec/unit/models/membership_spec.rb +132 -0
  347. data/spec/unit/models/metadata_spec.rb +104 -0
  348. data/spec/unit/models/metric_spec.rb +117 -0
  349. data/spec/unit/models/model_spec.rb +82 -0
  350. data/spec/unit/models/params_spec.rb +118 -0
  351. data/spec/unit/models/profile_spec.rb +215 -0
  352. data/spec/unit/models/project_creator_spec.rb +127 -0
  353. data/spec/unit/models/project_role_spec.rb +94 -0
  354. data/spec/unit/models/project_spec.rb +162 -0
  355. data/spec/unit/models/report_result_data_spec.rb +199 -0
  356. data/spec/unit/models/schedule_spec.rb +418 -0
  357. data/spec/unit/models/to_manifest_spec.rb +63 -0
  358. data/spec/unit/models/unit_project_spec.rb +125 -0
  359. data/spec/unit/models/user_filters_spec.rb +95 -0
  360. data/spec/unit/models/variable_spec.rb +265 -0
  361. data/spec/unit/rest/polling_spec.rb +89 -0
  362. data/spec/unit/rest/resource_spec.rb +10 -0
  363. data/yard-server.sh +3 -0
  364. metadata +1125 -0
@@ -0,0 +1,1371 @@
1
+ {
2
+ "datasets": [{
3
+ "type": "dataset",
4
+ "title": "stage_history",
5
+ "name": "stage_history",
6
+ "columns": [{
7
+ "type": "attribute",
8
+ "name": "currentstatus",
9
+ "title": "Current Stage",
10
+ "gd_data_type": "VARCHAR(128)",
11
+ "gd_type": "GDC.text"
12
+ }, {
13
+ "type": "fact",
14
+ "name": "stage_velocity",
15
+ "gd_data_type": "DECIMAL(12,2)"
16
+ }, {
17
+ "type": "fact",
18
+ "name": "stage_duration",
19
+ "gd_data_type": "DECIMAL(12,2)"
20
+ }, {
21
+ "type": "date_fact",
22
+ "name": "opp_created_date",
23
+ "title": "Opp. Created (Date) for Stage History",
24
+ "gd_data_type": "INT"
25
+ }, {
26
+ "type": "date_fact",
27
+ "name": "opp_close_date",
28
+ "title": "Opp. Close (Date) for Stage History",
29
+ "gd_data_type": "INT"
30
+ }, {
31
+ "type": "reference",
32
+ "name": "account",
33
+ "dataset": "account"
34
+ }, {
35
+ "type": "reference",
36
+ "name": "product",
37
+ "dataset": "product"
38
+ }, {
39
+ "type": "reference",
40
+ "name": "stage",
41
+ "dataset": "stage"
42
+ }, {
43
+ "type": "reference",
44
+ "name": "opp_owner",
45
+ "dataset": "opp_owner"
46
+ }, {
47
+ "type": "reference",
48
+ "name": "opportunity",
49
+ "dataset": "opportunity"
50
+ }, {
51
+ "type": "reference",
52
+ "name": "bookingtype",
53
+ "dataset": "bookingtype"
54
+ }, {
55
+ "type": "date",
56
+ "name": "oppclose",
57
+ "dataset": "oppclose"
58
+ }, {
59
+ "type": "date",
60
+ "name": "oppcreated",
61
+ "dataset": "oppcreated"
62
+ }]
63
+ }, {
64
+ "type": "dataset",
65
+ "title": "opp_snapshot",
66
+ "name": "opp_snapshot",
67
+ "columns": [{
68
+ "type": "attribute",
69
+ "name": "accountstagesnapshot",
70
+ "title": "Account Stage (Snapshot)",
71
+ "gd_data_type": "VARCHAR(128)",
72
+ "gd_type": "GDC.text"
73
+ }, {
74
+ "type": "fact",
75
+ "name": "amount",
76
+ "title": "Amount Snapshot",
77
+ "gd_data_type": "DECIMAL(12,2)"
78
+ }, {
79
+ "type": "fact",
80
+ "name": "probability",
81
+ "title": "Probability Snapshot",
82
+ "gd_data_type": "DECIMAL(12,2)"
83
+ }, {
84
+ "type": "date_fact",
85
+ "name": "created_date",
86
+ "title": "Opp. Created (Date) Snapshot",
87
+ "gd_data_type": "INT"
88
+ }, {
89
+ "type": "date_fact",
90
+ "name": "close_date",
91
+ "title": "Opp. Close (Date) Snapshot",
92
+ "gd_data_type": "INT"
93
+ }, {
94
+ "type": "date_fact",
95
+ "name": "snapshot_date",
96
+ "title": "Opp. Snapshot (Date)",
97
+ "gd_data_type": "INT"
98
+ }, {
99
+ "type": "fact",
100
+ "name": "mrr",
101
+ "title": "Straight Line MRR (Snapshot)",
102
+ "gd_data_type": "DECIMAL(12,2)"
103
+ }, {
104
+ "type": "fact",
105
+ "name": "distributedmrr",
106
+ "title": "Ending MRR (Snapshot)",
107
+ "gd_data_type": "DECIMAL(12,2)"
108
+ }, {
109
+ "type": "date_fact",
110
+ "name": "effectivecontractstart",
111
+ "title": "Opp. Contract Start (Date) Snapshot",
112
+ "gd_data_type": "INT"
113
+ }, {
114
+ "type": "date_fact",
115
+ "name": "effectivecontractend",
116
+ "title": "Opp. Contract End (Date) Snapshot",
117
+ "gd_data_type": "INT"
118
+ }, {
119
+ "type": "reference",
120
+ "name": "sdrowner",
121
+ "dataset": "sdrowner"
122
+ }, {
123
+ "type": "reference",
124
+ "name": "leadsourceoriginal",
125
+ "dataset": "leadsourceoriginal"
126
+ }, {
127
+ "type": "reference",
128
+ "name": "account",
129
+ "dataset": "account"
130
+ }, {
131
+ "type": "reference",
132
+ "name": "amounttype",
133
+ "dataset": "amounttype"
134
+ }, {
135
+ "type": "reference",
136
+ "name": "product",
137
+ "dataset": "product"
138
+ }, {
139
+ "type": "reference",
140
+ "name": "sourcingorigin",
141
+ "dataset": "sourcingorigin"
142
+ }, {
143
+ "type": "reference",
144
+ "name": "leadsource",
145
+ "dataset": "leadsource"
146
+ }, {
147
+ "type": "reference",
148
+ "name": "productline",
149
+ "dataset": "productline"
150
+ }, {
151
+ "type": "reference",
152
+ "name": "stage",
153
+ "dataset": "stage"
154
+ }, {
155
+ "type": "reference",
156
+ "name": "opp_owner",
157
+ "dataset": "opp_owner"
158
+ }, {
159
+ "type": "reference",
160
+ "name": "opportunity",
161
+ "dataset": "opportunity"
162
+ }, {
163
+ "type": "reference",
164
+ "name": "bookingtype",
165
+ "dataset": "bookingtype"
166
+ }, {
167
+ "type": "reference",
168
+ "name": "forecast",
169
+ "dataset": "forecast"
170
+ }, {
171
+ "type": "date",
172
+ "name": "leadcreate",
173
+ "dataset": "leadcreate"
174
+ }, {
175
+ "type": "date",
176
+ "name": "snapshot",
177
+ "dataset": "snapshot"
178
+ }, {
179
+ "type": "date",
180
+ "name": "oppclose",
181
+ "dataset": "oppclose"
182
+ }, {
183
+ "type": "date",
184
+ "name": "oppcreated",
185
+ "dataset": "oppcreated"
186
+ }, {
187
+ "type": "date",
188
+ "name": "stage1plus",
189
+ "dataset": "stage1plus"
190
+ }, {
191
+ "type": "date",
192
+ "name": "mqldate",
193
+ "dataset": "mqldate"
194
+ }, {
195
+ "type": "date",
196
+ "name": "effectivecontractstart",
197
+ "dataset": "effectivecontractstart"
198
+ }, {
199
+ "type": "date",
200
+ "name": "effectivecontractend",
201
+ "dataset": "effectivecontractend"
202
+ }]
203
+ }, {
204
+ "type": "dataset",
205
+ "title": "Opp_changes",
206
+ "name": "opp_changes",
207
+ "columns": [{
208
+ "type": "attribute",
209
+ "name": "interval_changes",
210
+ "title": "Interval_Changes",
211
+ "gd_data_type": "VARCHAR(128)",
212
+ "gd_type": "GDC.text"
213
+ }, {
214
+ "type": "attribute",
215
+ "name": "previous_stage",
216
+ "title": "Previous_Stage",
217
+ "gd_data_type": "VARCHAR(128)",
218
+ "gd_type": "GDC.text"
219
+ }, {
220
+ "type": "fact",
221
+ "name": "amount_changed",
222
+ "title": "amount_changed_expected",
223
+ "gd_data_type": "DECIMAL(12,2)"
224
+ }, {
225
+ "type": "fact",
226
+ "name": "amount_changed_current_q",
227
+ "title": "amount_changed_current_q_expected",
228
+ "gd_data_type": "DECIMAL(12,2)"
229
+ }, {
230
+ "type": "fact",
231
+ "name": "previous_amount",
232
+ "title": "previous_amount",
233
+ "gd_data_type": "DECIMAL(12,2)"
234
+ }, {
235
+ "type": "fact",
236
+ "name": "new_amount",
237
+ "title": "new_amount",
238
+ "gd_data_type": "DECIMAL(12,2)"
239
+ }, {
240
+ "type": "fact",
241
+ "name": "amount_changed_potential",
242
+ "title": "amount_changed_potential",
243
+ "gd_data_type": "DECIMAL(12,2)"
244
+ }, {
245
+ "type": "fact",
246
+ "name": "amount_changed_current_q_potential",
247
+ "title": "amount_changed_current_q_potential",
248
+ "gd_data_type": "DECIMAL(12,2)"
249
+ }, {
250
+ "type": "reference",
251
+ "name": "account",
252
+ "dataset": "account"
253
+ }, {
254
+ "type": "reference",
255
+ "name": "amounttype",
256
+ "dataset": "amounttype"
257
+ }, {
258
+ "type": "reference",
259
+ "name": "product",
260
+ "dataset": "product"
261
+ }, {
262
+ "type": "reference",
263
+ "name": "productline",
264
+ "dataset": "productline"
265
+ }, {
266
+ "type": "reference",
267
+ "name": "stage",
268
+ "dataset": "stage"
269
+ }, {
270
+ "type": "reference",
271
+ "name": "opp_owner",
272
+ "dataset": "opp_owner"
273
+ }, {
274
+ "type": "reference",
275
+ "name": "opportunity",
276
+ "dataset": "opportunity"
277
+ }, {
278
+ "type": "reference",
279
+ "name": "bookingtype",
280
+ "dataset": "bookingtype"
281
+ }, {
282
+ "type": "date",
283
+ "name": "oppclose",
284
+ "dataset": "oppclose"
285
+ }, {
286
+ "type": "date",
287
+ "name": "previous_close_date",
288
+ "dataset": "previous_close_date"
289
+ }]
290
+ }, {
291
+ "type": "dataset",
292
+ "title": "Opportunity Benchmark",
293
+ "name": "opportunityanalysis",
294
+ "columns": [{
295
+ "type": "anchor",
296
+ "name": "techoppanalysis",
297
+ "folder": "Opportunity Benchmark",
298
+ "title": "Tech Opp. Analysis",
299
+ "gd_data_type": "VARCHAR(128)",
300
+ "gd_type": "GDC.text"
301
+ }, {
302
+ "type": "attribute",
303
+ "name": "month",
304
+ "gd_data_type": "VARCHAR(128)",
305
+ "gd_type": "GDC.text"
306
+ }, {
307
+ "type": "label",
308
+ "reference": "month",
309
+ "name": "monthsortingnew",
310
+ "title": "MonthSortingNew",
311
+ "gd_data_type": "INT",
312
+ "gd_type": "GDC.text"
313
+ }, {
314
+ "type": "attribute",
315
+ "name": "cohorttype",
316
+ "title": "Cohort Type",
317
+ "gd_data_type": "VARCHAR(128)",
318
+ "gd_type": "GDC.text"
319
+ }, {
320
+ "type": "fact",
321
+ "name": "buckets_to_display",
322
+ "title": "buckets_to_display",
323
+ "gd_data_type": "DECIMAL(12,2)"
324
+ }, {
325
+ "type": "fact",
326
+ "name": "month_fact",
327
+ "title": "month_fact",
328
+ "gd_data_type": "DECIMAL(12,2)"
329
+ }, {
330
+ "type": "reference",
331
+ "name": "opp_records",
332
+ "dataset": "opp_records"
333
+ }, {
334
+ "type": "reference",
335
+ "name": "consolidatedmarketingstatus",
336
+ "dataset": "consolidatedmarketingstatus"
337
+ }]
338
+ }, {
339
+ "type": "dataset",
340
+ "title": "quota",
341
+ "name": "goals",
342
+ "columns": [{
343
+ "type": "attribute",
344
+ "name": "quotatype",
345
+ "title": "Quota Type",
346
+ "gd_data_type": "VARCHAR(128)",
347
+ "gd_type": "GDC.text"
348
+ }, {
349
+ "type": "fact",
350
+ "name": "amount",
351
+ "title": "quota amount",
352
+ "gd_data_type": "DECIMAL(12,2)"
353
+ }, {
354
+ "type": "date_fact",
355
+ "name": "mqldate",
356
+ "title": "MQL Date (Quota)",
357
+ "gd_data_type": "INT"
358
+ }, {
359
+ "type": "date_fact",
360
+ "name": "stage1plus",
361
+ "title": "SAO Date (Quota)",
362
+ "gd_data_type": "INT"
363
+ }, {
364
+ "type": "date_fact",
365
+ "name": "oppcreated",
366
+ "title": "Opp. Create (Quota)",
367
+ "gd_data_type": "INT"
368
+ }, {
369
+ "type": "date_fact",
370
+ "name": "oppclose",
371
+ "title": "Opp. Close (Quota)",
372
+ "gd_data_type": "INT"
373
+ }, {
374
+ "type": "reference",
375
+ "name": "sdrowner",
376
+ "dataset": "sdrowner"
377
+ }, {
378
+ "type": "reference",
379
+ "name": "amounttype",
380
+ "dataset": "amounttype"
381
+ }, {
382
+ "type": "reference",
383
+ "name": "product",
384
+ "dataset": "product"
385
+ }, {
386
+ "type": "reference",
387
+ "name": "sourcingorigin",
388
+ "dataset": "sourcingorigin"
389
+ }, {
390
+ "type": "reference",
391
+ "name": "activity_owner",
392
+ "dataset": "activity_owner"
393
+ }, {
394
+ "type": "reference",
395
+ "name": "opp_owner",
396
+ "dataset": "opp_owner"
397
+ }, {
398
+ "type": "reference",
399
+ "name": "bookingtype",
400
+ "dataset": "bookingtype"
401
+ }, {
402
+ "type": "date",
403
+ "name": "activity",
404
+ "dataset": "activity"
405
+ }, {
406
+ "type": "date",
407
+ "name": "oppclose",
408
+ "dataset": "oppclose"
409
+ }, {
410
+ "type": "date",
411
+ "name": "oppcreated",
412
+ "dataset": "oppcreated"
413
+ }, {
414
+ "type": "date",
415
+ "name": "stage1plus",
416
+ "dataset": "stage1plus"
417
+ }, {
418
+ "type": "date",
419
+ "name": "mqldate",
420
+ "dataset": "mqldate"
421
+ }, {
422
+ "type": "date",
423
+ "name": "s2o",
424
+ "dataset": "s2o"
425
+ }]
426
+ }, {
427
+ "type": "dataset",
428
+ "title": "timeline",
429
+ "name": "timeline",
430
+ "columns": [{
431
+ "type": "date_fact",
432
+ "name": "timeline",
433
+ "title": "Timeline (Date)",
434
+ "gd_data_type": "INT"
435
+ }, {
436
+ "type": "date",
437
+ "name": "timeline",
438
+ "dataset": "timeline"
439
+ }]
440
+ }, {
441
+ "type": "dataset",
442
+ "title": "activity_monitoring",
443
+ "name": "activity_monitoring",
444
+ "columns": [{
445
+ "type": "date_fact",
446
+ "name": "opp_created_date",
447
+ "title": "Opp. Created (Date) for Activity",
448
+ "gd_data_type": "INT"
449
+ }, {
450
+ "type": "date_fact",
451
+ "name": "opp_close_date",
452
+ "title": "Opp. Close (Date) for Activity",
453
+ "gd_data_type": "INT"
454
+ }, {
455
+ "type": "date_fact",
456
+ "name": "activity_date",
457
+ "title": "Activity (Date)",
458
+ "gd_data_type": "INT"
459
+ }, {
460
+ "type": "reference",
461
+ "name": "account",
462
+ "dataset": "account"
463
+ }, {
464
+ "type": "reference",
465
+ "name": "product",
466
+ "dataset": "product"
467
+ }, {
468
+ "type": "reference",
469
+ "name": "activity_owner",
470
+ "dataset": "activity_owner"
471
+ }, {
472
+ "type": "reference",
473
+ "name": "stage",
474
+ "dataset": "stage"
475
+ }, {
476
+ "type": "reference",
477
+ "name": "opp_owner",
478
+ "dataset": "opp_owner"
479
+ }, {
480
+ "type": "reference",
481
+ "name": "activity",
482
+ "dataset": "activity"
483
+ }, {
484
+ "type": "reference",
485
+ "name": "opportunity",
486
+ "dataset": "opportunity"
487
+ }, {
488
+ "type": "reference",
489
+ "name": "bookingtype",
490
+ "dataset": "bookingtype"
491
+ }, {
492
+ "type": "date",
493
+ "name": "activity",
494
+ "dataset": "activity"
495
+ }, {
496
+ "type": "date",
497
+ "name": "oppclose",
498
+ "dataset": "oppclose"
499
+ }, {
500
+ "type": "date",
501
+ "name": "oppcreated",
502
+ "dataset": "oppcreated"
503
+ }]
504
+ }, {
505
+ "type": "dataset",
506
+ "title": "opp_records",
507
+ "name": "opp_records",
508
+ "columns": [{
509
+ "type": "anchor",
510
+ "name": "factsof",
511
+ "title": "Records of opp_records",
512
+ "gd_data_type": "VARCHAR(128)",
513
+ "gd_type": "GDC.text"
514
+ }, {
515
+ "type": "label",
516
+ "reference": "factsof",
517
+ "name": "opp_records_conctn_point",
518
+ "title": "opp_records_conctn_point",
519
+ "gd_data_type": "VARCHAR(128)",
520
+ "gd_type": "GDC.text"
521
+ }, {
522
+ "type": "fact",
523
+ "name": "amount",
524
+ "gd_data_type": "DECIMAL(12,2)"
525
+ }, {
526
+ "type": "fact",
527
+ "name": "probability",
528
+ "gd_data_type": "DECIMAL(12,2)"
529
+ }, {
530
+ "type": "date_fact",
531
+ "name": "created_date",
532
+ "title": "Opp. Created (Date)",
533
+ "gd_data_type": "INT"
534
+ }, {
535
+ "type": "date_fact",
536
+ "name": "close_date",
537
+ "title": "Opp. Close (Date)",
538
+ "gd_data_type": "INT"
539
+ }, {
540
+ "type": "date_fact",
541
+ "name": "stage1plus",
542
+ "title": "SAO (date)",
543
+ "gd_data_type": "INT"
544
+ }, {
545
+ "type": "date_fact",
546
+ "name": "leadcreate",
547
+ "title": "Lead Created (Date)",
548
+ "gd_data_type": "INT"
549
+ }, {
550
+ "type": "date_fact",
551
+ "name": "mqldate",
552
+ "title": "MQL (Date)",
553
+ "gd_data_type": "INT"
554
+ }, {
555
+ "type": "date_fact",
556
+ "name": "firstcontactdate",
557
+ "title": "Contact (Date)",
558
+ "gd_data_type": "INT"
559
+ }, {
560
+ "type": "date_fact",
561
+ "name": "laststage0plus",
562
+ "title": "Last Stage 0 Plus",
563
+ "gd_data_type": "INT"
564
+ }, {
565
+ "type": "fact",
566
+ "name": "mrr",
567
+ "title": "Straight Line MRR",
568
+ "gd_data_type": "DECIMAL(12,2)"
569
+ }, {
570
+ "type": "fact",
571
+ "name": "distributed_mrr",
572
+ "title": "Ending MRR",
573
+ "gd_data_type": "DECIMAL(12,2)"
574
+ }, {
575
+ "type": "fact",
576
+ "name": "freemonths",
577
+ "title": "Free Months",
578
+ "gd_data_type": "DECIMAL(12,2)"
579
+ }, {
580
+ "type": "date_fact",
581
+ "name": "effectivecontractstart",
582
+ "title": "Contract Start (Date)",
583
+ "gd_data_type": "INT"
584
+ }, {
585
+ "type": "date_fact",
586
+ "name": "effectivecontractend",
587
+ "title": "Contract End (Date)",
588
+ "gd_data_type": "INT"
589
+ }, {
590
+ "type": "fact",
591
+ "name": "upsellcmrr",
592
+ "title": "Upsell CMRR",
593
+ "gd_data_type": "DECIMAL(12,2)"
594
+ }, {
595
+ "type": "fact",
596
+ "name": "downsellcmrr",
597
+ "title": "Downsell CMRR",
598
+ "gd_data_type": "DECIMAL(12,2)"
599
+ }, {
600
+ "type": "fact",
601
+ "name": "upliftcmrr",
602
+ "title": "Uplift CMRR",
603
+ "gd_data_type": "DECIMAL(12,2)"
604
+ }, {
605
+ "type": "fact",
606
+ "name": "churncmrr",
607
+ "title": "Churn CMRR",
608
+ "gd_data_type": "DECIMAL(12,2)"
609
+ }, {
610
+ "type": "date_fact",
611
+ "name": "firstmeeting",
612
+ "title": "First Meeting (Date)",
613
+ "gd_data_type": "INT"
614
+ }, {
615
+ "type": "date_fact",
616
+ "name": "s2o",
617
+ "title": "S2O (Date)",
618
+ "gd_data_type": "INT"
619
+ }, {
620
+ "type": "reference",
621
+ "name": "sdrowner",
622
+ "dataset": "sdrowner"
623
+ }, {
624
+ "type": "reference",
625
+ "name": "leadsourceoriginal",
626
+ "dataset": "leadsourceoriginal"
627
+ }, {
628
+ "type": "reference",
629
+ "name": "account",
630
+ "dataset": "account"
631
+ }, {
632
+ "type": "reference",
633
+ "name": "amounttype",
634
+ "dataset": "amounttype"
635
+ }, {
636
+ "type": "reference",
637
+ "name": "product",
638
+ "dataset": "product"
639
+ }, {
640
+ "type": "reference",
641
+ "name": "renewalstatus",
642
+ "dataset": "renewalstatus"
643
+ }, {
644
+ "type": "reference",
645
+ "name": "sourcingorigin",
646
+ "dataset": "sourcingorigin"
647
+ }, {
648
+ "type": "reference",
649
+ "name": "sdrperformancestatus",
650
+ "dataset": "sdrperformancestatus"
651
+ }, {
652
+ "type": "reference",
653
+ "name": "leadsource",
654
+ "dataset": "leadsource"
655
+ }, {
656
+ "type": "reference",
657
+ "name": "winlossreason",
658
+ "dataset": "winlossreason"
659
+ }, {
660
+ "type": "reference",
661
+ "name": "productline",
662
+ "dataset": "productline"
663
+ }, {
664
+ "type": "reference",
665
+ "name": "leadchannel",
666
+ "dataset": "leadchannel"
667
+ }, {
668
+ "type": "reference",
669
+ "name": "stage",
670
+ "dataset": "stage"
671
+ }, {
672
+ "type": "reference",
673
+ "name": "opp_owner",
674
+ "dataset": "opp_owner"
675
+ }, {
676
+ "type": "reference",
677
+ "name": "opportunity",
678
+ "dataset": "opportunity"
679
+ }, {
680
+ "type": "reference",
681
+ "name": "bookingtype",
682
+ "dataset": "bookingtype"
683
+ }, {
684
+ "type": "reference",
685
+ "name": "forecast",
686
+ "dataset": "forecast"
687
+ }, {
688
+ "type": "date",
689
+ "name": "leadcreate",
690
+ "dataset": "leadcreate"
691
+ }, {
692
+ "type": "date",
693
+ "name": "oppclose",
694
+ "dataset": "oppclose"
695
+ }, {
696
+ "type": "date",
697
+ "name": "oppcreated",
698
+ "dataset": "oppcreated"
699
+ }, {
700
+ "type": "date",
701
+ "name": "stage1plus",
702
+ "dataset": "stage1plus"
703
+ }, {
704
+ "type": "date",
705
+ "name": "firstcontactdate",
706
+ "dataset": "firstcontactdate"
707
+ }, {
708
+ "type": "date",
709
+ "name": "mqldate",
710
+ "dataset": "mqldate"
711
+ }, {
712
+ "type": "date",
713
+ "name": "s2o",
714
+ "dataset": "s2o"
715
+ }, {
716
+ "type": "date",
717
+ "name": "firstmeeting",
718
+ "dataset": "firstmeeting"
719
+ }, {
720
+ "type": "date",
721
+ "name": "effectivecontractstart",
722
+ "dataset": "effectivecontractstart"
723
+ }, {
724
+ "type": "date",
725
+ "name": "laststage0plus",
726
+ "dataset": "laststage0plus"
727
+ }, {
728
+ "type": "date",
729
+ "name": "effectivecontractend",
730
+ "dataset": "effectivecontractend"
731
+ }]
732
+ }, {
733
+ "type": "dataset",
734
+ "title": "SDR Owner",
735
+ "name": "sdrowner",
736
+ "columns": [{
737
+ "type": "anchor",
738
+ "name": "sdrowner",
739
+ "title": "SDR Owner",
740
+ "gd_data_type": "VARCHAR(128)",
741
+ "gd_type": "GDC.text"
742
+ }, {
743
+ "type": "label",
744
+ "reference": "sdrowner",
745
+ "name": "sdrownername",
746
+ "title": "SDR Owner Name",
747
+ "gd_data_type": "VARCHAR(128)",
748
+ "gd_type": "GDC.text"
749
+ }, {
750
+ "type": "attribute",
751
+ "name": "sdrteam",
752
+ "title": "SDR Team",
753
+ "gd_data_type": "VARCHAR(128)",
754
+ "gd_type": "GDC.text"
755
+ }]
756
+ }, {
757
+ "type": "dataset",
758
+ "title": "Lead Source Original",
759
+ "name": "leadsourceoriginal",
760
+ "columns": [{
761
+ "type": "anchor",
762
+ "name": "leadsourceoriginal",
763
+ "title": "Lead Source Original",
764
+ "gd_data_type": "VARCHAR(128)",
765
+ "gd_type": "GDC.text"
766
+ }, {
767
+ "type": "attribute",
768
+ "name": "leadcategory",
769
+ "title": "Lead Source Original Category",
770
+ "gd_data_type": "VARCHAR(128)",
771
+ "gd_type": "GDC.text"
772
+ }]
773
+ }, {
774
+ "type": "dataset",
775
+ "title": "account",
776
+ "name": "account",
777
+ "columns": [{
778
+ "type": "anchor",
779
+ "name": "id",
780
+ "title": "Account",
781
+ "gd_data_type": "VARCHAR(128)",
782
+ "gd_type": "GDC.text"
783
+ }, {
784
+ "type": "label",
785
+ "reference": "id",
786
+ "name": "name",
787
+ "title": "Account Name",
788
+ "gd_data_type": "VARCHAR(128)",
789
+ "gd_type": "GDC.text"
790
+ }, {
791
+ "type": "label",
792
+ "reference": "id",
793
+ "name": "url",
794
+ "title": "Account Url",
795
+ "gd_data_type": "VARCHAR(128)",
796
+ "gd_type": "GDC.link"
797
+ }, {
798
+ "type": "attribute",
799
+ "name": "region",
800
+ "title": "Account Region",
801
+ "gd_data_type": "VARCHAR(128)",
802
+ "gd_type": "GDC.text"
803
+ }, {
804
+ "type": "attribute",
805
+ "name": "accountstage",
806
+ "title": "Account Stage",
807
+ "gd_data_type": "VARCHAR(128)",
808
+ "gd_type": "GDC.text"
809
+ }, {
810
+ "type": "attribute",
811
+ "name": "accountownername",
812
+ "title": "Account Owner Name",
813
+ "gd_data_type": "VARCHAR(128)",
814
+ "gd_type": "GDC.text"
815
+ }, {
816
+ "type": "attribute",
817
+ "name": "accountindustry",
818
+ "title": "Account Industry",
819
+ "gd_data_type": "VARCHAR(128)",
820
+ "gd_type": "GDC.text"
821
+ }, {
822
+ "type": "attribute",
823
+ "name": "accountemployeecount",
824
+ "title": "Account Employee Count",
825
+ "gd_data_type": "VARCHAR(128)",
826
+ "gd_type": "GDC.text"
827
+ }, {
828
+ "type": "label",
829
+ "reference": "accountemployeecount",
830
+ "name": "employeecountsort",
831
+ "title": "Employee Count Sort",
832
+ "gd_data_type": "INT",
833
+ "gd_type": "GDC.text"
834
+ }, {
835
+ "type": "attribute",
836
+ "name": "accountannualrevenue",
837
+ "title": "Account Annual Revenue",
838
+ "gd_data_type": "VARCHAR(128)",
839
+ "gd_type": "GDC.text"
840
+ }]
841
+ }, {
842
+ "type": "dataset",
843
+ "title": "Revenue Type",
844
+ "name": "amounttype",
845
+ "columns": [{
846
+ "type": "anchor",
847
+ "name": "amounttype",
848
+ "title": "Revenue Type",
849
+ "gd_data_type": "VARCHAR(128)",
850
+ "gd_type": "GDC.text"
851
+ }]
852
+ }, {
853
+ "type": "dataset",
854
+ "title": "product",
855
+ "name": "product",
856
+ "columns": [{
857
+ "type": "anchor",
858
+ "name": "id",
859
+ "title": "Product",
860
+ "gd_data_type": "VARCHAR(128)",
861
+ "gd_type": "GDC.text"
862
+ }, {
863
+ "type": "label",
864
+ "reference": "id",
865
+ "name": "name",
866
+ "title": "Product Name",
867
+ "gd_data_type": "VARCHAR(128)",
868
+ "gd_type": "GDC.text"
869
+ }, {
870
+ "type": "attribute",
871
+ "name": "product_type",
872
+ "gd_data_type": "VARCHAR(128)",
873
+ "gd_type": "GDC.text"
874
+ }]
875
+ }, {
876
+ "type": "dataset",
877
+ "title": "Renewal Status",
878
+ "name": "renewalstatus",
879
+ "columns": [{
880
+ "type": "anchor",
881
+ "name": "renewalstatus",
882
+ "title": "Renewal Status",
883
+ "gd_data_type": "VARCHAR(128)",
884
+ "gd_type": "GDC.text"
885
+ }]
886
+ }, {
887
+ "type": "dataset",
888
+ "title": "Sourcing Type",
889
+ "name": "sourcingorigin",
890
+ "columns": [{
891
+ "type": "anchor",
892
+ "name": "techsourcingtype",
893
+ "title": "_Tech Sourcing Type",
894
+ "gd_data_type": "VARCHAR(128)",
895
+ "gd_type": "GDC.text"
896
+ }, {
897
+ "type": "attribute",
898
+ "name": "sourcingtype",
899
+ "title": "Sourcing Type",
900
+ "gd_data_type": "VARCHAR(128)",
901
+ "gd_type": "GDC.text"
902
+ }, {
903
+ "type": "attribute",
904
+ "name": "sourcingtypechannel",
905
+ "title": "Sourcing Type Channel",
906
+ "gd_data_type": "VARCHAR(128)",
907
+ "gd_type": "GDC.text"
908
+ }, {
909
+ "type": "attribute",
910
+ "name": "sourcingtypeteam",
911
+ "title": "Sourcing Type Team",
912
+ "gd_data_type": "VARCHAR(128)",
913
+ "gd_type": "GDC.text"
914
+ }, {
915
+ "type": "label",
916
+ "reference": "sourcingtypeteam",
917
+ "name": "sourcingtypeteamname",
918
+ "title": "Sourcing Type Team Name",
919
+ "gd_data_type": "VARCHAR(128)",
920
+ "gd_type": "GDC.text"
921
+ }]
922
+ }, {
923
+ "type": "dataset",
924
+ "title": "SDR Performance Status",
925
+ "name": "sdrperformancestatus",
926
+ "columns": [{
927
+ "type": "anchor",
928
+ "name": "sdrperformancestatus",
929
+ "title": "SDR Performance Status",
930
+ "gd_data_type": "VARCHAR(128)",
931
+ "gd_type": "GDC.text"
932
+ }]
933
+ }, {
934
+ "type": "dataset",
935
+ "title": "Consolidated Marketing Status",
936
+ "name": "consolidatedmarketingstatus",
937
+ "columns": [{
938
+ "type": "anchor",
939
+ "name": "consolidatedmarketingstatus",
940
+ "title": "_TECH Consolidated Marketing Status (Conctn_Point)",
941
+ "gd_data_type": "VARCHAR(128)",
942
+ "gd_type": "GDC.text"
943
+ }, {
944
+ "type": "label",
945
+ "reference": "consolidatedmarketingstatus",
946
+ "name": "mktgstatussorting",
947
+ "title": "_Mktg Status Sorting",
948
+ "gd_data_type": "INT",
949
+ "gd_type": "GDC.text"
950
+ }, {
951
+ "type": "attribute",
952
+ "name": "detailedmarketingstatuslvl1",
953
+ "title": "Detailed Marketing Status (Lvl1)",
954
+ "gd_data_type": "VARCHAR(128)",
955
+ "gd_type": "GDC.text"
956
+ }, {
957
+ "type": "label",
958
+ "reference": "detailedmarketingstatuslvl1",
959
+ "name": "ordersort1",
960
+ "title": "_Order Sort",
961
+ "gd_data_type": "INT",
962
+ "gd_type": "GDC.text"
963
+ }, {
964
+ "type": "attribute",
965
+ "name": "consolidatedmarketingstatus1",
966
+ "title": "Consolidated Marketing Status",
967
+ "gd_data_type": "VARCHAR(128)",
968
+ "gd_type": "GDC.text"
969
+ }, {
970
+ "type": "label",
971
+ "reference": "consolidatedmarketingstatus1",
972
+ "name": "ordersort2",
973
+ "title": "Order Sort 2",
974
+ "gd_data_type": "INT",
975
+ "gd_type": "GDC.text"
976
+ }, {
977
+ "type": "attribute",
978
+ "name": "consolidatedsqltos2o",
979
+ "title": "Consolidated Status SQL to S2O",
980
+ "gd_data_type": "VARCHAR(128)",
981
+ "gd_type": "GDC.text"
982
+ }, {
983
+ "type": "label",
984
+ "reference": "consolidatedsqltos2o",
985
+ "name": "ordersortsqltos2o",
986
+ "title": "Order Sort SQL to S2O",
987
+ "gd_data_type": "VARCHAR(128)",
988
+ "gd_type": "GDC.text"
989
+ }]
990
+ }, {
991
+ "type": "dataset",
992
+ "title": "activity_owner",
993
+ "name": "activity_owner",
994
+ "columns": [{
995
+ "type": "anchor",
996
+ "name": "id",
997
+ "title": "Act. Owner",
998
+ "gd_data_type": "VARCHAR(128)",
999
+ "gd_type": "GDC.text"
1000
+ }, {
1001
+ "type": "label",
1002
+ "reference": "id",
1003
+ "name": "name",
1004
+ "title": "Act. Owner Name",
1005
+ "gd_data_type": "VARCHAR(128)",
1006
+ "gd_type": "GDC.text"
1007
+ }, {
1008
+ "type": "label",
1009
+ "reference": "id",
1010
+ "name": "url",
1011
+ "title": "Act. Owner Url",
1012
+ "gd_data_type": "VARCHAR(128)",
1013
+ "gd_type": "GDC.link"
1014
+ }, {
1015
+ "type": "attribute",
1016
+ "name": "region",
1017
+ "title": "Act. Owner Region",
1018
+ "gd_data_type": "VARCHAR(128)",
1019
+ "gd_type": "GDC.text"
1020
+ }, {
1021
+ "type": "attribute",
1022
+ "name": "department",
1023
+ "title": "Act. Owner Department",
1024
+ "gd_data_type": "VARCHAR(128)",
1025
+ "gd_type": "GDC.text"
1026
+ }, {
1027
+ "type": "attribute",
1028
+ "name": "is_sdr",
1029
+ "title": "is_sdr",
1030
+ "gd_data_type": "VARCHAR(128)",
1031
+ "gd_type": "GDC.text"
1032
+ }]
1033
+ }, {
1034
+ "type": "dataset",
1035
+ "title": "Lead Source",
1036
+ "name": "leadsource",
1037
+ "columns": [{
1038
+ "type": "anchor",
1039
+ "name": "leadsource",
1040
+ "title": "Lead Source",
1041
+ "gd_data_type": "VARCHAR(128)",
1042
+ "gd_type": "GDC.text"
1043
+ }]
1044
+ }, {
1045
+ "type": "dataset",
1046
+ "title": "Win/Loss Reason",
1047
+ "name": "winlossreason",
1048
+ "columns": [{
1049
+ "type": "anchor",
1050
+ "name": "winlossreason",
1051
+ "title": "_Tech Win/Loss Reason",
1052
+ "gd_data_type": "VARCHAR(128)",
1053
+ "gd_type": "GDC.text"
1054
+ }, {
1055
+ "type": "attribute",
1056
+ "name": "winlossreason1",
1057
+ "title": "Win/Loss Reason",
1058
+ "gd_data_type": "VARCHAR(128)",
1059
+ "gd_type": "GDC.text"
1060
+ }, {
1061
+ "type": "attribute",
1062
+ "name": "secondarywinlossreason",
1063
+ "title": "Secondary Win/Loss Reason",
1064
+ "gd_data_type": "VARCHAR(128)",
1065
+ "gd_type": "GDC.text"
1066
+ }]
1067
+ }, {
1068
+ "type": "dataset",
1069
+ "title": "Product Line",
1070
+ "name": "productline",
1071
+ "columns": [{
1072
+ "type": "anchor",
1073
+ "name": "productline",
1074
+ "title": "_Product Line (ID)",
1075
+ "gd_data_type": "VARCHAR(128)",
1076
+ "gd_type": "GDC.text"
1077
+ }, {
1078
+ "type": "attribute",
1079
+ "name": "productline1",
1080
+ "title": "Product Line",
1081
+ "gd_data_type": "VARCHAR(128)",
1082
+ "gd_type": "GDC.text"
1083
+ }, {
1084
+ "type": "attribute",
1085
+ "name": "prod",
1086
+ "title": "Primary PL Solution",
1087
+ "gd_data_type": "VARCHAR(128)",
1088
+ "gd_type": "GDC.text"
1089
+ }, {
1090
+ "type": "attribute",
1091
+ "name": "productorspecificsolution",
1092
+ "title": "Product or Specific Solution",
1093
+ "gd_data_type": "VARCHAR(128)",
1094
+ "gd_type": "GDC.text"
1095
+ }]
1096
+ }, {
1097
+ "type": "dataset",
1098
+ "title": "Lead Channel",
1099
+ "name": "leadchannel",
1100
+ "columns": [{
1101
+ "type": "anchor",
1102
+ "name": "leadchannel",
1103
+ "title": "Lead Channel",
1104
+ "gd_data_type": "VARCHAR(128)",
1105
+ "gd_type": "GDC.text"
1106
+ }]
1107
+ }, {
1108
+ "type": "dataset",
1109
+ "title": "stage",
1110
+ "name": "stage",
1111
+ "columns": [{
1112
+ "type": "anchor",
1113
+ "name": "id",
1114
+ "title": "Stage",
1115
+ "gd_data_type": "VARCHAR(128)",
1116
+ "gd_type": "GDC.text"
1117
+ }, {
1118
+ "type": "label",
1119
+ "reference": "id",
1120
+ "name": "name",
1121
+ "title": "Stage Name",
1122
+ "gd_data_type": "VARCHAR(128)",
1123
+ "gd_type": "GDC.text"
1124
+ }, {
1125
+ "type": "label",
1126
+ "reference": "id",
1127
+ "name": "order",
1128
+ "gd_data_type": "INT",
1129
+ "gd_type": "GDC.text"
1130
+ }, {
1131
+ "type": "attribute",
1132
+ "name": "is_won",
1133
+ "title": "Is Won?",
1134
+ "gd_data_type": "VARCHAR(128)",
1135
+ "gd_type": "GDC.text"
1136
+ }, {
1137
+ "type": "attribute",
1138
+ "name": "status",
1139
+ "gd_data_type": "VARCHAR(128)",
1140
+ "gd_type": "GDC.text"
1141
+ }, {
1142
+ "type": "attribute",
1143
+ "name": "is_active",
1144
+ "title": "Is Active?",
1145
+ "gd_data_type": "VARCHAR(128)",
1146
+ "gd_type": "GDC.text"
1147
+ }, {
1148
+ "type": "attribute",
1149
+ "name": "is_closed",
1150
+ "title": "Is Closed?",
1151
+ "gd_data_type": "VARCHAR(128)",
1152
+ "gd_type": "GDC.text"
1153
+ }, {
1154
+ "type": "attribute",
1155
+ "name": "issao",
1156
+ "title": "Is SAO?",
1157
+ "gd_data_type": "VARCHAR(128)",
1158
+ "gd_type": "GDC.text"
1159
+ }, {
1160
+ "type": "attribute",
1161
+ "name": "amconsolidatedstage",
1162
+ "title": "AM Consolidated Stage",
1163
+ "gd_data_type": "VARCHAR(128)",
1164
+ "gd_type": "GDC.text"
1165
+ }, {
1166
+ "type": "label",
1167
+ "reference": "amconsolidatedstage",
1168
+ "name": "amstageorder",
1169
+ "title": "_AM Stage Order",
1170
+ "gd_data_type": "VARCHAR(128)",
1171
+ "gd_type": "GDC.text"
1172
+ }]
1173
+ }, {
1174
+ "type": "dataset",
1175
+ "title": "opp_owner",
1176
+ "name": "opp_owner",
1177
+ "columns": [{
1178
+ "type": "anchor",
1179
+ "name": "id",
1180
+ "title": "Opp. Owner",
1181
+ "gd_data_type": "VARCHAR(128)",
1182
+ "gd_type": "GDC.text"
1183
+ }, {
1184
+ "type": "label",
1185
+ "reference": "id",
1186
+ "name": "name",
1187
+ "title": "Opp. Owner Name",
1188
+ "gd_data_type": "VARCHAR(128)",
1189
+ "gd_type": "GDC.text"
1190
+ }, {
1191
+ "type": "label",
1192
+ "reference": "id",
1193
+ "name": "oppownerpicture",
1194
+ "title": "Opp. Owner Picture",
1195
+ "gd_data_type": "VARCHAR(128)",
1196
+ "gd_type": "GDC.text"
1197
+ }, {
1198
+ "type": "label",
1199
+ "reference": "id",
1200
+ "name": "url",
1201
+ "title": "Opp. Owner Url",
1202
+ "gd_data_type": "VARCHAR(128)",
1203
+ "gd_type": "GDC.link"
1204
+ }, {
1205
+ "type": "attribute",
1206
+ "name": "region",
1207
+ "title": "Opp. Owner Region",
1208
+ "gd_data_type": "VARCHAR(128)",
1209
+ "gd_type": "GDC.text"
1210
+ }, {
1211
+ "type": "attribute",
1212
+ "name": "department",
1213
+ "title": "Opp. Owner Department",
1214
+ "gd_data_type": "VARCHAR(128)",
1215
+ "gd_type": "GDC.text"
1216
+ }, {
1217
+ "type": "date",
1218
+ "name": "oppownerstart",
1219
+ "dataset": "oppownerstart"
1220
+ }]
1221
+ }, {
1222
+ "type": "dataset",
1223
+ "title": "activity",
1224
+ "name": "activity",
1225
+ "columns": [{
1226
+ "type": "anchor",
1227
+ "name": "id",
1228
+ "title": "Activity",
1229
+ "gd_data_type": "VARCHAR(128)",
1230
+ "gd_type": "GDC.text"
1231
+ }, {
1232
+ "type": "label",
1233
+ "reference": "id",
1234
+ "name": "subject",
1235
+ "title": "Activity Subject",
1236
+ "gd_data_type": "VARCHAR(128)",
1237
+ "gd_type": "GDC.text"
1238
+ }, {
1239
+ "type": "label",
1240
+ "reference": "id",
1241
+ "name": "url",
1242
+ "title": "url",
1243
+ "gd_data_type": "VARCHAR(128)",
1244
+ "gd_type": "GDC.link"
1245
+ }, {
1246
+ "type": "attribute",
1247
+ "name": "status",
1248
+ "title": "Activity Status",
1249
+ "gd_data_type": "VARCHAR(128)",
1250
+ "gd_type": "GDC.text"
1251
+ }, {
1252
+ "type": "attribute",
1253
+ "name": "type",
1254
+ "title": "Activity Type",
1255
+ "gd_data_type": "VARCHAR(128)",
1256
+ "gd_type": "GDC.text"
1257
+ }]
1258
+ }, {
1259
+ "type": "dataset",
1260
+ "title": "opportunity",
1261
+ "name": "opportunity",
1262
+ "columns": [{
1263
+ "type": "anchor",
1264
+ "name": "id",
1265
+ "title": "Opportunity",
1266
+ "gd_data_type": "VARCHAR(128)",
1267
+ "gd_type": "GDC.text"
1268
+ }, {
1269
+ "type": "label",
1270
+ "reference": "id",
1271
+ "name": "name",
1272
+ "title": "Opp. Name",
1273
+ "gd_data_type": "VARCHAR(128)",
1274
+ "gd_type": "GDC.text"
1275
+ }, {
1276
+ "type": "label",
1277
+ "reference": "id",
1278
+ "name": "url",
1279
+ "title": "Opp. Url",
1280
+ "gd_data_type": "VARCHAR(128)",
1281
+ "gd_type": "GDC.link"
1282
+ }]
1283
+ }, {
1284
+ "type": "dataset",
1285
+ "title": "Booking Type",
1286
+ "name": "bookingtype",
1287
+ "columns": [{
1288
+ "type": "anchor",
1289
+ "name": "booking_type_id",
1290
+ "gd_data_type": "VARCHAR(128)",
1291
+ "gd_type": "GDC.text"
1292
+ }, {
1293
+ "type": "label",
1294
+ "reference": "booking_type_id",
1295
+ "name": "booking_type_nm",
1296
+ "gd_data_type": "VARCHAR(128)",
1297
+ "gd_type": "GDC.text"
1298
+ }]
1299
+ }, {
1300
+ "type": "dataset",
1301
+ "title": "forecast",
1302
+ "name": "forecast",
1303
+ "columns": [{
1304
+ "type": "anchor",
1305
+ "name": "id",
1306
+ "title": "Forecast Category",
1307
+ "gd_data_type": "VARCHAR(128)",
1308
+ "gd_type": "GDC.text"
1309
+ }, {
1310
+ "type": "label",
1311
+ "reference": "id",
1312
+ "name": "forecastcategoryordered",
1313
+ "title": "Forecast Category Ordered",
1314
+ "gd_data_type": "VARCHAR(128)",
1315
+ "gd_type": "GDC.text"
1316
+ }]
1317
+ }],
1318
+ "date_dimensions": [{
1319
+ "type": "date_dimension",
1320
+ "name": "activity"
1321
+ }, {
1322
+ "type": "date_dimension",
1323
+ "name": "leadcreate"
1324
+ }, {
1325
+ "type": "date_dimension",
1326
+ "name": "snapshot"
1327
+ }, {
1328
+ "type": "date_dimension",
1329
+ "name": "oppownerstart"
1330
+ }, {
1331
+ "type": "date_dimension",
1332
+ "name": "oppclose"
1333
+ }, {
1334
+ "type": "date_dimension",
1335
+ "name": "oppcreated"
1336
+ }, {
1337
+ "type": "date_dimension",
1338
+ "name": "stage1plus",
1339
+ "title": "SAO"
1340
+ }, {
1341
+ "type": "date_dimension",
1342
+ "name": "firstcontactdate"
1343
+ }, {
1344
+ "type": "date_dimension",
1345
+ "name": "previous_close_date"
1346
+ }, {
1347
+ "type": "date_dimension",
1348
+ "name": "mqldate",
1349
+ "title": "MQL"
1350
+ }, {
1351
+ "type": "date_dimension",
1352
+ "name": "s2o",
1353
+ "title": "S2O"
1354
+ }, {
1355
+ "type": "date_dimension",
1356
+ "name": "firstmeeting"
1357
+ }, {
1358
+ "type": "date_dimension",
1359
+ "name": "effectivecontractstart"
1360
+ }, {
1361
+ "type": "date_dimension",
1362
+ "name": "laststage0plus",
1363
+ "title": "Last Stage0Plus"
1364
+ }, {
1365
+ "type": "date_dimension",
1366
+ "name": "effectivecontractend"
1367
+ }, {
1368
+ "type": "date_dimension",
1369
+ "name": "timeline"
1370
+ }]
1371
+ }