kintoneアプリに複数の添付ファイルを一括登録・削除する方法 ExcelやAccessでも使える

松本勝成

  • お気に入り
  • 本文印刷

 CData Drivers for kintoneのV23で追加された新機能として、1つのレコードに複数の添付ファイルを追加できるようになりました。

 この記事では、こちらの新機能を活用してCData Driversからkintoneアプリに添付ファイルを追加・削除する方法を解説します。

 なお、今回の例ではJDBC Driverを使用していますが、ツールに応じてAccessであればODBC Driver、Excel であればExcel Add-Inなど、各ツールで類似の手順を使って複数添付ファイルの追加・削除が可能です。

1. kintone アプリを作る

 添付ファイルフィールドを1つ持つサンプルアプリを作成しました。

2. 添付ファイルをレコードに追加する

 添付ファイルをレコードに追加するには、ファイルのアップロードと、FileKeyをレコードにセットという2つのステップを行います。

 なお、今回はCData JDBC Driverを使ってDBVisualizerからkintoneに接続してストアドを実行しています。DBVisualizerからkintoneへの 接続方法は、こちらのSharePoint向けの記事を、kintoneに読み替えてご利用ください。

1) UploadFile ストアドプロシージャでファイルをアップロードします。

<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>


 ファイルがアップロードできると、FileKeyが取得できます。

 今回使用した画像ファイルの場合、ファイルの種類を表すContentTypeはkintone側で自動認識されるため指定は不要ですが、ファイルの種類によって明示的にContentTypeの指定が必要な場合があります。

・ContentType を明示的に指定して、pdf ファイルをアップロードする場合

<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>

CData JDBC Driver for Kintone - UploadFile

2) レコードの添付ファイルカラムにFileKey をセットします。

<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>

 アップロードしたファイルが添付ファイルに入ったレコードが追加されます。

3. 既に添付ファイルのあるレコードに、添付ファイルを追加する

 添付ファイルのあるレコードに添付ファイルを追加する場合は、既存のレコードにあるFileKeyとアップロードして取得したFileKeyをカンマで連結してセットします。


(1) 添付ファイルのあるレコードからFileKey を取得する

 添付ファイルフィールドの値を取得してみると、このようなJSON形式の値になっています。

<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>
<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>


 既存の添付ファイルがあるレコードに添付ファイルを追加する場合、この中にあるFileKeyが必要ですが、ここから文字列処理などでfileKey部分の値を取得するのは大変です。

 そんなときは、JSON_EXTRACT関数を使うと簡単にJSONの中にある"fileKey" の値だけを取得することができます。

CData JDBC Driver for Kintone - 文字列関数

(2) JSON 形式の値からFileKey を取得する

<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>

 [0]の部分が、JSONの何番目かを指定する部分になるので、複数のファイルがある場合はこの値を変えるとその番号のFileKeyを取得することができます。

(3) 複数の添付ファイルを指定する

 元々のFileKeyと新たにアップロードしたFileKey をカンマで区切ってセットします。

<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>

4. 添付ファイルを削除する

 画像を削除する場合は、添付ファイルの値にNULL をセットします。

<code>UPDATE [添付ファイルサンプル] SET [添付ファイル Aggregate]=NULL WHERE [RecordId]='1';</code>

5. まとめ

 添付ファイルは業務でkintoneを活用する際に欠かすことのできない機能です。ぜひ、CData製品を使ってkintoneの添付ファイルをさらに便利に活用してみてください!

 CDataではお好みのツールからkintoneに連携できる各種ツールを用意しています。こちらから必要な製品を選んでダウンロードしてください。すべての製品で30日間無償トライアルがご利用いただけます。どの製品を利用したらいいかわからない!という場合はお問い合わせフォームまたはチャットから、お気軽にお問い合わせください。

過去記事アーカイブ

2025年
01月
02月
03月
04月
2024年
02月
03月
04月
05月
06月
07月
08月
09月
10月
11月
12月
2023年
04月
07月
08月
09月
10月
11月
12月