September 2013 Archives

標準品見積提示プロセス(実装その5)

前回は、その他の設定でカテゴリーを取り上げました。つぎに通知の設定とアクセス権の設定を行っていきます。前提として、ここでは説明しませんが、cybozu.comで組織/ユーザーの設定が終わっているものとします。すなわち、kintoneの対象となっているアプリに参加する組織と人が登録されているという前提になります。

通知というのは、何かのアクションをきっかけに通知をするというもので、その条件としては、レコード追加、レコード編集、コメント書き込み、ステータスの更新、ファイル読み込みがあります。誰が何をした時誰に通知するかを設定することになります。通知はメールが飛んで行きますし、アプリのポータルでもわかります。下記のような設定になります。

通知.bmp

また、リマインダーという設定があります。これは、ある条件(通知のタイミング)になったらお知らせというかアラートを発するのですが、これが、実はパフォーマンス管理に使うことができます。つまりあるフィールド項目に条件を与えて、通知内容を設定するとそれを通知してくれます。ここでの例でいうと、見積提出期限の5日前になったら"見積作成急いでください!"という通知を担当者に送るわけです。

使い方としては期日管理が多いかもしれませんが、例えば、金額とか数量がある限度を超えたら注意をうながすということもできます。この機能を使ってパフォーマンス管理を行うようにします。リマンダーの設定は下記のようになります。
   
リマインダー.bmp

つぎは、アクセス権の設定になります。アクセス権がかけられるのは、「アプリ」「レコード」「フィールド」ごとにできます。それぞれの許可されるものが違っていて、アプリでは、レコード閲覧、レコード追加、レコード編集、レコード削除、アプリ管理、ファイル読み込み、ファイル書き出しで、レコードでは閲覧、編集、削除で、フィールドになると閲覧、編集となっています。このアクセス権によって担当者はだれなのか、責任者はだれなのかがわかるようになりますし、承認などのボタン(フィールド)は権限を持った役職者しか編集できないようにします。

さらに最近各種APIが提供されるようになってきました。その中で、「アプリのJavaScriptカスタマイズ」を行ってみましょう。その設定は、アプリの管理画面にある詳細設定を開きます。そこに「JavaScriptによるカスタマイズ」という項目がありますので、そこをクリックするとJavaScriptファイルをアップロードする画面になりますので、適用するファイルを参照ボタンから選択します。

JavaScriptファイルはもちろん自分で書くことができますが、下記のようなサンプルが用意されています。
レコード一覧でステータスに応じて書式を設定する
住所から地図を表示する
To Do をガントチャートで表示する
自動採番して、レコード登録する
経過年数を表示する
ここでは、最初の2つを実装してみます。サンプルコードの項目名を変更して適当な名前を付けておきます。「進捗一覧表」のアクティビティのステータスに応じて色が変わるようにします。そのアクティビティが完了すると文字が緑色になるように設定しました。また、住所からGoogleMapが表示できますので、例えば、依頼会社の住所とか納入先住所などを入力すると自動的にその地図が表示されるようにしました。

以上で、「標準品見積提示プロセス」の実装フェーズの説明は終わります。普通はこれで終わってしまうのですが、次回からはオペレーションについてエントリーしていきます。作っておわりではなく、使ってみてまた改善してというサイクルを回すのがゴールですので大事なところになります。
  
標準品見積提示プロセス(実装その4)

さて、一般設定、フォームの設定ときたので次は一覧の追加になります。アプリを見るときに最初に出てくるのが一覧表ですので、玄関のところをどういうものにするかを考えます。やはり最初のところですから全体を見通せるものがよいと思います。つまり案件ごとの進捗がわかるものが必要です。また、プロセスというのは案件の処理だとも言えますから、その案件がどんな内容なのかも知りたいところです。

従って、基本的な一覧表としては、プロセス進捗と案件一覧を作ります。その他にも好きなように作れますが、条件ごとでソートできる絞り込みの機能がありますのでそれを使えば、切り口を変えて一覧表をみることができます。ですから、ここでは「進捗表」と「見積案件一覧」の2つを作成します。

一覧表は、フォームの設定で配置した各フィールドとその並び順を指定することを行います。一覧の追加をクリックすると、設定したフィールドが左側に自動的に置かれていますので、それをドラッグ&ドロップで配置します。順番としては案件Noと案件名をキーにして、各アクティビティのステータスを持ってきます。登録画面(閲覧画面)でも上段にステータスを表示させましたが同じことをここでもします。登録画面では案件ごとの進捗しか見れませんが、一覧表では複数の案件を同時にみることができます。進捗表は次のように設定されます。
  
進捗表.bmp


  
次は、見積案件一覧表になります。これも同じように左側に配置されたフィールドパーツをドラッグ&ドロップで置いていきます。ここでは、案件NO 、依頼日、案件名、納入日、担当営業名、見積金額としておきます。もちろん項目は自由に追加してかまいません。見積案件一覧表は次のようになります。
  
案件一覧.bmp

  

さて、基本的な設定が終わったので、その他の設定について見ていきましょう。まずはカテゴリーです。単純なプロセスだとカテゴリーに分けなくてもいいのですが、例えば、見積プロセスでも商品が単一ではなく種類が多くなったりすると商品カテゴリーで分けたくなりますよね。そのために、カテゴリーを設定することができます。

ここでは、住宅設備を対象にしていますので、キッチン、バスルーム、洗面所、トイレというふうにカテゴライスしました。また、キッチンにも標準のものと特注のものがあるとして、階層的に分けるようにします。下記のように設定しておきます。
  
カテゴリー.bmp

  

   
標準品見積提示プロセス(実装その3)

前回までは、「見積依頼受付」「商品選択」「納期確定」というアクティビティについてプロセス要素表か該当するパーツを選んで設定を行いました。次に残りのアクティビティの設定を行います。「価格設定」です。見積書に記載する売価で非常に重要なところですね。この決め方は、一義的に決まらないし、各社各様の決め方があると思います。

ひどい場合は、営業の胸三寸で決めるなんてこともあるかもしれませんが普通はルールというものがあるはずです。それは別に明文化されいなくても何らかの形で共有化されていればよいと思います。このケースでは、外部を参照するのではなくアプリのフィールドグループの中に直接記述してしまおうというものです。こんなルールにしておきました。

見積価格の決定は次のルールに従って決定してください。
1)価格構成は、仕切り価格+営業経費+利益とする。
2)営業経費は仕切価格の20%とする。最終的には営業部長判断とする。
3)利益は、仕切価格+営業経費の30%とする。

ですから見積金額は、仕切り価格を入力すると自動的に計算するというフォーマットにしています。では仕切り価格はどう決まるのかはここでは言及していませんが、製造原価から出すかもしれませんし、仕入れ価格かもしれませんが、外部アプリからの情報に依ります。データ連携で自動的に持ってきてもかまいません。

まず、ここで入力する仕切り価格は、数値というパーツを持ってきます。そして、このああと計算に使いますので、フィールドコードをわかりやすいように「仕切り価格」としておきます。(何もしないと数値_1といったように自動的にふられています)営業経費、利益、見積価格はそれぞれが計算されるものなので、計算というパーツを選択します。この場合の設定は、例えば営業経費であれば、フィールド名は「営業経費」となり、計算式のフィードには「仕切り価格*0.2」というふうに登録します。表示形式を選んでここでもフィールドコードを「営業経費」としておきます。価格決定のアクティビティは次のようになります。

価格決定.bmp


次は見積書作成アクティビティです。いわゆる作業のアクティビティで、前段の意思決定にに従って要求に対する報告を作成する作業になります。ここでは、見積書を作成するのに必要なデータが決定されたかどうかのチェックをするようにします。複数のチェックになりますのでチェックボタンのパーツを使います。また、作成された見積書がどんなものであるかがわかるように添付ボタンを付けて参照できるようにしておきます。見積書のような帳票はkintonで作るは無理なので、Excelや帳票ツールで作成したものを添付します。

最後は、見積書送付です。ここの確定データは送付日にしてあります。ステータスだけでもいいのですが、日付と送付先のほうが確実なのでそうしてあります。見積書作成と見積書送付のアクティビティは下記のようになります。

見積書作成.bmp

次に、各アクティビティのステータス表示をどうするかという問題があります。それぞれのフィールドグループの最後に置いても構わないのですが、折りたたんでしまうと見えなくなってしまうので、プロセスの進捗がわかるように全体の頭のところに横に並べることにしました。それぞれステータス表示で設定した名称を入れたドロップダウンパーツを並べておきます。以上で基本的なフォーム設定は終わります。
  
ステータス.bmp
  

標準品見積提示プロセス(実装その2)

前回は「見積依頼受付」というアクティビティのフォーム設定を行いました。次は「プロセス要素表」の2番めにある「商品選択」というアクティビティになります。前と同じようにグループというパーツをドラッグアンドドロップして名前を「商品選択」と入力します。次にプロセス要素の中の確定データをみると、タイプ、扉グループ、間口、数量となっています。

タイプは、それほど数があるわけではなく決まったものが数種類なのでラジオボタンを選択します。フィールド名をタイプとし、項目と順番にAAとASという名前を登録します。扉グループは、比較的数が多いので、ラジオボタンだとずらっと並んで表示されるので、ドロップダウンを使うことにします。1Aだとか2Bだとかといった設定を行います。間口も同様な設定となります。数量は数値データですので数値というパーツにします。

次に、参照情報が商品カタログとなっています。商品カタログがどこにあるのかで設定も変わってくるのですが、ここではHP上にアップしてある商品カタログを参照して、お客さんの要求にあったタイプ、扉グループ、間口を選定するということにします。この場合、ラベルというパーツを使います。ラベルに書いた文章の言葉にリンクを貼ることにします。"商品カタログ参照"という中の商品カタログにリンクを設定し、参照先のURLを入力します。「商品選択」は次のようなフォームとなります。

商品選択.bmp

「商品選択」の次は「納期確定」になります。確定データは納入日ですから、日付というパーツを選択し、名前を納入日とします。付帯登録情報として、納入場所、納入条件、商品確保があります。納入場所と納入条件は文字列パーツを使い、商品確保は、依頼中なのか確保済みなのかの2通りなのでラジオボタンにします。納入場所も住所を入れると地図が表示されるようにしたかったら、依頼受付アクティビティと同様にGoogleマップと連動させることもできます。

参照情報の在庫状況は前の商品カタログと同様にラベルでリンクを貼っていますが、同じkintoneに用意してある在庫管理アプリをリンク先にしてあります。ですから、もしリンクではなく、「見積依頼受付」でやったようにルックアップを使って、商品が入力されたら、自動的に在庫数を表示させることもできます。結局、「納期確定」というアクティビティは次のようになります。
  
納期確定.bmp