kintoneで案件管理と原価入力のアプリを2本作った。ほとんどAIに指示を出して進めたんやけど、自分で画面を触ったのは2箇所だけやった。
作ったのは、案件を管理するアプリと、その案件にかかった原価を入れるアプリ。2本をつないで、案件ごとの粗利が勝手に出るようにするのが狙いや。
先に言うとくと、手が要った2箇所は「難しかったところ」やない。kintone側が「ここは人がやること」に決めとる場所やった。
AIが作れんかった1箇所目|アプリの箱そのもの
kintoneにはREST APIがある。外から命令を投げて、レコードを入れたり設定を変えたりできる。AIに任せるならここを通す。
ただし、アプリを新しく作るAPIだけは通らんかった。APIトークンでは認証が足りん。パスワード認証が要る。
AIに渡してあるのはトークンだけや。渡してある鍵では、そもそもドアの種類が違う。というわけで、アプリの箱は自分で画面から作った。案件管理と、日報・原価入力。空の箱を2つ。
AIが踏んだ罠2つ

箱ができたら、中身はAI側が組んでいく。フィールドを足して、サンプルデータを流し込んで。その途中で2回、はっきり止まった。
「ステータス」という名前が保存できない
案件管理アプリに進捗の項目を作ろうとした時。項目には画面に出る名前とは別に、システムが中で使う名前をつける(フィールドコードという)。そこに「ステータス」と入れた。保存できん。
出てきたのは「このフィールドコードは既に使用されています」。まだ何も作ってへんのに、既に使用されてる、と言われる。
調べたら、kintoneの予約語やった。システム側が最初から押さえとる名前で、こっちが使うことはできん。「案件ステータス」に変えたら普通に通った。
ややこしいのは、エラーの文面が理由を教えてくれんところや。「予約語です」と出てくれたら1秒で分かる。「既に使用されています」やと、自分がどこかで作ったんかと探しにいってしまう。
APIトークンを2本つなぐ
原価のサンプルデータをCSVで流し込む時。原価明細には「どの案件のぶんか」を指す項目があって、これは案件管理アプリを参照しに行く仕組み(ルックアップ)になっとる。
ここで弾かれた。原価アプリのトークンは持っとるのに、参照先の案件管理アプリを見る権限がない。当たり前といえば当たり前で、鍵が1本しかないから隣の部屋が開かん。
正解は、鍵を2本まとめて渡すことやった。原価アプリのトークンと、案件管理アプリのトークンを、カンマでつないで1つとして渡す。
これはドキュメントの目立つところには書いてない。ルックアップを使ってCSVを入れる、という組み合わせで初めて出てくる。
AIが作れんかった2箇所目|JavaScriptの適用

このアプリの山場は、案件の詳細画面を開いた瞬間に粗利が出るところ。原価を集計して、粗利と粗利率をカードで描く。赤字ならカードが赤くなる。
このJavaScriptはAIが書いた。ここは詰まってない。
詰まったのは、書いたファイルをアプリに適用するところ。適用用のAPIはあるんやけど、アプリ管理の権限を付けたトークンでも通らんかった。結局、設定画面を開いてファイルをアップロードした。ここが2箇所目。
結局どこまで任せられるんか
やってみて、線がはっきりした。
- 任せられた:フィールド設計、データ投入、JavaScriptのコード
- 任せられんかった:アプリを新しく作る、JavaScriptを適用する
この2つに共通しとるのは、技術的に難しいことやない。どっちも権限の壁や。アプリの構造そのものを変える操作は、外から鍵1本では触らせん、という設計になっとる。
逆に言うと、それ以外は全部通る。だからkintoneをAIと組んで作る時に、人が画面の前に座らなあかん時間は、思ってるよりだいぶ短い。
ちなみにこの2本のアプリで何ができるようになったかは、こっちに書いた(kintoneで粗利管理アプリを作った|赤字案件が3秒で見える)。案件ごとの粗利が出るようになって、赤字の案件が一発で分かる。
ここまで書いた罠は、たぶん次に誰かの環境で組む時もそのまま出てくる。1回踏んどいたぶんは、2回目からは時間を食わん。
そういうわけで、同じ「案件ごとの粗利を見えるようにしたい」をkintoneで組む仕事も受けとる(ココナラ/ランサーズ)。今すぐ頼む話やなくても、どこまで自動でできるんかの目安として見てもろたらと思う。