CSVインポート・エクスポート

CSV Import and Export

自社のWEBサイトや外部ECサイト、商品管理データベースなど社内に様々なデータファイルがある中で、
データベースを一元化したいというニーズに応え、

CSVファイルをインポートすることで一元化したデータベースを更新できるツールを開発しました。

また、各種サービス用に既定のダウンロード項目やダウンロード項目のカスタマイズ設定を可能にし、
データベースのデータから必要な部分を簡単に取得できるようにしています。

CSVインポート

指定フォルダあるCSVファイルをバッチ処理により取得し、マスターとなるDBに自動インポートし、対象の行列を変更します。

データが膨大なため個々に書き換えると処理に非常に時間がかかります。このため、バックエンドで仮想のデータベースを作成し、その中でデータを置き換えた後に、実際のデータベースのデータを置き換える仕様としました。

  • 指定フォルダにあるCSVファイルの自動取得
  • 品番と列名で一致したデータのみ上書き
  • 処理の中で仮想のデータベースを作成しデータを置き換え
  • 処理終了後にファイル名を修正し、完了フォルダにファイルを移動

データベースUI

「データベースに行や列を直接追加したり、値を直接置き換えたい」という声に応えるため、関連するシートでデータを呼び出す際は、動的にデータが置き換わるようにしました。

CSVエクスポート

CSV / TXT形式でのダウンロード

ECサイトによってtxt形式で入稿する必要があるため、CSVファイルだけでなく、TXT形式でダウンロードできるようにしました。

ファイル名をカスタマイズするため、ダウンロードボタンを作成し、base64でエンコードしたファイルをダウンロードできるようにしました。

  • スプレッドシート上でのHTML(CSS, JavaScript)読込み
  • withSuccessHandlerによるHTML経由でのGAS実行
  • データ取得しbase64にエンコード
  • 選択したボタンに合わせたファイルダウンロード

ダウンロードUI

ファイルのダウンロードはデータベースの中から抜き出したい項目を選択し、既定値として設定できるようにしています。

特に、よく使う項目はデータベースの列名に【任意の列名】という識別子をつけることで、自動で判定しダウンロードできるようにしています。
そのほかに、一列ずつカスタマイズできる仕様も用意しています。