第 5 回 kintone コマンドラインツール(cli-kintone v0)で添付ファイル操作をしてみよう(一括ダウンロード・アップロード)
このチュートリアルはver. 0.x.xのcli-kintoneの使い方を紹介しています。
ver.1.0.0以降のcli-kintoneの使い方を紹介するチュートリアルは次のページを参照してください。
はじめよう cli-kintone
はじめに
今回はkintoneコマンドラインツールを使った、添付ファイルのダウンロード・アップロードの方法を紹介します。
添付ファイルのダウンロード
添付ファイルは以下のコマンドでダウンロードできます。
|
|
-b
の保存先の指定は必須で、存在しないディレクトリー名を指定した場合は、新たにディレクトリーが作成されます。
ダウンロード先のディレクトリー構成
添付ファイルは次のようなディレクトリー構成で保存されます。
通常の添付ファイルフィールドのファイルは次のとおりです。
|
|
テーブル内の添付ファイルフィールドのファイルは次のとおりです。
|
|
Index はゼロから始まり、取得対象のレコード数に合わせて増加します。
例)取得対象のレコードが3件の場合は次のとおりです。
|
|
添付ファイルのアップロード
-b
オプションを付けた場合の CSV の添付ファイルフィールドの形式
CSVを用意するために、-b
オプションを付けてエクスポート結果を確認してみます。
今回は確認が目的なので、-c
オプションでエクスポートするフィールドを制限してわかりやすくしましょう。
|
|
保存先ディレクトリーを「save」添付ファイルのフィールドコードを「Attachment」とした場合、以下のようなCSVがエクスポートされます。
|
|
この例では、IDが1のレコードには「1-1.png」と「1-2.png」、IDが2のレコードには「2-1.png」がそれぞれ登録されています。
添付ファイル部分の出力は保存場所「save」ディレクトリーからの相対パスで表され、複数件登録されている場合は改行区切りでパスが表記されます。
テーブル内の添付ファイルフィールドの場合も、各行ごとに同様の形式で得られます。
添付ファイルを含むレコードの追加
それでは、前回まで使ってきた 顧客リストアプリ に新しいレコードを登録してみましょう。
STEP1 追加レコード用の CSV ファイルを用意する
まずは添付ファイルを追加するために「logo」という名前でディレクトリーを作成し、そこにファイル「logo.png」を配置します。
ここまで完了したら次のような登録用CSVファイルを作成します。
|
|
複数添付ファイルを加える場合は「改行」で区切ってパスを書きます。
たとえば「logo_b.png」も合わせて追加する場合、以下のように記述します。
|
|
これを「add_record_with_attachments.csv」として保存しましょう。
CSV 作成時のポイント
cli-kintoneでエクスポートしたファイルを使ってCSVを作成する場合、改行コードが統一されるようにCSVを作成してください。
複数の添付ファイルを扱う場合、改行コードが入り混じった状態で作成されたCSVはインポートに失敗することがあります。
cli-kintoneは改行コードが「CRLF」という形式になるようにCSVを保存しますが、コマンドプロンプトでリダイレクトしてエクスポートした場合、添付ファイル表記の改行部分だけ「LF」という形式になってしまうことがあります。
STEP2 レコードを追加する
添付ファイルとCSVの準備ができたら、次のコマンドを実行するとレコードを登録できます。
|
|
登録したレコードは以下のようになっていると思います。
前回までの記事をやってみた方は顧客リストアプリの会社名を重複禁止にしていると思うので、再度テストする場合は会社名を書き換えて行ってください。
添付ファイルを含むレコードの更新
今度はさきほど登録した添付ファイルを含むレコードを更新してみましょう。
STEP1 更新用 CSV ファイルを用意する
第 3 回 kintone コマンドラインツール(cli-kintone v0)でレコードの更新をしてみようを参考に、更新用のCSVを用意します。
今回は添付ファイルを1つだけ追加してみます。
指定しなかった添付ファイルはすべて消されてしまうので、あらかじめcli-kintoneで画像を取得しておきましょう。
|
|
このときCSVも同時に保存しておくと書きやすいですね。
「customerlist」を添付ファイルの保存先に指定して実行した場合は「customerlist」ディレクトリーが作成されます。
「customerlist」ディレクトリーの中へ、レコードに登録されているロゴのファイルが保存されます。
既存の添付ファイルは「<保存先ディレクトリー>\Attachment-5」に保存されます。
そのためAttachmentの項目にはこちらのディレクトリーに新たに追加する添付ファイル「Attachment-5\logo_c.png」を追加します。
その後、以下のようなCSVを「update_record_with_attachments.csv」として作成します。
|
|
STEP2 レコードを更新する
レコードに「logo_c.png」を追加したので、「<保存先ディレクトリー>\Attachment-5」に対応する「logo_c.png」を追加してからコマンドを実行します。
|
|
更新が成功したら以下のような状態になっているかと思います。
今回の作業ディレクトリーはこんな感じになっているかと思います。
添付ファイルの操作、いかがでしたか?
次回は実運用について触れていきます。
このTipsは、cli-kintone Ver 0.10.2と2020年3月版kintoneで動作を確認しています。