制限事項

  2017-04-21


kintone REST APIの制限により、現在把握されている制限事項とその回避手順は、以下のとおりです。

gusukuでのアプリ配布に関する制約

(2017年4月現在)

  • 配布先に同一の組織、グループ、ユーザーがいることが前提となります。
  • アプリ配布による配布範囲はフォームの設計情報のみとなります。
  • アプリに格納しているデータに関してはバックアップオプションを併用して下さい。
  • 各レコードごとのコメントに関してはバックアップ対象外となります。

配布対象

  • フォームのレイアウト
  • 作成済みの一覧

  • 設定

    • 一般設定
      • アイコンと説明
      • デザインテーマ
    • アクセス権 (*注1)
      • アプリ / レコード / フィールド
    • カスタマイズ/サービス連携
      • JavaScript / CSS

(*注1) gusukuでのアプリ配布時、「アクセス権も配布する」にチェックが必要

配布対象外

  • 作成済のグラフ

  • 設定

    • 一般設定
      • プロセス管理
    • 通知

      • アプリ / レコード / リマインダー
    • カスタマイズ/サービス連携

      • プラグイン
      • APIトークン
      • Webhook
    • その他の設定

      • カテゴリー
      • 言語ごとの名称
      • レコードのタイトル
      • 高度な設定
      • アクション

プロセス管理が有効なkintoneアプリについて

プロセス管理の設定の取得はkintoneのAPIではサポートされました。gusukuでも今後サポートする予定ですが、現時点では未サポートとなっています。

したがってプロセス管理が有効なkintoneアプリケーションは、そのままでは配布することが出来ません。アプリ配布後、kintoneの画面上から設定する必要があります。

プロセス管理以外の部分は、以下の手段で配布することが出来ます(既に開発環境などに、配布したいアプリケーションがあるという前提です)。

  • 配布先の環境(仮に「本番環境」とします)にkintone上でアプリケーションを作成し(仮のもので構いません)、プロセス管理を有効にしておく。このappIdをメモします。
  • gusukuで今作成したアプリを、gusuku側に取り込みます。この時「詳細設定」をクリックして、開発環境にある既存の(配布できなかった)アプリケーションを選択し、紐付け設定をしておきます。
  • このあとは、開発環境から本番環境に配布することが可能です。
  • プロセス管理の設定自体は配布されないので、アプリ配布後kintoneの画面上から設定してください。

ルックアップを含むkintoneアプリについて

ルックアップを含むkintoneアプリケーションは、初めての配布では「指定の環境に向けて、最新バージョンを配布」することは出来ません。事前にルックアップされるアプリを先に、ルックアップされる順序で個別に配布することで、配布することが出来ます。

配布元の「開発環境」、配布先の「本番環境」があると仮定して、以下の様な手順になります。

  • 開発環境にて、他のアプリから参照されているアプリ(例えば顧客マスタなど)の詳細画面に進みます。
  • アプリ詳細画面から、本番環境に対して「即時運用開始する」にチェックを付けて、「指定バージョンの配布」をクリックします。
  • 他にもルックアップされているアプリがあれば、同じ手順で配布します。配布する順序はより多くのアプリからルックアップされているものから順に、配布します。
  • 最後に、ルックアップする側のアプリ詳細画面から、アプリを配布します。

いちど環境に含まれる全てのアプリが配布された後は、環境をまるごと配布する機能である「指定の環境に向けて、最新バージョンを配布」することが可能となります。

プラグインを含むkintoneアプリについて

プラグインを含むkintoneアプリケーションを配布した場合、プラグインは同時には配布されません。別途プラグインの追加を実行して頂く必要があります。

すでに同じプラグインが追加されている環境に対して初めてアプリを配布した場合、アプリの設定画面で該当のプラグインを利用するかどうかのチェックボックスが表示されますので、チェックを付けてください。

いずれのケースでも、プラグインの設定情報は配布されませんので、再度設定して頂く必要があります。

相互参照の状態にあるアプリについて

同一サブドメイン内でアプリAがアプリBを、アプリBがアプリAを参照している状態のことを「相互参照の状態」にあるといいます。

この状態のアプリの配布には、注意が必要となります。

同一サブドメイン内の配布の場合

配布元がアプリ A,B で、配布先が A+, B+ になったとすると、

  • A+ は B(配布元) を参照
  • B+ は A(配布元) を参照

という状態になりますので、ご注意ください。

別サブドメインへの配布の場合

現在のgusukuの仕様では、簡単に配布することが出来ません。以下の様な手順にて配布を試みてください。

既に配布元で2つのアプリケーションが取り込まれている状態から、開始します。

  1. 配布先に空のアプリを2つ作る(できればこの時点で、事前に参照されるフィールドコードを持ったフィールドだけでもダミーで作っておくと良いです)
  2. gusuku で配布先の環境で、(1)で作ったアプリを取りこむ。このとき、gusukuのアプリ追加画面で「詳細設定」チェックを入れてkintoneアプリひもつけ設定をしておきます。最終的に、マトリクスが埋まった状態になります。
  3. gusukuから配布実行 / (1)でダミーフィールドを作っていない場合、「kintone がエラーを返しました。 kintone のエラーメッセージ: [指定されたフィールド(code: XXXXX)が見つかりません。]」というようなエラーがでる。
  4. kintone 上の作業で配布先の参照先アプリにダミーフィールドを追加する。(gusukuへの取り込みは不要) / (3)でエラーが出ずに配布成功した場合はこの作業不要 
  5. エラーが出なくなるまで(3)(4)繰り返し