kintone JavaScript APIで新規レコード作成時にログインユーザーとその組織をフィールドにデフォルト値として登録する
よくやりそうなふるまいなので書き残しておきます。
create_userフィールドにログインユーザーを、
create_sectionフィールドにログインユーザーの組織(課とか部とか)をデフォルト設定したいとします。
ログインユーザーは素直に[kintone.getLoginUser()]で取れるので[app.record.create.show]イベント内で処理してしまえます。
ですが、組織情報は[/v1/user/organizations]APIをkintone.apiから実行しなければなりません。
なので実行は非同期となります。
そして、[app.record.create.show]イベントではPromiseは使えません。
なので、[var record = event.record]とは別にcallbackの中で[var record = kintone.app.record.get()]をしてそこに対して値を設定して[kintone.app.record.set(record)]しています。
[return event]では[function(resp) {}]の処理は反映出来ないのですね。そりゃそうか。ふむ。
もっといいやり方ご存じの方いたら教えてください〜。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
(function() { 'use strict'; kintone.events.on('app.record.create.show', function(event) { var user = kintone.getLoginUser(); var record = event.record; record['create_user']['value'] = [{ "code": user.code, "name": user.name }]; kintone.api('/v1/user/organizations', 'GET', { code: user.code }, function(resp) { var record = kintone.app.record.get(); var organization = resp.organizationTitles[0].organization; record['record']['create_section']['value'] = [{ "code": organization.code, "name": organization.name }]; kintone.app.record.set(record); }); return event; }); })(); |
ちなみにkintoneのJavaScriptは変更時にアップロードするのが面倒なのでAWSのS3に置いて参照するようにしています。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。


開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
Cybozu Days 2021「WeWork Japanが kintoneの導入ショック期を越え、利用定着するまで」セッションを観ました
2021/11/1のCybozu Days 2021に来ました。 初日のみの参加 …
-
-
Cybozu Circus Fukuokaで「真剣への覚悟ー成長期、停滞期、変革期を試行錯誤した、サイボウズ青野の経営者の道ー」基調講演を見ました
2022/3/15に開催されましたCybozu Circus Fukuokaに参 …
-
-
「【Twilio x kintone 合同ハンズオン in 大阪】Twilio Studioとkintoneで電話受付システムをつくろう」に行ってきました
「【Twilio x kintone 合同ハンズオン in 大阪】Twilio …
-
-
kintone開発者ライセンスを申し込む
kintoneにはkintoneのアプリケーション開発や検証を目的とした開発者ラ …
-
-
kintone Café 大阪 vol.12で企画/登壇しました
前回(vol.11)よりkintone Café 大阪の運営に参加させていただ …
-
-
Cybozu Circus Fukuokaで対談形式の「特別講演」を見ました。
Cybozu Circus Fukuokaの最後のセッションです。 最初はふくお …
-
-
Cybozu Days 2021 Product Keynoteセッションを観ました
2021/11/1のCybozu Days 2021に参加しました。 Produ …
-
-
Cybozu Days 2021でR3インスティテュートさんのカスタマインのデモを観ました
kintone hiveでも数社の発表で出てきていたkintoneのプラグイン「 …
-
-
kintoneでEveryoneに権限が設定されているアプリをAWS Lambdaで一括チェックする
こないだ、kintone Cafeでユーザーが自由に作成している環境だと、どんな …
-
-
kintoneのレコードをPythonから条件クエリー(チェックボックス)で取得する
Google Calendar Twilio Reminderのkintoneの …