新規投稿
フォローする

アップロードする時、添付ファイル名を統一したい

お世話になっております。

現在、ファイル管理アプリを作成しています。作成するアプリでは、アップロードするファイル名を全て、最初にアップロードしたファイル名に統一したいと考えています。

イベントが発生するタイミングはレコード追加し「保存」を選択した時です。

 

現在、コードを作成し、実際に試したところchromeのコンソールにはエラーが発生しませんでしたが、同時にファイル名の変更もできませんでした。

下記が現在のソースコードになります。

(function() {
  'use strict';
  kintone.events.on('app.record.create.submit', function(event) {
    const body = {
      app: 17,
      fields: ['添付ファイル']
    };
    return kintone.api(kintone.api.url('/k/v1/records', true), 'GET', body).then (function(resp) {
      console.log();
      const filename = records[0].添付ファイル.value;
      event.record['添付ファイル']['value'] = filename;
      return event;
    }).catch(function(error) {
      
    });
  });
})();

 

恐れ入りますが、アップロードする際に添付ファイル名を変更する方法についてご教示いただけますと幸いです。

 

0

2件のコメント

Avatar
TO

茂木様

添付ファイルは完全に登録された後でないとレコードにはない状態です.
なので,submitではなくsubmit.successでないと添付ファイルを取得することができません.
(おそらく提示のコードではevent.record['添付ファイル']['value']に何もない状態になっているものと思います)
また,添付ファイルはvalueが配列になっているので,filenameの指定の仕方も変える必要があります.

添付ファイルの操作はなかなか大変で,今回の例であれば,
①レコードから添付ファイルをダウンロード
②ダウンロードした添付ファイルをアップロード
③アップロードした際に入手するfileKeyでレコードにPUT
(PUTするときにnameを変える)

…という流れになるかと思います.
ファイルダウンロード
ファイルアップロード

なお,GETで全件取得をしていますが,「一番最初にアップロードしたレコード」のレコード番号など,
特定できるものがあるならクエリに指定したほうが,全件取得してその1番目([0])を指定するよりも負担が少ないです.
参考になれば幸いです.

TOにより編集されました
1
Avatar
茂木

TO様

ありがとうございます。参考にさせていただきます。

0
サインインしてコメントを残してください。