現在、Kintoneを利用してワークフロー(稟議決裁)を開発しております。
例えば以下のように案件によって、複数のフローに分岐されます。実際には100程度のフローが想定されております。
●案件A
(甲部署)担当者起案→(甲部署)部長承認→担当取締役決裁
●案件B
(甲部署)担当者起案→(甲部署)部長決裁
●案件C
(乙部署)担当者起案→(乙部署)部長決裁→担当取締役承認→取締役会決裁
一つのアプリ内で1種類のフローを構築することができるのですが、一つのアプリ内でユーザーの案件の選択により、ワークフローを分岐させたいのですが、どのように対応するのがご存知の方がいればアドバイスをいただけると幸いです。100のアプリを構築しても、ユーザーが不便なだけなので、解決策を模索しております。標準機能でも便利なほうでAPIでも構いません。
ryoryo さん
はじめまして。ひよこです。
標準機能で、1つのアプリ内に複数のフローを設定できます。
例えば以下のように、アクションの実行条件で条件を設定すれば、案件ごとにフローを分けることはできます。
下図では、ryoryo さんの例にある案件Aと案件Bのフロー分けを設定しています。
ただ、2つのフローを分けるだけでも、画像のように複数のアクション設定が必要です。
100程度のフローを1つにアプリに定義するのは、プロセス管理設定を確認したときに分かりづらく管理が大変になるのでは?と思っています。
コメント有難うございます。詳細までアドバイスを頂き深謝を申し上げます。
なるほど、このようにして分岐をさせるのですね。とても分かりやすかったです。
確かに、100程度のフローでも管理が困難になるという印象があるので、ルート自体を見直したいと思うのですが、
他にkintoneでこのようなプロセス管理でベターなソリューションはあるのでしょうか?アプリを100個立ち上げるのも
とても管理しやすいとは思えないので、よりよい解決策があるのか、そもそもこのようなケースではkintoneは不向きなのか
アドバイスを頂けるととても嬉しいです。
宜しくお願い申し上げます。
ひよこさん
丁寧な回答、すばらしいですね!
ryoryoさん
ひよこさんの回答が、kintoneの標準的な機能を用いた、一番固い方法になると思います。それにあわせて、フローの単純化を業務改善として、進めていくという様なイメージ。
あとは他の手法として、
稟議アプリで
第一承認者
第二承認者
第三承認者。。。
というように、フィールドを配置して、レコード新規登録時に、この部分に含まれるユーザーを動的に変更するという方法があります。
理屈上は、アプリ自体には1種類の承認フローを定義(その際に、画面上の承認者フィールドを活用)、あとは、JSなりなんなりで、承認者項目に、都度必要なユーザーを代入すれば、割と柔軟なフロー対応が可能です。
実際に業務に適用しようとすると、承認ステップ総数が違ったり、場合によっては、複数承認者だったりで、もちろんケースバイケースの対応は必要ですが、一つの手法ということで、ご参考になれば幸いです。
松村様
コメントをお寄せ頂き有難うございます。
後半のアドバイスで一点、もしよければお尋ねさせてください。(KintoneでJSでカスタムを実装を未だしたことはないのですが)
イメージとして以下のようなことでしょうか?
<select name=“example1” class=“ex1”>
<option value=“submitter1”>起案者1</option>
<option value=“submitter2”>起案者2</option>
</select>
<select name=“example2” class=“ex2”>
</select>
<script>
$(function(){
$(‘[name=example1]’).change(function(){
const val = $(‘[name=example1]’).val();
})
if (val==“submitter1”){
//動的に生成する
$(‘.example2’).appned(‘<option value=“approver1”>承認者A</option>’);
}
})
</script>
このような自前のタグをフィールドに埋め込めるのか、
またJSで動的に生成したタグをどのようにサーバー側(レコード)が受取ってくれるのかがどこか参考になるページや情報は
ございますでしょうか?(CSSの追加は使うのでJSの埋め込み箇所も分かっているのですが、ここらへんの仕様がわからずに
HTMLの追加やJSの追加、レコードとの連携を調べている状況です)
申し訳ございませんが、
宜しくお願い申し上げます。
チュートリアルをご覧になるのが一番よいかと思います。
はじめようJavaScript第1回 JavaScriptとは
https://developer.cybozu.io/hc/ja/articles/115002336526
この一連のチュートリアルの後半(第11回くらいかな)は、kintoneに関する記載があるようです。