見積書作成プロセス, 依頼受付公開フォーム 20211017
公開フォームで見積依頼を受け付けるワークフローです。顧客は、”商品・個数・提出先” 等の見積依頼を入力します。入力時、顧客は、自動計算された見積額を確認できます。見積依頼後、見積書PDFが自動生成されます。見積書は、顧客に自動でメール送信されます。
作業担当者 (スイムレーンの数:4)
- 見積依頼
- 見積依頼を希望されている顧客。
- 営業担当者
- 見積依頼メッセージに対応・手動で見積作成を開始する営業担当者。
- 営業部長
- 営業担当者の上司(想定)。
- CMO
- 見積最終決裁者(想定)。
仕事の流れ (ワークフロー図の複雑度:16)
- 01.作成(値引き等適用)
- 営業担当者が、見積内容(値引き情報含む)を入力します。
- 22.承認/決裁
- 営業部長が、見積を承認・決裁(値引率が50%以内)します。
- 173.決裁
- CMOが、見積を決裁します。
- 234.顧客とのコミュニケーション
- 営業担当者が、見積提出顧客とのコミュニケーションを記録します。
- 20件名セット
- ワークフロー基盤が、件名・見積種別・営業担当者をセットします。
- 21件名セット
- ワークフロー基盤が、件名・見積種別・(デフォルト)営業担当者をセットします。
- 3見積書 PDF 生成
- ワークフロー基盤が、見積内容を元に見積書 PDF を生成します。
ワークフロー図 (クリックして開く)

- BPMN Icons
- 開始イベント
- 終了イベント
- 結合ゲートウェイ
- 排他ゲートウェイ(XORゲートウェイ)
- メッセージ送信中間イベント(メール)
- メッセージ開始イベント(フォーム)
- ヒューマンタスク
- データ更新
- PDF ファイル生成
受け渡しされるビジネスプロセス変数 (データ項目の数:48)
- ◆依頼フォームガイダンス
16
- ★見積書番号q_string13
13
*- 見積番号(年月 YYYYMM と自動採番の組み合わせ)が格納されます。
- #{#format(processInstanceStartDatetime, ‘yyyyMM’)}#{#sformat(‘%03d’, processInstanceSequenceNumber)}
- ★発行日q_date26
26
*- 見積依頼日が格納されます。
- processInstanceStartDatetime
- ★有効期限q_date27
27
*- 見積依頼日 14日後の日付が格納されます。
- processInstanceStartDatetime.addDays(14)
- 企業名q_corp_name
17
*- 見積依頼者の企業名が格納されます。
- 部署・お名前q_dev_name
18
*- 見積依頼者の部署名・お名前が格納されます。
- メールアドレスq_mailAddress
54
*- 見積依頼者のメールアドレスが格納されます。
- 【見積内容】
40
- (1)品目q_purchase_name1
19
*- 見積品目が格納されます。(見積書に反映されます)
- (1)単価 jpyq_purchase_unit_price1
6
*- 指定された(1)品目の単価が格納されます。(見積書に反映されます)
- (1)個数q_purchase_count1
20
*- 見積依頼者が入力した個数が格納されます。(見積書に反映されます)
- (1)金額 jpyq_purchase_sub_price1
22
*- 見積依頼者の入力 品目・個数 から計算された金額が格納されます。(見積書に反映されます)
- (1)備考 q_purchase_detail1
29
- ◆スペーサー1/2
28
- (2)品目 q_purchase_name2
31
- (2)単価 jpy q_purchase_unit_price2
7
- (2)個数 q_purchase_count2
32
- (2)金額 jpy q_purchase_sub_price2
41
- (2)備考 q_purchase_detail2
15
- ◆スペーサー1/2
34
- (3)品目 q_purchase_name3
1
- (3)単価 jpy q_purchase_unit_price3
8
- (3)個数 q_purchase_count3
2
- (3)金額 jpy q_purchase_sub_price3
4
- (3)備考 q_purchase_detail3
21
- ◆スペーサー1/2
35
- (特)品目q_purchase_name4
12
- 営業担当者が入力した、見積品目が格納されます。(見積書に反映されます)
- (特)単価 jpy q_purchase_unit_price4
9
- (特)個数q_purchase_count4
10
- 営業担当者が入力した、個数が格納されます。(見積書に反映されます)
- (特)金額 jpyq_purchase_sub_price4
11
- 営業担当者が入力した、見積単価・個数から計算された金額が格納されます。(見積書に反映されます)
- (特)備考 q_purchase_detail4
23
- ◆スペーサー1/2
38
- 小計q_purchase_subtotal
42
- 見積明細の金額を合計した金額が格納されます。
- 消費税(10.00%)q_purchase_tax
49
- 小計に消費税率(0.1)を乗じた消費税額が格納されます。
- お支払金額(税込)q_purchase_total
50
- 小計から消費税額を加えた金額が格納されます。
- ◆スペーサー
53
- お問い合わせ・補足・ご相談・ご質問 等q_message_form_customer
3
- 見積依頼者が入力した、依頼補足メッセージが格納されます。
- ★特記事項q_string30
30
- 見積書 特記事項欄に記載される文章を格納します。
- 値引率q_discount_rate
51
- 値引率が格納されます。
- 値引理由 q_discount_reason
52
- 営業担当者q_user25
25
- 営業担当者アカウント情報が格納されます。(自動セット)
- ${processInstance.initQuserId}
- 営業担当者名q_sales_person_name
0
- 営業担当者名・メールアドレスが格納されます。(見積書に記載されます)
- 【正式見積書】
43
- 正式見積書PDFq_file14
14
- 見積書 PDF が格納されます。
- 見積書PDFファイル名q_string36
36
- 見積書 PDF のファイル名が格納されます。(自動セット)
- 正式見積書-#{#format(processInstanceStartDatetime, ‘yyyyMM’)}#{#sformat(‘%03d’, processInstanceSequenceNumber)}.pdf
- 見積種別 q_order_kind
24
- ◆Script:見積金額自動計算
5
- 通信欄q_communication
37
- 社内コミュニケーション記録が格納されます。
フィールド名, Num
, 初期値
Download
- estimate-creation-open-form20211017-ja.qar
- estimate-creation-open-form20211017-ja.csv (データ項目定義インポート用)
This archive contains the BPMN icon, which is only available in the Professional edition.
Notes
- インポート時に組織構造に合わせて、処理担当者設定の関連付けを行います
Arrangement Tips
見積りシミュレーション画面デコレーション Script (click to open)
<script>
qbpms.form.on('ready', function(){
jQuery('input[name="data[6].input"]').addClass("autocalc");
jQuery('input[name="data[7].input"]').addClass("autocalc");
jQuery('input[name="data[8].input"]').addClass("autocalc");
document.getElementsByName("data[6].input")[0].disabled = true;
document.getElementsByName("data[7].input")[0].disabled = true;
document.getElementsByName("data[8].input")[0].disabled = true;
let id;
let unitPrice;
let count;
let subTotal;
qbpms.form.on('change','q_purchase_name1',function(){
calcSubTotal('1','6');
});
qbpms.form.on('change','q_purchase_name2',function(){
calcSubTotal('2','7');
});
qbpms.form.on('change','q_purchase_name3',function(){
calcSubTotal('3','8');
});
jQuery('form[name^="workitemForm"]').bind('submit', function () {
jQuery(this).find('input[name="data[6].input"]').prop('disabled', false);
jQuery(this).find('input[name="data[7].input"]').prop('disabled', false);
jQuery(this).find('input[name="data[8].input"]').prop('disabled', false);
});
jQuery('input[id="submitButton"]').val("見積書をメールで受け取る");
function calcSubTotal(num,dnum){
document.getElementsByName("data["+dnum+"].input")[0].disabled = false;
var obj = qbpms.form.get('q_purchase_name'+num) + "";
if (!obj){
qbpms.form.set('q_purchase_unit_price'+num,null);
}else{
id = qbpms.form.get('q_purchase_name'+num)[0].value;
unitPrice = id.split('_')[1];
qbpms.form.set('q_purchase_unit_price'+num,new Number(unitPrice));
}
document.getElementsByName("data["+dnum+"].input")[0].disabled = true;
}
});
</script>
デコレーションコードは、 (ガイドパネル型) データ項目「◆Script:見積金額自動計算」に記載されています。
Capture



Appendix
See also
- アーカイブをインポートする時に必要な設定
- Reference: メッセージ開始イベント(フォーム)