今回はあるユーザさんからのお悩みにお応えしたカスタマイズです。
お悩みとしては、「毎月決まった日に社員のみなさんに教訓的なメッセージをChatterで投稿したい」というものです。
それも「プログラミングなしで標準設定だけでなんとかならないか」という注文付き。ホームコンポーネント お知らせを都度修正していくのも面倒でとのこと。確かに現実的ではないです。そこをなんとかやってみたのでプロセスビルダーと2つのカスタムオブジェクトを利用してお悩み解決してみたのでそちらをご紹介します。
完成イメージ
完成時の動きの概略図はこんな感じになります。
① 「お知らせ管理」オブジェクトに メッセージ管理用のタイトルとメッセージを登録
② 「お知らせ発行」オブジェクトに メッセージを送りたい日時を登録
③ お知らせグループへ指定日の9時に自動的に投稿される
作ってみよう
作業自体はいたって簡単、準備するのは大きく以下の4つです。
【手順1】 カスタムオブジェクト「お知らせ管理」
【手順2】 カスタムオブジェクト「お知らせ発行」
【手順3】 Chatterグループ「お知らせ」
【手順4】 プロセスビルダー プロセス「お知らせChatter予約投稿」
【手順1】
「お知らせ管理」オブジェクトは以下カスタム項目を作ってください。
◆カスタムオブジェクト 「お知らせ管理」
No | 項目の表示ラベル | データ型 |
---|---|---|
1 | お知らせ内容 | テキストエリア(255) |
【手順2】
②「お知らせ発行」オブジェクトは以下の通りです。
◆カスタムオブジェクト 「お知らせ発行」
No | 項目の表示ラベル | データ型 |
---|---|---|
1 | お知らせ内容 | テキストエリア(255) |
2 | 発行日 | 日付 |
3 | お知らせ発行内容 | クロスオブジェクト数式 |
なお「発行日」は必須設定としてください。
【手順3】
Chatterグループに、公開グループ「お知らせ」を作成します。
【手順4】
公開グループ「お知らせ」に自動投稿するためのプロセスビルダーを作成します。
プロセスビルダーからプロセスの作成方法は、他のブログ記事でも記載があるので割愛し、設定内容をポイントだけ解説します。
<<全体像>>
お知らせ発行オブジェクトが作成されたら 0日後にChatter投稿するといったシンプルな作りです。
ポイント① 開始タイミングの指定
必ず「レコードを作成したときのみ」 を選択してください。
「レコードを作成または編集したとき」を選んでしまうと、フロー図に「スケジュール済みアクション」が表示されなくなるためです。
ポイント② 分岐条件
分岐条件名では「発行日が未来日」としていますが、単純に入力規則で未来日指定をチェックし、発行日が 次の文字列と一致しない グローバル定数 $GlobalConstant.Nullとしました。
もちろん 「発行日 > today()」 としても、「発行日 > 1/1/1900」でも大丈夫です。
ポイント③ スケジュール済みアクション
0日後をしていします。こうすることでグリニッジの標準時間 + 9 時間である日本では自動的に9:00にお知らせ発行されるという仕組みとなります。
たまたまですが始業時間に合わせた感じで便利ですよね。
もし、指定時間を変更したい場合は +9時間されることを考えて 時間指定すればOKです。
お昼12:00 に送りたいのであれば 12ー9なので 3時間後 を指定するといった具合です。
ポイント④ Chatter投稿
オブジェクト「お知らせ発行」の 項目「お知らせ内容」をメッセージとして差込みます。当然差しこみ内容以外に任意の定形文字列を固定値として入れていただいていても問題ありません。
■動かしてみる
データをこんな感じで「お知らせ管理」と「お知らせ発行予定」登録すれば準備OK。
こんなふうに無事指定日に自動的に投稿されていました。
■さいごに
利用上の補足事項としては以下の通りです。
- Chatter投稿発行者名は「お知らせ発行」のデータを作成された方が配信したことになります。
- 発行日の日付を変更したら変更した日へ変更、削除したら発行通知も削除されます。
- 予定が入っているかどうか確認したい場合は
ビルド > 作成 > ワークフローと承認申請 > フローから
「一時停止中および待機中のインタビュー」で確認できます。
いかがだったでしょうか。使い方としては「毎日の講話を登録しておき自動配信しておく」や「みんなのバースデーのお知らせを誕生日の日に忘れず自動配信する」、「毎月の締め日お知らせ」などいろんな実用的な使い方があるかと思います。
面白そうって思われたシステム管理者のそこのあなた!ぜひトライしてみてChatterグループ活発化させてみてください。