From 089018e7b0c727c8eba283e257872707f9abc3e4 Mon Sep 17 00:00:00 2001 From: Zhong Wang Date: Sat, 13 Feb 2016 21:41:51 -0800 Subject: [PATCH 1/2] first attempt to implement exporting to TSV --- .../notebook/paragraph/paragraph-control.html | 3 +++ .../paragraph/paragraph.controller.js | 19 ++++++++++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html b/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html index c35c4e5ade3..7c51f3ad6f3 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-control.html @@ -82,6 +82,9 @@
  • Link this paragraph
  • +
  • + Export to TSV +
  • Clear output
  • diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index c71e096bb48..1007357f895 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -16,7 +16,7 @@ angular.module('zeppelinWebApp') .controller('ParagraphCtrl', function($scope,$rootScope, $route, $window, $element, $routeParams, $location, - $timeout, $compile, websocketMsgSrv, ngToast) { + $timeout, $compile, websocketMsgSrv, ngToast, SaveAsService) { var ANGULAR_FUNCTION_OBJECT_NAME_PREFIX = '_Z_ANGULAR_FUNC_'; $scope.parentNote = null; $scope.paragraph = null; @@ -2186,4 +2186,21 @@ angular.module('zeppelinWebApp') $scope.keepScrollDown = false; }; + $scope.exportToTSV = function () { + var data = $scope.paragraph.result + var tsv = ''; + for (var titleIndex in $scope.paragraph.result.columnNames) { + tsv += $scope.paragraph.result.columnNames[titleIndex].name + '\t'; + } + tsv = tsv.substring(0, tsv.length - 1) + '\n' + for (var r in $scope.paragraph.result.msgTable) { + var row = $scope.paragraph.result.msgTable[r]; + var tsvRow = '' + for (var index in row) { + tsvRow += row[index].value + '\t'; + } + tsv += tsvRow.substring(0, tsvRow.length - 1) + '\n' + } + SaveAsService.SaveAs(tsv, 'data', 'tsv'); + }; }); From 3c9e9e66d5f658e67a786ce59b21025010c9745f Mon Sep 17 00:00:00 2001 From: Zhong Wang Date: Sat, 13 Feb 2016 22:07:59 -0800 Subject: [PATCH 2/2] fix missing semicolons --- .../src/app/notebook/paragraph/paragraph.controller.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index 1007357f895..082501bcc38 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -2187,19 +2187,19 @@ angular.module('zeppelinWebApp') }; $scope.exportToTSV = function () { - var data = $scope.paragraph.result + var data = $scope.paragraph.result; var tsv = ''; for (var titleIndex in $scope.paragraph.result.columnNames) { tsv += $scope.paragraph.result.columnNames[titleIndex].name + '\t'; } - tsv = tsv.substring(0, tsv.length - 1) + '\n' + tsv = tsv.substring(0, tsv.length - 1) + '\n'; for (var r in $scope.paragraph.result.msgTable) { var row = $scope.paragraph.result.msgTable[r]; - var tsvRow = '' + var tsvRow = ''; for (var index in row) { tsvRow += row[index].value + '\t'; } - tsv += tsvRow.substring(0, tsvRow.length - 1) + '\n' + tsv += tsvRow.substring(0, tsvRow.length - 1) + '\n'; } SaveAsService.SaveAs(tsv, 'data', 'tsv'); };