【kintone チックな】コメント通知

目次

kintone サンプルアプリを Access で再現(営業支援パック・標準機能)

kintone はノーコードで業務アプリをつくることができます


新しくアプリを作る方法は いろいろありますが
あらかじめ 業務や業種別に利用できるサンプルアプリが100種類以上用意されています

これまで kintone のサンプルアプリと標準機能を 工夫をしながら なるべく忠実に 再現してきました
今回は コメント 通知機能を Access で再現することに挑戦しました

コメント通知(動画で紹介)-kintone を Access で再現

kintone のコメント通知

コメント通知

レコードに対して コメントやメモを書き込めます
コメントはユーザーを宛先として指定することができます
レコードにコメントを書き込んで レコードのデータに関連づけた
コミュニケーションをとることができます

コメント通知の動作

  • 宛先を指定してコメントを書き込むと 相手に通知されます
  • 通知を確認することで 既読となり通知のバッジが消えます
  • 宛先をしてせずにコメントを書き込むと 通知はだれにもされません
    レコードのデータに対するメモ書きのような使い方ができます
  • コメントがあるレコードにはコメント数のバッジがつきます

アプリの詳細画面を開くと 右側にあるスペースがコメント欄です

ログインしたとき 自分あてのコメントがある場合 通知にバッジがつきます

Access でコメント通知を再現

Access で kintone の標準機能である コメントを実装するには
kintone と全く同じにはできないかもしれませんが
いろいろ工夫して挑戦していきます

まずは 完成形をイメージします

kintone の画面に似せて 顧客管理の単票フォームの右側に コメントのテーブルをサブフォームとして配置し
レコードとリンクさせて表示させます

通知については ポータルをあけて どのアプリに通知があるのかをわかるように 通知数のバッジがつきます

さらに 営業支援アプリのうち どのアプリに通知があるのかをわかるよう 通知数のバッジをつけます

また どのレコードにコメントが何件あるのかを 表示しています

コメント通知を受けた人 または コメントした人が いいタイミングで 既読にチェックすることで
メニュー画面やレコードの通知を 解除して コメント通知の件数が表示されないようにします

【準備】コメント欄

コメントを書くための テーブルを作ります

  • ID オートナンバー型
  • 顧客CD 数値型
  • 差出 数値型
  • 宛先 数値型
  • コメント 長いテキスト
  • 既読 Yes/No型

コメントテーブルをレコードソースにし 帳票フォームを作ります

STEP
宛先

宛先はユーザーから選べるように ドロップダウンにします
選ぶと テキストボックスに ユーザー名を表示されるように コントロールソースに

=IIf([cbo_宛先],[cbo_宛先].column(1) & ” さんへ”,””) を記述することで
安武 一美 さんへ と表示されます

STEP
差出

レコードが作られるタイミングで 差出に 現在のログインユーザーを 取得し
宛先人同様 湯浅 音葉 より と表示するために コントロールソースに

=IIf([差出],DLookUp(“氏名”,”Mユーザー”,”CD = ” & [差出]) & “ より”,””) を記述することで
湯浅 音葉 より と表示されます

STEP
コメント

長いテキストを配置します

STEP
既読

チェックボックスを配置します

STEP
単票フォームに配置

アプリの詳細や入力画面である単票フォームに コメントのサブフォームを配置し
顧客管理のレコード番号をリンク親フィールドに コメントサブフォームの 顧客CD をリンク子フィールドに設定します

【準備】コメント通知

ログインしたらまず現れる ポータルに 営業支援アプリのどれかに コメント通知があれば
通知バッジをつける テキストボックスを配置します

営業支援パックの 3アプリのうちどのアプリにコメント通知があるか 表示するためのテキストボックスを
各 コマンドボタンの横に配置します

どのレコードに通知が何件あるかを表示するための テキストボックスを 図の位置に配置します

コメント通知再現方法 

STEP
クエリ作成

コメントテーブルで
宛先が現在のユーザーか または 全員向け(宛先が0)の場合で
かつ 既読チェックがついていないものを抽出するクエリを作成します
顧客用と案件用と活動用の3パターンを作ります

STEP
ポータル

ログインしたら まず開くポータル画面の 読み込み時イベントで
クエリのレコード数を テキストボックスに 表示します
3パターンのクエリを合計した数値を 取得し代入します

STEP
営業支援メニュー

ポータル同様 各アプリのコメント数を取得するために クエリを使います
それぞれの テキストボックスに 顧客のコメント数 案件のコメント数 活動のコメント数を 取得して代入します

STEP
レコード

レコードソースに主テーブルとコメントテーブルを顧客CDでつなぎ コメント数をフィールドに追加し 表示します

既読時のコメント通知バッジの解除法

STEP
レコードの通知解除

詳細画面の 閉じるボタンのクリック時イベントで 一覧画面のフォームを 再クエリ(ReQuery)します

STEP
営業支援メニューの通知解除

一覧画面の閉じるボタンクリック時イベントで 営業支援メニュー画面の各テキストボックスに クエリより取得した数値を代入します
もし 数値が 0 の場合 テキストボックスを非表示にします

STEP
ポータルの通知解除

営業支援メニューの閉じるボタンクリック時イベントで ポータルメニュー画面のテキストボックスに クエリより取得した数値を代入します
もし 数値が 0 の場合 テキストボックスを非表示にします

このような方法で kintone のコメント機能を実装することに成功しました
しかしながら 通知のボタンから直接 そのレコードを表示したり
返信ボタンや 既読のタイミングなど 違いはありますが
工夫をして なんとか コメント機能を再現しました

通 知

kintone にはほかにも設定することで さまざまな通知を行うことができます

通知
アプリの条件通知

レコードが追加されたとき

通知
レコードの条件通知

フィールドのデータの内容が 特定の条件を満たしたとき

通知
リマインダーの条件通知

レコード内の日付項目を基準に 特定のタイミングで通知を送信する

これらを Access で再現するには
VBA を使って いろんなタイミングで条件を指定して 通知をすることができます

たとえば 保存時に レコードが数が増えていたら
保存したレコードの 金額フィールドが 5000円を超えていたら
車検満了日時 の1週間まえのデータがあれば

などなど VBAを利用し コメントテーブルと同様なテーブルを作成し
そのレコードに 宛先を 個人や組織やグループなどにし
どんな条件で抽出された通知であるかを代入し テーブルに追加します
その通知テーブルにより 通知先を判断し 通知バッジをつけるという方法です

再現は可能であることがわかります

メール通知

kintone では ユーザー登録で設定してある メールアドレス宛てに いろんな条件で メールを送信することができます

Access での再現方法を考えます
現在の Access アプリは サンプルのユーザーを使っていますので リアルに再現を検証することはできませんが

VBAを使えば メール送信も可能です

アウトルックを使う方法と CDOを使う方法があるようです
また LINEに通知する方法もあるようです LINE通知に関しては LINE元のサービスを利用する必要がありますので
そのサービスが終了しないことが 前提ではあります

サイトを検索したり AIなどを利用して検索して挑戦してみてください

目次