js中调用process组件的advance获取advanceExt方法是不会弹出框就可以直接流转的,这样的对于xor就有走选中的环节

如果要修改选择环节就需要有ProcessControl,执行advanceQuery是可以生成processControl的
调用advanceQuery默认的是会弹出流转对话框的,那么既要获取processControl又要控制不弹出流转对话框就可以在process组件的onBeforeAdvanceQuery事件中处理,如下:
1.在model的构成函数中定义一个实例变量this.processControl用来存储processControl

	var Model = function() {
		this.callParent();
		this.processControl = "";
	};

2.放一个按钮先调用advanceQuery,再调用advanceExt

	Model.prototype.button1_3Click = function(event) {
		var task = this.getContext().getTask();// 获取当前任务id
		this.comp("process").advanceQuery(task);// 执行advanceQuery为了获取processControl修改processControl
		this.comp("process").advanceExt(task, this.processControl);// 把修改后的processControl做参数传递

	};

3.在事件中修改processControl,阻止弹出流转对话框

	Model.prototype.processAfterAdvanceQuery = function(event) {
		// 获取processControl修改选中环节
		var processControl = event.processControl;
		var toItems = processControl.getToItems();
		if (toItems.length > 0) {
			for (var i = 0; i < toItems.length; i++) {
				// 判断是需要选择的环节通过setSelected设置为选中,不是的设置为不选择
				// 如果要判断是结束用if(toItems[i].isEnd)
				if (toItems[i].getTaskRelationValue("sActivity") == "businessActivity4") {
					toItems[i].setSelected(true);
				} else {
					toItems[i].setSelected(false);
				}
			}
			processControl.deleteUnSelectedItems();// 删除未选中的
		}
		this.processControl = processControl;// 把修改后的processControl赋值给this.processControl
		event.cancel = true;//中断流转查询不弹出流转对话框
	};