概要
アプリのレコード一覧とレコード詳細画面の表示時に、フィールドの条件によってセルの背景色、文字色を変更します。
完成形
レコード一覧:
レコード詳細画面:
事前準備
- kintone アプリ(kintone アプリストア にある「総務への依頼受付」を使います)
- エディター
サンプルプログラム
- サンプルプログラムは、その動作を保証するものではありません
- サンプルプログラムの技術的なサポート等は行っていません
プログラム
- エディターにサンプルプログラムをコピーし、任意のファイル名で、文字コードを「UTF-8」にして保存します。
- 準備したアプリの設定画面で、保存したファイルを読み込みます
- アプリの設定を完了し、レコード一覧を表示します
- レコードの処理の状況を示すフィールド名が「ステータス」ではなく、「処理状況」になっている場合があります(2月15日アップデート以前にアプリストアから追加したアプリ)ので、その際はサンプルコード内の「ステータス」を「処理状況」に変更してお使いください
使用したAPI
デモ環境
https://dev-demo.cybozu.com/k/66/
※デモ環境についての説明はこちら
サンプルプログラムの提供ありがとうございます。
ただ、そのまま「総務への依頼受付」アプリに適用したところ、
「処理状況」の書式は変更されましたが、「至急」の書式は変更されませんでした。
サンプルプログラム30行目の
if (record['Urgent']['value'] === "至急") {
は、
if (record['Urgent']['value'][0] === "至急") {
が正しいのではないでしょうか?
中村さま
ご指摘いただきありがとうございます。cybozu.com developer network事務局です。
中村さまにご指摘いただいた通り、配列の指定が必要になります。
上記の記事も変更させていただきました。
以下のように、レコード詳細では情報を表示されるのですが
保存直前ではnullになります。
そういったものでしょうか。このあたりを説明しているページはありますでしょうか。
kintone.events.on('app.record.detail.show', function(event) {
var elUrgent = kintone.app.record.getFieldElement('Urgent');
console.log(elUrgent);
});
kintone.events.on('app.record.edit.submit', function(event) {
var elUrgent = kintone.app.record.getFieldElement('Urgent');
console.log(elUrgent);
});
Hiroki Ijichi 様
お世話になっております。
ご認識の通りです。
app.record.edit.submit はレコード編集画面のイベントであり、「フィールド要素を取得する」API は利用できない画面です。
https://developer.cybozu.io/hc/ja/articles/201942014#step3 に「利用できる画面」について記載しておりますので、ご参考ください。
サンプルのご提供ありがとうございます。
このサンプルに、「対応済み」ステータスを追加して、
対応済みの場合はセルの色、文字ともにデフォルトに戻したいと思っています。
文字色はブラックかな?と思うのですが、背景色は行によって異なっております。
デフォルト色はどのようなカラーコードを指定すればよろしいでしょうか。
Kobayashi 様
お世話になっております。
cybozu developer network 運営局です。
こちらは記事に対するフィードバックとなっております。
お手数をおかけいたしますが、機能追加などの詳しいカスタマイズに関するご質問は、コミュニティをご活用いただければ幸いです。