1

ワークフローを作成し、タスク編集ページに移動すると: 画像

ワークフロー タスクのファイル (latexexemplo-2.pdf) の nodeRef を取得しようとしています。

http://localhost:8080/share/page/task-edit?taskId=activiti $20649

私はこのようにしようとしています:

var taskId = args.taskId
var task = workflow.getTaskById(taskId);
nodeRef = task.getPackageResources()[0].nodeRef;

しかし、「引数が定義されていません」...「ワークフローが定義されていません」...「タスクが定義されていません」と表示されます。

別の方法で nodeRef を取得するにはどうすればよいですか?

4

2 に答える 2

3

残念ながら、リポジトリにある情報をブラウザーでアクセスすることはできません。

手っ取り早い解決策は、既にページにある情報を直接使用することです。

ワークフローを開始し、あなたと同じようにタスク ページを開きました。ブラウザのデバッグ ツールを使用して、html を調べました。下の添付画像からわかるように、Alfresco はタスクに添付されたドキュメントを非表示の入力に保存します。YAHOO を使用して入手できます。

ID「page_x002e_data-form_x002e_task-edit_x0023_default_assoc_packageItems」を持つ要素を検索します。複数のドキュメントが関連付けられている場合、値は noderef のカンマ区切りのリストになります。最初の要素を取得しています。もちろん、これは、関連付けられているドキュメントが 1 つだけの場合にのみ、そのまま機能します。ドキュメントが関連付けられていない場合や、ドキュメントが複数ある場合も考慮する必要があります。

var nodeRef = YAHOO.util.Selector.query("#page_x002e_data-form_x002e_task-edit_x0023_default_assoc_packageItems")[0].value;

ここに画像の説明を入力

于 2016-02-07T18:59:11.760 に答える
0

Freemarker のワークフロー APIを使用して、現在割り当てられているすべてのタスクの詳細を取得できます 。

したがって、タスクのtask idまたはノードリファレンスを取得できます。

于 2017-01-19T15:13:02.807 に答える