如何中止Informatica中的所有工作流程

时间:2015-11-10 19:39:32

标签: informatica abort informatica-powercenter

由于此网站上有Informatica问题,我不知道在哪里发布此内容。但目前,为了在Informatica中function widgetCallback(response) { console.log("widgetCallback; response: " + JSON.stringify(response)); var chartData = jQuery.parseJSON(response); //Some dummy values - delete later var labels = chartData['chart1']['labels']; var dataSet1Title = chartData['chart1']['dataTitle']; var dataSet2Title = chartData['chart2']['dataTitle']; var dataSet1Data = chartData['chart1']['data']; var dataSet2Data = chartData['chart2']['data']; Chart.types.Line.extend({ name: "Line2Y", getScale: function (data) { var startPoint = this.options.scaleFontSize; var endPoint = this.chart.height - (this.options.scaleFontSize * 1.5) - 5; return Chart.helpers.calculateScaleRange( data, endPoint - startPoint, this.options.scaleFontSize, this.options.scaleBeginAtZero, this.options.scaleIntegersOnly, this.options.scaleLabel); }, initialize: function (data) { var y2datasetLabels = []; var y2data = []; var y1data = []; data.datasets.forEach(function (dataset, i) { if (dataset.y2axis == true) { y2datasetLabels.push(dataset.label); y2data = y2data.concat(dataset.data); } else { y1data = y1data.concat(dataset.data); } }); // use the helper function to get the scale for both datasets var y1Scale = this.getScale(y1data); this.y2Scale = this.getScale(y2data); var normalizingFactor = y1Scale.max / this.y2Scale.max; // update y2 datasets data.datasets.forEach(function (dataset) { if (y2datasetLabels.indexOf(dataset.label) !== -1) { dataset.data.forEach(function (e, j) { dataset.data[j] = e * normalizingFactor; }) } }) // denormalize tooltip for y2 datasets this.options.multiTooltipTemplate = function (d) { if (y2datasetLabels.indexOf(d.datasetLabel) !== -1) return Math.round(d.value / normalizingFactor, 6); else return d.value; } Chart.types.Line.prototype.initialize.apply(this, arguments); }, draw: function () { this.scale.xScalePaddingLeft = 60; this.scale.xScalePaddingRight = this.scale.xScalePaddingLeft + 30; Chart.types.Line.prototype.draw.apply(this, arguments); this.chart.ctx.textAlign = "center"; this.chart.ctx.textBaseline = "bottom"; this.chart.ctx.fillStyle = "#666"; var ctx = this.chart.ctx; ctx.save(); // position var x = this.scale.xScalePaddingLeft * 0.4; var y = this.chart.height / 2; // change origin ctx.translate(x, y) // rotate text ctx.rotate(-90 * Math.PI / 180); ctx.fillText(this.datasets[0].label, 0, 0); ctx.fillText(this.datasets[1].label, 0, this.chart.width - 60); ctx.restore(); var yStep = (this.scale.endPoint - this.scale.startPoint) / this.y2Scale.steps for (var i = 0, y = this.scale.endPoint, label = this.y2Scale.min; i <= this.y2Scale.steps; i++) { this.chart.ctx.fillText(label, this.chart.width - this.scale.xScalePaddingRight + 20, y); y -= yStep; label += this.y2Scale.stepValue } } }); var lineChartData1 = { labels: labels, datasets: [{ label: dataSet1Title, fillColor: "rgba(0,255,0,0.5)", strokeColor: "rgba(0,255,0,1)", pointColor: "rgba(0,255,0,1)", pointStrokeColor: "#fff", data: dataSet1Data }, { label: dataSet2Title, fillColor: "rgba(151,187,205,0.5)", strokeColor: "rgba(151,187,205,1)", pointColor: "rgba(151,187,205,1)", pointStrokeColor: "#fff", data: dataSet2Data, y2axis: true }] } var ctx = document.getElementById("chart").getContext("2d"); var myLine1 = new Chart(ctx).Line2Y(lineChartData1, { scaleBeginAtZero: true, scaleShowGridLines: false, responsive: true, scaleShowLabels: true, showTooltips: true, tooltipTemplate: "<%= datasetLabel %>: <%= value %>" }); } var response = '{"chart1":{"data":["826","748","76","58"],"labels":["10-08","10-09","10-10","10-11"],"labelTitle":"Date","dataTitle":"Uniques","title":"Uniques"},"chart2":{"data":["2018.00","2095.40","156.00","23.76"],"labels":["10-08","10-09","10-10","10-11"],"labelTitle":"Date","dataTitle":"Revenue","title":"Revenue"},"title":"Chart Title"}'; widgetCallback(response); 工作流程,我必须右键单击每个工作流程并手动选择中止:

enter image description here

鉴于我在任何时候都有几百个工作流程处于活动状态,然后abort它们全部手动需要很长时间。

是否有程序化或预先定义的GUI允许一次中止所有工作流程?

2 个答案:

答案 0 :(得分:0)

您可以转储Integration Service。这将中止所有工作流程。

否则,您需要创建一个脚本以使用pmcmd中止工作流。

答案 1 :(得分:0)

您可以列出文件中的所有工作流程名称(或使用存储库查询从存储库中获取工作流程列表),并将每个工作流程传递给下面的pmcmd命令,该命令将使用shell脚本自动中止它。

pmcmd abortworkflow -service informatica-integration-Service -d domain-name -u user-name -p password -f folder-name -w workflow-name

pmcmd aborttask -service informatica-integration-Service -d domain-name -u user-name -p password -f folder-name -w workflow-name task-name

如果您需要任何其他帮助,请与我们联系。