手作業の出力で、起きること

毎月のCSV出力は、慣れると単純な作業に見えます。それでも、次のことが起きます。

  • 期間の取り違え:「先月分」のつもりが、月末の1日が抜けていた。前月分と重なっていた
  • 項目のゆれ:先月は項目を並べ替えて渡したのに、今月は並べ替えを忘れた。受け取る側の取り込みが失敗する
  • 基準のゆれ:「先月分」を、登録した日で切るのか、更新した日で切るのか。担当者によって違う
  • 人への依存:手順が担当者の頭の中にあり、休むと止まる。引き継ぐと、少しずつやり方が変わる

こうしたずれは、毎回その場で条件を選び直していることや、手順が人の中にしかないことから起きています。

出力を、設定として持つ

考え方を変えて、出力を「毎月やる作業」ではなく「一度決めておく設定」にします。

  • 何のデータを
  • どの項目を、どの順番で、どの見出しで
  • どの日付を基準に、どの期間で切って
  • いつ出すか

これを一度決めて保存しておけば、毎月の作業は、できあがったファイルを取りに行くだけになります。条件を選び直さないので、期間や項目がぶれにくくなります。

出力の設計

項目と並び、見出し

受け取る側の都合に合わせます。取り込み先のシステムがあるなら、その列の順番と見出しに合わせておくと、受け取った側で並べ替える手間がなくなります。

基準の日付

「先月分」をどの日付で切るかを決めます。

基準 向いている用途
作成日時(登録された日) 新しく届いたものを渡す
更新日時(最後に変わった日) 変更があったものを渡す。登録内容の修正も拾いたいとき

同じ「先月分」でも、基準が違えば中身が違います。受け取る側と、どちらの意味かを合わせておきます。

期間の単位

日ごと、月ごと、年ごと。受け取る側が処理する周期に合わせます。夜中に出力する場合、「今日の分」が実は「昨日の分」を指すように調整が要ることもあります。

まとめて出すか

複数のデータを同じ相手に渡すなら、一つにまとめて渡すと、受け渡しの手間と取り違えが減ります。

受け渡しと保管

出力したファイルには、個人情報が含まれることが多くあります。

  • ファイルを取りに行ける人を、決めておく
  • 受け渡しの方法を決めておく(メールに添付しない、決められた置き場所を使う、など)
  • 渡したあとのファイルを、いつまで残すか決めておく。不要になったファイルを残し続ければ、扱う必要のない個人情報まで保管し続けることになる

出力を自動にすると、ファイルは人が気づかないうちに増えていきます。取りに行った後の片づけまでを、手順に含めておきます。

決まった形にない切り口

「今月だけ、この条件で抜いてほしい」という依頼もあります。決まった形の出力に、その都度手を加えていると、また手作業に戻ります。

  • 一時的な依頼か、これから続くものかを確かめる
  • 続くものなら、新しい設定として追加する
  • 一時的なものなら、手作業で出して、何を出したかを記録しておく

writeWiredでは

writeWiredでは、出力を「データエクスポート設定」として登録し、画面から、または日次バッチで実行します。

設定の登録

  • 設定の名前と、期間の単位(年・月・日・指定なし)を決める
  • 実行時間に応じた出力日の調整を設定する
  • 1つの設定に複数の対象データを束ね、zipにまとめて出力する
  • 日次バッチで実行するかを設定する

何を出すか

  • 問い合わせデータ・会員データは、フォーム定義の項目が内訳に並び、出力する項目・順序・ラベルを決める。抽出の基準日付を、作成日時と更新日時から選ぶ
  • 送信メール・各種ログ・コンテンツなどのシステムデータも対象にでき、加工した列も項目に選べる
  • 決まった対象データにない抽出は、カスタムSQLで定義する。期間は#FROM#・#TO#で差し込み、保存する前に実行して結果を確かめられる

取りに行く場所

  • データエクスポートの実行履歴に、出力されたファイルが日時つきで並び、行からダウンロードする
  • 画面から実行したものと、バッチで実行したものが、同じ一覧に並ぶ
  • 不要になった履歴は、まとめて削除できる
  • 出力されたファイルは、自動では削除されない
  • 実行履歴を見られる人を、権限で絞ることはできない

出力の設計のうち、項目・並び・見出しは、フォームの項目から選んで順序とラベルを決めます。基準の日付は作成日時か更新日時を選び、期間の単位と出力日の調整を設定します。複数のデータは1つの設定に束ねれば、1つのzipで取りに行けます。

受け渡しと保管について、2つの点を踏まえておきます。出力されたファイルは自動では削除されないので、受け取ったあとは実行履歴から手動で削除します。実行履歴を見られる人は、権限で絞れません。個人情報を含むファイルは、受け取ったら早めに手動で削除する、と手順に入れておきます。管理画面のユーザーを誰にするかも含めて、受け渡しの手順を決めておきます。

決まった形にない切り口で、これから続くものは、カスタムSQLの設定として追加できます。

ファイルを相手に送る方法と、ファイルの保管の決めごとは、この仕組みの外側にある運用です。

運用の困りごと 一覧へ