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認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「AWS教科書 AWS認定デベロッパーアソシエイト テキスト&問題集 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
Cybozu Circus Fukuokaで「40代の昭和マネージャーが語る!情報発信で挑むサイボウズの風土改革。」を見ました。
サイボウズが10年前離職率28%のブラック企業だった時代から在籍されている、昭和 …
-
-
kintoneのレコードをPythonから条件クエリー(チェックボックス)で取得する
Google Calendar Twilio Reminderのkintoneの …
-
-
Cybozu Days 2021「ユーザーがリアルに語る 「すごくなくてもいい」 kintone 活用術」セッションを観ました
kintoneアプリを開発する時間がない キンコミに書き込まれた質問に答えていく …
-
-
Cybozu Circus Fukuokaで「なぜ御社のDXは進まない?!DXを阻む壁を突破する方法。」を見ました。
サイボウズ営業本部営業戦略部の木地谷さんと船井総合研究所DX支援本部DX推進室の …
-
-
「gusuku Meetup OSAKA Vol.1」に参加させていただきました
前回のkinotne Cafeの懇親会でふと言った「gusuku Meetupっ …
-
-
「【Twilio x kintone 合同ハンズオン in 大阪】Twilio Studioとkintoneで電話受付システムをつくろう」に行ってきました
「【Twilio x kintone 合同ハンズオン in 大阪】Twilio …
-
-
Cybozu Days 2021 Product Keynoteセッションを観ました
2021/11/1のCybozu Days 2021に参加しました。 Produ …
-
-
kintone Café 大阪 vol.11で登壇しました
kintone Café 大阪 vol.11「kintoneと色々つないでみる …
-
-
kintone Pythonでレコードをクエリ条件で取得
久しぶりにrequestsモジュール使ってGETリクエストを実行しようとしたとき …
-
-
kintoneの一覧に表示されているレコードのフィールドを更新する
kintoneで一括でレコード更新をするときに、書き出して、CSVの値を修正して …

