塾生130名超の月謝は、コマ数一覧のスプレッドシートに単価を数式で埋め込んで自動計算していました。 毎月、そこから「月謝のお知らせ」を生徒ごとに手作業でPDFにしていました。
単価表そのものを毎回見に行かせるのをやめました。明細の行を作る、その瞬間だけ単価をコピーして、 その行に実体として持たせています。あとから単価表を直しても、すでにある行はもう動きません。
単価のセルを直接書き換える作りだと、過去と未来を分ける境目がどこにもない。
単価表を直したときに矢印が伸びるのは「作成中の月」だけ。確定済みの月は、もうつながっていない。
「もっと簡単に直したい」は分かりますが、入口を増やすほどどこで金額が決まったか分からなくなります。 だから、あえて2つに絞りました。
教材の単価改定では、599品目のうち実際に金額が動いたのは37件だけ。残りの562件と、すでにある発注・請求は1円も動いていない。
仕組みを決めても、それだけでは終わりません。実際に踏んだのは、 エラーは出ないのに、数字だけ静かにズレるタイプの事故でした。
過去の4月分(すでに配り終えた月)を見に行ったら、生徒が121名から137名に増えていました。 新しく入った生徒は、4月にはまだ在籍していません。
・配り終えた月には「確定済み」の印を付け、生徒を後から足さない
・確定済みの月は、いまの在籍状況ではなく「当時、実際に請求があった生徒」だけを表示する
ある月を突き合わせたら、40名・合計¥144,448ぶんズレていました。 アプリが壊れたのかと思って調べましたが、原因はそこではありませんでした。
・取り込みは「その日時点の紙面」と1件ずつ突き合わせてから確定する
・小計・消費税・合計を計算し直して元の数字と一致するか自己検証し、合わなければ取り込みを止める
年月の欄を手で打っていたら、まだ入力の途中の文字(例えば5桁の数字)でも、 その時点で新しい月が1つ作られていました。135名ぶんの空の明細つきで。
・年月は「6桁の数字・01〜12月」という形を通ったときだけ月を作る
・そもそも年月を手打ちさせず、データがある月のボタンから選ぶ形に変えた