22
2015/7/15 kintone Café OSAKA Vol.3 @ MOTEX KOJI ASAGA / CYBOZU, Inc. #kintonecafe

kintone café 大阪 Vol.3

Embed Size (px)

Citation preview

2015/7/15

kintone Café OSAKA Vol.3 @ MOTEX

KOJI ASAGA / CYBOZU, Inc.

#kintonecafe

自己紹介

浅賀功次(あさがこうじ)

システムコンサルティング本部に所属し、関西のエンジニアにkintoneを普及させる活動をしています。

イベントに登壇したり、会社のブログに記事を書いたりしてます。

普段は新大阪のオフィスにいます。

• Developers Summit 2015

• WordBench Osaka 35

• OWASP Kansai Local Chapter Meeting 1st

• Japan Identity & Cloud Summit 2014

• OpenID Foundation Japan Enterprise Identity WG

Activity Favorite

• 好きな2号ライダーはゼロノスです。

• 祇園祭で鉾を引いてます。今年は7/24の後祭に参加します。

7/25~26

大阪大学豊中キャンパス

Platinum Sponsor

\お話しすること/

• 7月アップデートにおけるkintone APIの最新情報

• Promise対応

• デプロイ API

• デモ

7月アップデートにおけるkintone APIの最新情報Summary of the July update.

詳細は…

https://cybozudev.zendesk.com/

JavaScript API

• Promise対応

• JavaScript APIのイベントで、Promiseオブジェクトをreturnできる

• kintone.api()等で callbackパラメーターを省略すると、Promiseオブジェクトが返る

•フィールド値の変更イベントにテーブルを追加

•リクエストヘッダーに X-HTTP-Method-Overrideを指定できる

•不具合改修

REST API

• レコードのステータスを更新する API

• アプリをデプロイする API

• レコードの一括取得 APIの機能追加

• 取得できるレコード数を 500件に変更

• レコード件数を取得できる

• アクセス権 APIの機能追加

• 日付フォーマットの仕様変更

• 分かりにくいエラーメッセージの改良

• 不具合改修

Promise対応Return the Promise object in the event handler.

• JavaScript APIのイベント内で、非同期処理の終了を待って、次の処理を実行できるようになります。

•例えば、

• レコードを保存する際に、別アプリのレコードを更新してから、保存を完了する。

• レコードを保存する際に、外部サービスの APIを実行した結果を取得し、kintoneに保存する。

何ができるようになったの?

これまで

// レコード追加画面の保存前処理

kintone.events.on('app.record.create.submit',function(event) {

var url = kintone.api.url('/k/v1/records') + '?app=10';

var xhr = new XMLHttpRequest();

xhr.open('GET', url, false);

xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');

xhr.send(null);

if (xhr.readyState == 4 && xhr.status == 200) {

// レコード取得後の処理

} else {

// エラー発生時の処理

}

});

これまで

// レコード追加画面の保存前処理

kintone.events.on('app.record.create.submit',function(event) {

var params = {'app': 10};

kintone.api('/k/v1/records', 'GET', params, function(resp) {

// レコード取得後の処理

});

});

kintone.api() が非同期のため、実行結果を待たずに保存が完了する場合がある。

これから

// レコード追加画面の保存前処理

kintone.events.on('app.record.create.submit',function(event) {

var params = {'app': 10};

return kintone.api('/k/v1/records', 'GET', params)

.then(function(resp) {

//成功

}, function(resp) {

//失敗

});

});

kintone.api() の実行結果を待って、成功・失敗の処理に進む。

• JavaScript で非同期通信を扱う仕組み

Promise

JavaScript Promiseの本

デプロイ APIDeployments API.

• REST APIを使って kintoneアプリの制御ができるようになりました。

•ベータ版

何ができるようになったの?

取得

• 一般設定

• フォームの設定

• フィールドの一覧

• フォームのレイアウト

• 一覧の設定

• アクセス権

• JavaScript/CSS カスタマイズ

変更 その他

• 一般設定

• フォームの設定

• フィールドの追加・変更・削除

• フォームのレイアウト

• 一覧の設定

• アクセス権

• JavaScript/CSS カスタマイズ

• アプリの作成

• アプリの設定完了

※ 未対応の機能もありますのでご注意下さい。グラフ、プロセス管理、アクション、高度な設定、言語ごとの名称、プラグイン

よくあるケース

同じ作業を実施

開発環境 運用環境

アプリを修正

これまで

•開発環境でアプリを改修した後に、運用環境へ反映するためには、同じ手順を手作業で繰り返す必要がありました。

•アプリ数が多いと時間も労力も必要になり、作業ミスに繋がる可能性も。

これから

デプロイ

開発環境 運用環境

アプリの設定を取得

デプロイプログラム

これから

•デプロイ API を使う事で、これまで手動で行ってきたメンテナンス作業を自動化できるようになります。

デモDemonstration.

• 7月アップデートでは、開発生産性、メンテナンス性を向上させる機能が搭載されました。

•ぜひ新機能を活用してみてください。

まとめ